在Cesium中,Primitive类,译为图元(原始 - 铯文档 (cesium.com)),图元类是常用的交互类。类似于二维图层的Layer,一个图元对象可以包含一个或多个几何实体(GeometryInstance),以及渲染该图元的appearance。根据对二维地图图层的理解,把具有相同属性,不同坐标的一类点位可以渲染为一个图元,例如:
/*
Cesium有一个不常见的操作,添加的对象会作为该方法的返回值返回。
所以此处返回的billboardCollection即为new Cesium.BillboardCollection生成的对象
*/
const billboardCollection = scene.primitives.add(
new Cesium.BillboardCollection({
scene: scene,
})
);
billboardCollection.add({
position: Cesium.Cartesian3.fromDegrees(-75.59777, 40.03883),
image: "../images/facility.gif",
scale: 2.0,
});
billboardCollection.add({
position: Cesium.Cartesian3.fromDegrees(75.59777, 40.03883),
image: "../images/facility.gif",
scale: 2.0,
});
图层有隐藏/显示操作,此处可以直接操作billboardCollection实现。
// 隐藏图层
billboardCollection.show = false;