CompositeEntityCollection 是一个实体集合,可以包含多个不同类型的实体集合,并将它们组合成一个统一的实体集合。这使得在 CesiumJS 中同时使用大量的实体集合变得更加容易和高效。
new Cesium.CompositeEntityCollection(collections)
Parameters:
collections:一个数组,其中包含要组合的实体集合。CompositeEntityCollection 具有与 EntityCollection 相同的 API,可以参考 EntityCollection 的中文文档。
除此之外,CompositeEntityCollection 还包含以下方法:
addCollection(collection)
将一个实体集合添加到组合实体集合中。
Parameters:
collection:要添加的实体集合。removeCollection(collection)
从组合实体集合中移除一个实体集合。
Parameters:
collection:要移除的实体集合。getCollections()
获取当前组合实体集合中的所有实体集合。
Returns:
包含实体集合的数组。
CompositeEntityCollection 具有与 EntityCollection 相同的事件,可以参考 EntityCollection 的中文文档。
const entityCollection1 = new Cesium.EntityCollection();
const entityCollection2 = new Cesium.EntityCollection();
const entityCollection3 = new Cesium.EntityCollection();
const compositeEntityCollection = new Cesium.CompositeEntityCollection([entityCollection1, entityCollection2]);
compositeEntityCollection.addCollection(entityCollection3);
const viewer = new Cesium.Viewer("cesiumContainer");
viewer.entities = compositeEntityCollection;
在这个示例中,我们创建了三个 EntityCollection,分别为 entityCollection1、entityCollection2 和 entityCollection3。我们通过将 entityCollection1 和 entityCollection2 组合成一个 CompositeEntityCollection,并将 entityCollection3 添加到其中,从而创建一个包含三个 EntityCollection 的实体集合。最后,我们将 compositeEntityCollection 分配给 viewer 的 entities 属性,以在 CesiumJS 场景中渲染这些实体。