成员(属性)
layerAdded : Event
An event that is raised when a layer is added to the collection. Event handlers are passed the layer that
was added and the index at which it was added.
-
默认值:
Event()
layerMoved : Event
An event that is raised when a layer changes position in the collection. Event handlers are passed the layer that
was moved, its new index after the move, and its old index prior to the move.
-
默认值:
Event()
layerRemoved : Event
An event that is raised when a layer is removed from the collection. Event handlers are passed the layer that
was removed and the index from which it was removed.
-
默认值:
Event()
layerShownOrHidden : Event
An event that is raised when a layer is shown or hidden by setting the
ImageryLayer#show
property. Event handlers are passed a reference to this layer,
the index of the layer in the collection, and a flag that is true if the layer is now
shown or false if it is now hidden.
-
默认值:
Event()
Gets the number of layers in this collection.
方法
Adds a layer to the collection.
参数名称 | 类型 | 描述信息 |
---|---|---|
layer |
ImageryLayer | the layer to add. |
index |
number | 可选 the index to add the layer at. If omitted, the layer will be added on top of all existing layers. |
Throws:
-
DeveloperError : index, if supplied, must be greater than or equal to zero and less than or equal to the number of the layers.
使用示例s:
const imageryLayer = Cesium.ImageryLayer.fromWorldImagery();
scene.imageryLayers.add(imageryLayer);
const imageryLayer = Cesium.ImageryLayer.fromProviderAsync(Cesium.IonImageryProvider.fromAssetId(3812));
scene.imageryLayers.add(imageryLayer);
addImageryProvider(imageryProvider, index) → ImageryLayer
Creates a new layer using the given ImageryProvider and adds it to the collection.
参数名称 | 类型 | 描述信息 |
---|---|---|
imageryProvider |
ImageryProvider | the imagery provider to create a new layer for. |
index |
number | 可选 the index to add the layer at. If omitted, the layer will added on top of all existing layers. |
返回值:
The newly created layer.
使用示例:
try {
const provider = await Cesium.IonImageryProvider.fromAssetId(3812);
scene.imageryLayers.addImageryProvider(provider);
} catch (error) {
console.log(`There was an error creating the imagery layer. ${error}`)
}
Checks to see if the collection contains a given layer.
参数名称 | 类型 | 描述信息 |
---|---|---|
layer |
ImageryLayer | the layer to check for. |
返回值:
true if the collection contains the layer, false otherwise.
Destroys the WebGL resources held by all layers in this collection. Explicitly destroying this
object allows for deterministic release of WebGL resources, instead of relying on the garbage
collector.
Once this object is destroyed, it should not be used; calling any function other than
Once this object is destroyed, it should not be used; calling any function other than
isDestroyed
will result in a DeveloperError
exception. Therefore,
assign the return value (undefined
) to the object as done in the example.
Throws:
-
DeveloperError : This object was destroyed, i.e., destroy() was called.
使用示例:
layerCollection = layerCollection && layerCollection.destroy();
参考:
Gets a layer by index from the collection.
参数名称 | 类型 | 描述信息 |
---|---|---|
index |
number | the index to retrieve. |
返回值:
The imagery layer at the given index.
Determines the index of a given layer in the collection.
参数名称 | 类型 | 描述信息 |
---|---|---|
layer |
ImageryLayer | The layer to find the index of. |
返回值:
The index of the layer in the collection, or -1 if the layer does not exist in the collection.
Returns true if this object was destroyed; otherwise, false.
If this object was destroyed, it should not be used; calling any function other than
If this object was destroyed, it should not be used; calling any function other than
isDestroyed
will result in a DeveloperError
exception.
返回值:
true if this object was destroyed; otherwise, false.
Lowers a layer down one position in the collection.
参数名称 | 类型 | 描述信息 |
---|---|---|
layer |
ImageryLayer | the layer to move. |
Throws:
-
DeveloperError : layer is not in this collection.
-
DeveloperError : This object was destroyed, i.e., destroy() was called.
Lowers a layer to the bottom of the collection.
参数名称 | 类型 | 描述信息 |
---|---|---|
layer |
ImageryLayer | the layer to move. |
Throws:
-
DeveloperError : layer is not in this collection.
-
DeveloperError : This object was destroyed, i.e., destroy() was called.
pickImageryLayerFeatures(ray, scene) → Promise.<Array.<ImageryLayerFeatureInfo>>|undefined
Asynchronously determines the imagery layer features that are intersected by a pick ray. The intersected imagery
layer features are found by invoking
ImageryProvider#pickFeatures
for each imagery layer tile intersected
by the pick ray. To compute a pick ray from a location on the screen, use Camera.getPickRay
.
参数名称 | 类型 | 描述信息 |
---|---|---|
ray |
Ray | The ray to test for intersection. |
scene |
Scene | The scene. |
返回值:
A promise that resolves to an array of features intersected by the pick ray.
If it can be quickly determined that no features are intersected (for example,
because no active imagery providers support
ImageryProvider#pickFeatures
or because the pick ray does not intersect the surface), this function will
return undefined.
使用示例:
const pickRay = viewer.camera.getPickRay(windowPosition);
const featuresPromise = viewer.imageryLayers.pickImageryLayerFeatures(pickRay, viewer.scene);
if (!Cesium.defined(featuresPromise)) {
console.log('No features picked.');
} else {
Promise.resolve(featuresPromise).then(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}`);
}
});
}
pickImageryLayers(ray, scene) → Array.<ImageryLayer>|undefined
Determines the imagery layers that are intersected by a pick ray. To compute a pick ray from a
location on the screen, use
Camera.getPickRay
.
参数名称 | 类型 | 描述信息 |
---|---|---|
ray |
Ray | The ray to test for intersection. |
scene |
Scene | The scene. |
返回值:
An array that includes all of
the layers that are intersected by a given pick ray. Undefined if
no layers are selected.
Raises a layer up one position in the collection.
参数名称 | 类型 | 描述信息 |
---|---|---|
layer |
ImageryLayer | the layer to move. |
Throws:
-
DeveloperError : layer is not in this collection.
-
DeveloperError : This object was destroyed, i.e., destroy() was called.
Raises a layer to the top of the collection.
参数名称 | 类型 | 描述信息 |
---|---|---|
layer |
ImageryLayer | the layer to move. |
Throws:
-
DeveloperError : layer is not in this collection.
-
DeveloperError : This object was destroyed, i.e., destroy() was called.
Removes a layer from this collection, if present.
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
layer |
ImageryLayer | The layer to remove. | |
destroy |
boolean |
true
|
可选 whether to destroy the layers in addition to removing them. |
返回值:
true if the layer was in the collection and was removed,
false if the layer was not in the collection.
Removes all layers from this collection.
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
destroy |
boolean |
true
|
可选 whether to destroy the layers in addition to removing them. |