<GroundOverlay id="a6925dcd-9c68-437a-9e90-8167a178c0e9">
<name>Overlay</name>
<visibility>0</visibility>
<Icon>
<href>http://127.0.0.1:14499/frame.jpg</href>
<viewBoundScale>0.75</viewBoundScale>
</Icon>
<gx:LatLonQuad>
<coordinates>
-125.7948791,31.7647378,0
-125.7948905,31.7663583,0
-125.7995141,31.7679331,0
-125.7984818,31.7645867,0
-125.7948791,31.7647378,0
</coordinates>
</gx:LatLonQuad>
</GroundOverlay>
What is correctly shown in cesium:
1. gx:LatLonQuad is shown properly
2. Icon/href image is also retrieved (CORS is enabled on the server)
What's wrong:
1. Icon/href is not shown correctly. It looks like it is cropped instead of transformed.
I know that in the current KML implementation this specific feature is not implemented.
Are there some workarounds that may help me to achieve this goal (to show the image on gx:LatLonQuad), and which would be the best?
Here is the screenshot made in google earth with correctly shown kml:
http://s32.postimg.org/q6scdxldx/ge_example.png
and here is the same kml in cesium:
http://s32.postimg.org/ihmru3n2d/cz_example.png
Here is the whole kml file content:
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2" xmlns:kml="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom">
<GroundOverlay id="69b165f9-05d7-44a7-b672-d7159cc523aa">
<name>Overlay</name>
<visibility>1</visibility>
<Icon>
<href>test_frame.jpg</href>
<viewBoundScale>0.75</viewBoundScale>
</Icon>
<gx:LatLonQuad>
<coordinates>
-121.7948791,36.7647378,0
-121.7948905,36.7663583,0
-121.7995141,36.7679331,0
-121.7984818,36.7645867,0
-121.7948791,36.7647378,0
</coordinates>
</gx:LatLonQuad>
</GroundOverlay>
</kml>
and this is test_frame.jpg
http://s32.postimg.org/gly5dg2h1/test_frame.jpg
KML - gx:LatLonQuad Icon does not support texture projection.
I know for that limitation.
Is there some workaround that will allow me to achieve the same result as in GoogleEarth?
Maybe by using CZML, or some custom geometry, or writing some custom shader/renderer, or something else?
That works, but it isn't elegant solution because we had to add another layer of abstraction that changes our input image.
There are few of us here that are willing to try to implement at least a custom geometry type with correct texture coordinates (we don't explicitly need to do this through the kml), so any additional information and resources are welcome :)
reviving this as I want to know if there are any new developments in this area. I'm trying to visualizes some ground overlays which we used to overlay using google earth. Cesium doesn't seem to apply any rotation. Bellow is an example where you can see that the image inside the box isn't rotated as it should:
https://dl.dropboxusercontent.com/u/10965353/Screen%20Shot%202017-02-13%20at%2018.00.03.jpg
--
You received this message because you are subscribed to a topic in the Google Groups "cesium-dev" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/cesium-dev/x3sYLgIr8Mc/unsubscribe.
To unsubscribe from this group and all its topics, send an email to cesium-dev+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
My problem now is that although the screen overlay displays OK when terrain view is disabled, when I enable a terrainProvider the overlay isn't clamped to the ground despite setting the clampedToGround option to true in the KmlDataSource.load options. I tried this with other types of KMLs that we use (vector types, polygons, etc.) and the problem remains.
Please tell me that I'm doing something wrong and that the "clamped to ground" functionality is supported is some way.
var terrainProvider = new Cesium.CesiumTerrainProvider({requestVertexNormals : true});var viewer = new Cesium.Viewer('cesiumContainer', {baseLayerPicker : false,terrainProvider : terrainProvider});var options = {
camera : viewer.scene.camera,canvas : viewer.scene.canvas,clampToGround : true
};viewer.dataSources.add(Cesium.KmlDataSource.load('https://dl.dropboxusercontent.com/u/10965353/slope.kml', options));
var viewer = new Cesium.Viewer('cesiumContainer');var options = {
camera : viewer.scene.camera, canvas : viewer.scene.canvas, clampToGround: true
};
var ds = viewer.dataSources.add(Cesium.KmlDataSource.load('../../SampleData/kml/fireProb-3.kml', options));viewer.zoomTo(ds);
var terrainProvider = new Cesium.CesiumTerrainProvider({requestVertexNormals : true});var viewer = new Cesium.Viewer('cesiumContainer', {baseLayerPicker : false,terrainProvider : terrainProvider
});var options = {camera : viewer.scene.camera,canvas : viewer.scene.canvas,clampToGround : true};var ds = viewer.dataSources.add(Cesium.KmlDataSource.load('../../SampleData/kml/fireProb-3.kml', options));viewer.zoomTo(ds);