实体实例将多种形式的可视化聚合到一个高级对象中。它们可以手动创建并添加到 Viewer#entities 或由数据源生成,例如 CzmlDataSource 和 GeoJsonDataSource 。
一、Entity-增加
//方法一
var entity = viewer.entities.add({ id : 'uniqueId' });
//方法二
var entity = viewer.entities.getOrCreateEntity('uniqueId');
二、Entity-删除
//方法一,先查后删
var entity = viewer.entities.getById('uniqueId');
viewer.entities.remove(entity)
//方法二,直接删除
viewer.entities.removeById('uniqueId')
//方法三,删除所有
viewer.entities.removeAll()
三、Entity-查找
var entity = viewer.entities.getById('uniqueId');
四、Entity-修改
// 获取标注
const getEntitys = () => {
const viewer = window.viewer;
const handle3D = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
// 单击左键显示弹窗
handle3D.setInputAction((movement) => {
const pick = viewer.scene.pick(movement.position);
if (Cesium.defined(pick)) {
pick.id.label.text = '修改后的标注',
image: pick.id.billboard.image = './static/images/markers/5.png'
}
}, Cesium.ScreenSpaceEventType.LEFT_CLICK);
};
五、获取Entity中的属性
const getEntitys = (viewer) => {
const handle3D = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
// 单击左键显示弹窗
handle3D.setInputAction((movement) => {
const pick = viewer.scene.pick(movement.position);
if (Cesium.defined(pick)) {
viewerData.pointForm = {
id: pick.id.id,
label: pick.id.label.text.getValue(),
image: pick.id.billboard.image.getValue(),
};
}
}, Cesium.ScreenSpaceEventType.LEFT_CLICK);
};