ImageryLayerCollection

Members

将图层添加到集合中时引发的事件。事件处理程序传递给已添加,并添加了索引。
Default Value: Event()
当图层更改集合中的位置时引发的事件。事件处理程序传递给被移动,移动后的新索引以及移动前的旧索引。
Default Value: Event()
从集合中移除图层时引发的事件。事件处理程序传递给被删除,并从中删除索引。
Default Value: Event()
通过设置图层显示或隐藏图层时引发的事件 ImageryLayer#show 属性。事件处理程序会传递对此层的引用,集合中图层的索引,以及如果该图层现在是图层,则为true的标志显示或false(如果现在已隐藏)。
Default Value: Event()
获取此集合中的层数。

Methods

在集合中添加一个图层。
Name Type Description
layer ImageryLayer 要添加的层。
index Number 可选 在其上添加图层的索引。如果省略,该层将 添加到所有现有图层之上。
Throws:
  • DeveloperError :索引(如果提供)必须大于或等于零且小于或等于层数。

addImageryProvider (imageryProvider, index ) ImageryLayer

使用给定的ImageryProvider创建一个新层,并将其添加到集合中。
Name Type Description
imageryProvider ImageryProvider 图像提供者为其创建新图层。
index Number 可选 在其上添加图层的索引。如果省略,该层将 添加在所有现有图层之上。
Returns:
新创建的图层。

contains (layer) Boolean

检查集合是否包含给定的图层。
Name Type Description
layer ImageryLayer 要检查的层。
Returns:
如果集合包含图层,则为true,否则为false。
销毁此集合中所有层所拥有的WebGL资源。明确销毁此对象允许确定性地释放WebGL资源,而不是依赖垃圾集电极。

一旦这个物体被销毁,就不应该使用它。调用除 isDestroyed 将导致 DeveloperError 异常。因此,如示例中所述,将返回值( undefined )分配给对象。
Throws:
Example:
layerCollection = layerCollection && layerCollection.destroy();
See:
从集合中按索引获取图层。
Name Type Description
index Number 要检索的索引。
Returns:
给定索引处的图像图层。

indexOf (layer) Number

确定集合中给定图层的索引。
Name Type Description
layer ImageryLayer 查找索引的层。
Returns:
集合中图层的索引;如果集合中不存在该图层,则为-1。

isDestroyed () Boolean

如果此对象已销毁,则返回true;否则返回false。否则为假。

如果该对象被破坏,则不应使用。调用除 isDestroyed 将导致 DeveloperError 异常。
Returns:
如果此对象被破坏,则为true;否则为false。否则为假。
See:
将图层降低到集合中的一个位置。
Name Type Description
layer ImageryLayer 要移动的层。
Throws:
将图层降低到集合的底部。
Name Type Description
layer ImageryLayer 要移动的层。
Throws:

pickImageryLayerFeatures (ray, scene) Promise.<Array.< ImageryLayerFeatureInfo >>|undefined

异步确定与拾取射线相交的图像图层要素。相交的图像通过为相交的每个图像图层图块调用 ImageryProvider#pickFeatures 来找到图层特征被挑射线。要从屏幕上的某个位置计算光线,请使用 Camera.getPickRay
Name Type Description
ray Ray 用于测试相交的射线。
scene Scene 现场。
Returns:
可以分解为由拾取射线相交的一系列特征的诺言。 如果可以快速确定没有相交的要素(例如, 因为没有活动的图像提供者支持 ImageryProvider#pickFeatures 或因为拾取光线不与表面相交),此功能将 返回未定义。
Example:
var pickRay = viewer.camera.getPickRay(windowPosition);
var featuresPromise = viewer.imageryLayers.pickImageryLayerFeatures(pickRay, viewer.scene);
if (!LSGlobe.defined(featuresPromise)) {
    console.log('No features picked.');
} else {
    LSGlobe.when(featuresPromise, function(features) {
        // This function is called asynchronously when the list if picked features is available.
        console.log('Number of features: ' + features.length);
        if (features.length > 0) {
            console.log('First feature name: ' + features[0].name);
        }
    });
}
在集合中的一个位置上提升一层。
Name Type Description
layer ImageryLayer 要移动的层。
Throws:
将一个图层提升到集合的顶部。
Name Type Description
layer ImageryLayer 要移动的层。
Throws:

remove (layer, destroy ) Boolean

从该集合中删除一个图层(如果存在)。
Name Type Default Description
layer ImageryLayer 要删除的图层。
destroy Boolean true 可选 除了删除图层外,是否还要破坏这些图层。
Returns:
如果该图层在集合中并已被删除,则为true, 如果图层不在集合中,则返回false。
从该集合中删除所有图层。
Name Type Default Description
destroy Boolean true 可选 除了删除图层外,是否还要破坏这些图层。