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,且小于图层总数量。
-
-
addGridProvider(gridProvider, index) → GridLayer
-
添加Grid切片服务提供者。
Name Type Description gridProvider
String 通过给定的栅格图层提供者新建图层,将其添加至图层集合中。 index
Number optional 待添加图层的索引(如果忽略,则新增的图层将位于所有已存在的图层之上)。 Returns:
新增加的图层。 -
addImageryProvider(imageryProvider, index) → ImageryLayer
-
通过给定的影像服务提供者新建图层,将其添加至图层集合中。
Name Type Description imageryProvider
ImageryProvider 指定的影像服务提供者。 index
Number optional 待添加图层的索引。 Returns:
新创建的影像图层。Example:
var imageryLayers = viewer.imageryLayers; var labelImagery = new Cesium.WebMapTileServiceImageryProvider({ url : 'http://[subdomain].tianditu.com/cia_w/wmts', layer : 'cia', style : 'default', format : 'tiles', tileMatrixSetID : 'w', credit : new Cesium.Credit('天地图全球影像中文注记服务'), subdomains : ['t0','t1','t2','t3','t4','t5','t6','t7'] }); imageryLayers.addImageryProvider(labelImagery);.
-
判断图层集合中是否包含指定图层。
Name Type Description layer
ImageryLayer 待检查的图层。 Returns:
集合中包含该图层返回true,否则返回false。 -
释放集合中所有图层占用的WebGL资源。一旦释放对象所占用的资源,该对象将不能被使用,调用任何isDestroyed外的命令将抛出
DeveloperError
异常。因此,如示例所示,对象分配未定义的返回值。Returns:
返回undefined。Throws:
-
DeveloperError : 对象被释放。
Example:
layerCollection = layerCollection && layerCollection.destroy();
See:
-
-
get(index) → ImageryLayer
-
获取图层集合中指定索引的影像图层对象。
Name Type Description index
Number 索引值。 Returns:
影像图层对象。 -
获取指定图层在图层集合中的索引值。
Name Type Description layer
ImageryLayer 指定的图层。 Returns:
图层索引值,若不存在则返回-1。 -
如果对象被释放,返回真,否则返回false。一旦释放对象所占用的资源,该对象将不能被使用,调用任何isDestroyed外的命令将抛出
DeveloperError
异常。Returns:
如果对象被释放,返回真,否则返回false。 -
将此图层集合中指定图层往下移动一层。
Name Type Description layer
ImageryLayer 待移动的图层。 Throws:
-
DeveloperError : 图层集合中不存在该图层。
-
DeveloperError : 对象被释放。
-
-
将此图层集合中指定图层移动到最底层。
Name Type Description layer
ImageryLayer 待移动的图层。 Throws:
-
DeveloperError : 图层集合中不存在该图层。
-
DeveloperError : 对象被释放。
-
-
pickImageryLayerFeatures(ray, scene) → Promise.<Array.<ImageryLayerFeatureInfo>>|undefined
-
通过拾取光标异步选择图层特征。通过援引
ImageryProvider#pickFeatures
,拾取光标与图层瓦片相交,发现相交的图层特征。使用Camera.getPickRay
,从屏幕位置计算拾取光标。Name Type Description ray
Ray 检测相交的光标。 scene
Scene 场景对象。 Returns:
通过拾取光标相交获取一组特征的promise。如果能够快速确定没有相交的特征(例如,没有激活的图层支持ImageryProvider#pickFeatures
,或拾取光标与图层不相交),则函数返回未定义。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) { // 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:
-
DeveloperError : 图层集合中不存在该图层。
-
DeveloperError : 对象被释放。
-
-
将此图层集合中指定图层移动到最顶层。
Name Type Description layer
ImageryLayer 待移动的图层。 Throws:
-
DeveloperError : 图层集合中不存在该图层。
-
DeveloperError : 对象被释放。
-
-
移除集合中的一个图层。
Name Type Default Description layer
ImageryLayer 待移除的图层。 destroy
Boolean true
optional 移除时是否释放资源。 Returns:
移除成功返回true,否则返回false。 -
移除图层集合中的所有图层。
Name Type Default Description destroy
Boolean true
optional 移除时是否释放资源。