日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

ArcGIS JS先添加动态图层,再添加切片图层后不显示

發(fā)布時間:2025/3/21 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ArcGIS JS先添加动态图层,再添加切片图层后不显示 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

場景:

? ? ? ? ?現(xiàn)在要在一個地圖上添加動態(tài)服務圖層和切片服務圖層,當創(chuàng)建好圖層之后,使用map.addLayer()方法,先把動態(tài)圖層加到地圖上,再把切片圖層加到地圖上,出現(xiàn)一個現(xiàn)象:只能看到加載的動態(tài)圖層,切片圖層沒了。

現(xiàn)象:

先加載動態(tài)圖層,再加載切片圖層

所對應代碼:

<script>var map;require(["esri/map","esri/layers/ArcGISDynamicMapServiceLayer","esri/layers/ArcGISTiledMapServiceLayer"], function (Map, ArcGISDynamicMapServiceLayer,ArcGISTiledMapServiceLayer) {map = new Map("mapDiv");//動態(tài)地圖服務圖層var dynamic = new ArcGISDynamicMapServiceLayer("https://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Population_World/MapServer");//切片地圖服務圖層var tiled = new ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer");//先添加動態(tài)地圖服務//If the first layer added to the map is an ArcGISDynamicMapServiceLayer,// the map will take on the projection of this layer.map.addLayer(dynamic);//再添加切片地圖服務map.addLayer(tiled);}); </script>

解決方法:

試了試,先添加切片圖層,再添加動態(tài)圖層,就沒有什么問題了,兩個圖層都可以疊加到地圖上面。主要代碼如下:

<script>var map;require(["esri/map","esri/layers/ArcGISDynamicMapServiceLayer","esri/layers/ArcGISTiledMapServiceLayer"], function (Map, ArcGISDynamicMapServiceLayer,ArcGISTiledMapServiceLayer) {map = new Map("mapDiv");//動態(tài)地圖服務圖層var dynamic = new ArcGISDynamicMapServiceLayer("https://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Population_World/MapServer");//切片地圖服務圖層var tiled = new ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer");// //先添加動態(tài)地圖服務// //If the first layer added to the map is an ArcGISDynamicMapServiceLayer,// // the map will take on the projection of this layer.// map.addLayer(dynamic);// //再添加切片地圖服務// map.addLayer(tiled);//改變順序,先添加切片圖層,再添加動態(tài)圖層map.addLayer(tiled);console.log(map.spatialReference);map.addLayer(dynamic);}); </script>

改變添加順序后的效果:
?

? ? ? ? 現(xiàn)在可以看到兩個圖層已經(jīng)疊起來了。到底是什么原因呢?

原因分析:

? ? ? ??偶然找到一個官方的文檔(https://pan.baidu.com/s/1o8UhCxG),里面有這么一段:

? ? ? ? 緩存圖層指的就是切片圖層,如果先添加動態(tài)圖層,再添加切片圖層,由于切片圖層不會動態(tài)轉換空間參考,導致地圖上只有動態(tài)圖層;反之,如果先加載切片圖層,再加載動態(tài)圖層,由于動態(tài)圖層可以自動轉換空間參考,因此可以看到兩個圖層疊在了一起。

總結

以上是生活随笔為你收集整理的ArcGIS JS先添加动态图层,再添加切片图层后不显示的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。