EntityCollection

new Cesium.EntityCollection(owner)

实体对象集合,集合中每个实体具有唯一标识符。
Name Type Description
owner DataSource | CompositeEntityCollection optional 创建此集合的数据源(或复合实体集合)。

Members

readonlycollectionChanged : Event

获取从集合中添加或删除实体时触发的事件。生成的事件是EntityCollection.collectionChangedEventCallback。

readonlyid : String

获取此集合的全局唯一标识符。
获取此实体集合的所有者,即创建它的数据源或组合实体集合。

show : Boolean

获取此实体集合是否显示。如果此属性为true,还需设置实体的show属性为true才可以显示。

readonlyvalues : Array.<Entity>

获取集合中的实体数组。此数组不能直接修改。

Methods

staticCesium.EntityCollection.collectionChangedEventCallback(collection, added, removed, changed)

由集合变化EntityCollection#collectionChanged生成的事件签名。
Name Type Description
collection EntityCollection 触发事件的集合。
added Array.<Entity> 已添加到集合的实体Entity实例数组。
removed Array.<Entity> 已从集合中移除的实体Entity实例数组。
changed Array.<Entity> 已修改的实体Entity实例数组。

add(entity)Entity

向实体集合添加一个实体对象。
Name Type Description
entity Entity 待添加的实体对象。
Returns:
添加成功返回true,否则返回false。
Throws:

computeAvailability()TimeInterval

计算集合中实体对象的最大可用性。如果集合中包含混合的可用及不可用数据,则返回不可用数据的区间。如果所有数据都是可用的,则返回可用数据的区间。
Returns:
集合中实体对象的可用性。

contains(entity)Boolean

判断实体对象是否已经存在于集合中。
Name Type Description
entity Entity 指定的实体对象。
Returns:
实体对象已在集合中返回true,不存在则返回false。

getById(id)Entity

获取指定id的实体对象。
Name Type Description
id Object 待检索的实体id。
Returns:
指定id的实体对象;如果集合中不存在该id的实体,返回undefined。

getOrCreateEntity(id)Entity

获取具有指定ID的实体对象或是创建一个实体对象,如果集合中不存在此实体对象,将其添加到集合中。
Name Type Description
id Object 待检索或创建的实体对象ID。
Returns:
新创建或已存在的实体对象。

remove(entity)Boolean

从集合中移除一个实体对象。
Name Type Description
entity Entity 待移除的实体对象。
Returns:
移除成功返回true;返回false表示集合中不存在此实体,移除失败。

removeAll()

移除集合中的所有实体对象。

removeById(id)Boolean

移除集合中指定id的实体对象。
Name Type Description
id Object 待移除的实体id。
Returns:
移除成功返回true;如果指定id的实体不存在于集合中,移除失败则返回false。

resumeEvents()

添加或删除项目时重新触发EntityCollection#collectionChanged事件。当事件被暂停时,所做的任何修改都将作为一个事件触发此事件。只要发出调用EntityCollection#resumeEvents请求,事件可以被多次调用。
Throws:

suspendEvents()

在调用EntityCollection#resumeEvents之前,防止EntityCollection#collectionChanged事件被触发,针对所有停止的操作引发一个事件,可以有效的添加或删除许多项。只要发出调用EntityCollection#resumeEvents请求,事件可以被多次调用。