arcgis WMTSLayer 如何加载全部子图层
时间: 2024-02-03 13:11:34 浏览: 31
在 ArcGIS JavaScript API 中,WMTSLayer 支持加载所有子图层的功能。可以使用 WMTSLayer 的 `layerInfos` 属性来指定要加载的子图层。
以下是一个加载 WMTSLayer 全部子图层的示例代码:
```javascript
require([
"esri/layers/WMTSLayer",
"esri/layers/WMTSLayerInfo",
"esri/geometry/Extent",
"esri/SpatialReference",
"esri/Map",
"esri/views/MapView",
], function(WMTSLayer, WMTSLayerInfo, Extent, SpatialReference, Map, MapView) {
// 创建 WMTSLayerInfo 对象
var layerInfo = new WMTSLayerInfo({
identifier: "layer_id",
tileMatrixSet: "tile_matrix_set_id",
format: "image/png",
style: "default",
serviceMode: "KVP",
tileInfo: {
rows: 256,
cols: 256,
dpi: 96,
origin: {
x: -20037508.342787,
y: 20037508.342787,
},
spatialReference: {
wkid: 102100,
},
lods: [
// LOD 定义
],
},
});
// 创建 WMTSLayer 对象
var wmtsLayer = new WMTSLayer({
url: "http://your_wmts_service_url",
layerInfos: [layerInfo],
});
// 创建地图和视图
var map = new Map({
layers: [wmtsLayer],
});
var view = new MapView({
container: "viewDiv",
map: map,
extent: new Extent({
xmin: -20037508.342787,
ymin: -20037508.342787,
xmax: 20037508.342787,
ymax: 20037508.342787,
spatialReference: new SpatialReference({ wkid: 102100 }),
}),
});
// 加载全部子图层
wmtsLayer.when(function() {
var allSubLayers = [];
for (var i = 0; i < wmtsLayer.allSubLayers.length; i++) {
allSubLayers.push(wmtsLayer.allSubLayers.getItemAt(i));
}
wmtsLayer.sublayers = allSubLayers;
});
});
```
在上面的代码中,`wmtsLayer.allSubLayers` 属性返回一个可迭代对象,包含 WMTSLayer 的所有子图层。我们可以遍历这个可迭代对象并将所有子图层添加到 `wmtsLayer.sublayers` 属性中,从而加载全部子图层。
相关推荐
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)