如何删除cesiumjs中的折线,
var p = this.viewer.entities.add({
polyline: {
material: new Cesium.PolylineGlowMaterialProperty({
glowPower: 0.7,
color: Cesium.Color.ORANGE.withAlpha(0.7)
}),
positions: Cesium.Cartesian3.fromDegreesArrayHeights(points),
width: 15,
}
});
我使用了entities.removeAll(),但它正在从cesium conatiner中删除整个数据(包括模型等)。我只想删除折线。
答案 0 :(得分:0)
保存entities.add
的返回值,这是对新创建的实体的引用。
var polylineEntity = viewer.entities.add({
//...
});
稍后,您可以通过引用删除特定实体。
viewer.entities.remove(polylineEntity);
答案 1 :(得分:0)
var pathDone; //Store dataSource so later can be removed.
viewer.dataSources.remove(pathDone,true); // Removing old data.
Cesium.GeoJsonDataSource.load(data, { // Data contains geojson, linestring z.
stroke: Cesium.Color.HOTPINK,
fill: Cesium.Color.PINK.withAlpha(0.5),
strokeWidth: 2
}).then(function(geoData){
viewer.dataSources.add(geoData); //Adding new one.
pathDone=geoData;//Storing new reference.
});
这对我有用。