Members
layerAdded : Event
向集合中添加图层时触发的事件。
事件处理程序将传递添加的图层和在其上添加的索引。
-
Default Value:
Event()
layerMoved : Event
集合中的图层位置顺序发生改变时触发的事件。
事件处理程序将传递被移动的层、在移动之后的新索引和在移动之前的旧索引。
-
Default Value:
Event()
layerRemoved : Event
从集合中移除图层时触发的事件。
事件处理程序将传递删除的图层和从中删除的索引。
-
Default Value:
Event()
layerShownOrHidden : Event
通过设置
ImageryLayer#show
属性显示或者隐藏图层时触发的事件。
-
Default Value:
Event()
获取集合中图层的数量。
Methods
向集合中添加一个图层。
Name | Type | Description |
---|---|---|
layer |
ImageryLayer | 被添加的图层。 |
index |
Number | optional 图层的索引。如果省略则此图层添加到集合顶部。 |
Throws:
-
DeveloperError : 如果提供索引,则索引必须大于或等于0,并且小于或等于图层数。
addImageryProvider(imageryProvider, index) → ImageryLayer
使用给定的ImageryProvider创建一个新图层,并将其添加到集合中。
Name | Type | Description |
---|---|---|
imageryProvider |
ImageryProvider | 用来创建图层的imageryProvider。 |
index |
Number | optional 图层的索引。如果省略则此图层添加到集合顶部。 |
Returns:
创建的新图层。
检查集合中是否包含给定的图层。
Name | Type | Description |
---|---|---|
layer |
ImageryLayer | 要检查的图层。 |
Returns:
如果集合包含该图层,则为true,否则为false。
销毁此集合中所有图层持有的WebGL资源。显式销毁此对象允许确定性地释放WebGL资源,而不是依赖于垃圾收集器。
一旦对象被销毁,它将不能在使用;调用除
一旦对象被销毁,它将不能在使用;调用除
isDestroyed
之外的任何函数都会导致DeveloperError
异常。
因此,将返回值(undefined
)赋给对象,如示例所示。
Throws:
-
DeveloperError : 此对象被销毁了,即destroy()被调用。
Example:
layerCollection = layerCollection && layerCollection.destroy();
See:
get(index) → ImageryLayer
按照索引从集合中获取一个图层。
Name | Type | Description |
---|---|---|
index |
Number | 要检索的索引。 |
Returns:
返回索引处的图层。
返回给定图层在集合中的索引。
Name | Type | Description |
---|---|---|
layer |
ImageryLayer | 需要查询的图层。 |
Returns:
返回该图层在集合中的索引,如果没在集合中返回-1。
Returns:
如果这个对象被销毁,则为true;否则,false。
将图层在集合中的位置下降一位。
Name | Type | Description |
---|---|---|
layer |
ImageryLayer | 需要移动的图层。 |
Throws:
-
DeveloperError : 图层不在此集合中。
-
DeveloperError : 该对象已经被销毁,即,调用了destroy()。
将集合下降到集合底部。
Name | Type | Description |
---|---|---|
layer |
ImageryLayer | 需要移动的图层。 |
Throws:
-
DeveloperError : 图层不在此集合中。
-
DeveloperError : 该对象已经被销毁,即,调用了destroy()。
pickImageryLayerFeatures(ray, scene) → Promise.<Array.<ImageryLayerFeatureInfo>>|undefined
利用射线异步拾取图层要素,通过调用
ImageryProvider#pickFeatures
找到每个与射线相交的图层要素,
要从屏幕上的某个位置计算射线,请使用Camera.getPickRay
。
Name | Type | Description |
---|---|---|
ray |
Ray | 用于测试相交的射线。 |
scene |
Scene | 场景。 |
Returns:
一个promise,解决一个数组的要素通过拾取射线的交叉。
如果可以快速确定没有要素相交(例如,因为没有活动的图像提供期支持
ImageryProvider#pickFeatures
,
或者因为拾取射线不与表面相交),则此函数将返回undefined。
Example:
var pickRay = viewer.camera.getPickRay(windowPosition);
var featuresPromise = viewer.imageryLayers.pickImageryLayerFeatures(pickRay, viewer.scene);
if (!Cesium.defined(featuresPromise)) {
console.log('No features picked.');
} else {
Cesium.when(featuresPromise, function(features) {
// 如果所选要素可用,则在列表时异步调用此函数。
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:
-
DeveloperError : 图层不在此集合中。
-
DeveloperError : 该对象已经被销毁,即,调用了destroy()。
将图层提升到集合顶部。
Name | Type | Description |
---|---|---|
layer |
ImageryLayer | 需要移动的图层。 |
Throws:
-
DeveloperError : 图层不在此集合中。
-
DeveloperError : 该对象已经被销毁,即,调用了destroy()。
如果图层存在,则将它从集合中移除。
Name | Type | Default | Description |
---|---|---|---|
layer |
ImageryLayer | 将要被移除的图层。 | |
destroy |
Boolean |
true
|
optional 是否将移除的图层销毁。 |
Returns:
如果图层在集合中并且被成功移除返回true,否则返回false。
移除集合中的所有图层。
Name | Type | Default | Description |
---|---|---|---|
destroy |
Boolean |
true
|
optional 是否将移除的图层销毁。 |