Hi,
I want to drape the terrain of KML.
Polygon With the GroundPrimitive was okay.
But polyline does not seem to work.
Any idea Drape on the terrain a polyline?
sample code:
var viewer = new Cesium.Viewer(‘cesiumContainer’, {
infoBox : false,
selectionIndicator : false
});
viewer.terrainProvider = new Cesium.CesiumTerrainProvider({
url : ‘//assets.agi.com/stk-terrain/world’,
requestWaterMask : false
});
var scene = viewer.scene;
var url = ‘./data/test.kml’;
var ds = new Cesium.KmlDataSource();
ds.load(url).then(function (dataSource) {
for (var i=0;i<dataSource.entities.values.length;i++){
var _entity = dataSource.entities.values[i];
var _geometry;
if(_entity.polygon!==undefined){
_geometry = new Cesium.PolygonGeometry({
polygonHierarchy : _entity.polygon.hierarchy._value
});
}
if(_entity.polyline!==undefined){
_geometry = new Cesium.PolygonGeometry({
polygonHierarchy : {
positions : _entity.polyline.positions._value
}
});
}
if(!_geometry)continue;
var _geometryInstance = new Cesium.GeometryInstance({
geometry : _geometry,
id : “work_”+i,
attributes : {
color : new Cesium.ColorGeometryInstanceAttribute(0.0, 1.0, 1.0, 0.5)
}
});
scene.primitives.add(new Cesium.GroundPrimitive({
geometryInstance : _geometryInstance
}));
_geometry=null;
}
var date = new Date();
viewer.camera.flyTo({
destination: dataSource.entities.entities[1].position.getValue(Cesium.JulianDate.fromDate(date)),
duration:0,
});
});
``