官术网_书友最值得收藏!

Dynamic map service layers

As the name suggests, the ArcGISDynamicMapServiceLayer class is used to create dynamic maps served by ArcGIS Server, where all the of map imagery is rendered on the fly.

Just like the ArcGISTiledMapServiceLayer, the ArcGISDynamicMapServiceLayer constructor takes a URL endpoint for the map service along with optional parameters used to assign an ID to the service, specify the transparency of the map image, or set the initial visibility of the layer on or off:

The class name ArcGISDynamicMapServiceLayer can be somewhat misleading. Although it appears to reference an individual data layer this is in fact not the case. It refers to a map service rather than a data layer. Individual layers inside the map service can be turned on/off through the class setVisibleLayers() method.

The code for creating an instance of ArcGISDynamicMapServiceLayer looks very similar to the code for working with ArcGISTiledMapServiceLayer, as can be seen as follows.

The constructor accepts a URL for the map service endpoint. The second parameter accepts an options object that you can supply to control transparency, visibility, and image parameters:

var operationalLayer = new ArcGISDynamicMapServiceLayer("https://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Population_World/MapServer",{"opacity":0.5}); 
map.addLayer(operationalLayer); 

Add the preceding two lines of code to the ArcGIS API for JavaScript Sandbox, under the line of code that creates the map. Also ensure that you reference esri/layers/ArcGISDynamicMapServiceLayer in the require() function:

require(["esri/map", "esri/layers/ArcGISDynamicMapServiceLayer", "dojo/domReady!"],
function(Map, ArcGISDynamicMapServiceLayer) {
map = new Map("map", {
basemap: "topo",
center: [-122.19, 37.94], // longitude, latitude
zoom: 6
});
var operationalLayer = new ArcGISDynamicMapServiceLayer("https://sampleserver1.arcgisonline.com
ArcGIS/rest/services/Demographics/ESRI_Population_World/MapServer",{"opacity":0.5});
map.addLayer(operationalLayer);
});

Click the Refresh button in the Sandbox to see the dynamic layer added to the map as shown in the following screenshot:

With an instance of ArcGISDynamicMapServiceLayer you can perform a number of operations. Obviously you can create maps that display the data in the service, but you can also query data from layers in the service, control feature display through layer definitions, control individual layer visibility, display temporal information, export maps as images, control background transparency, and more.

主站蜘蛛池模板: 鄱阳县| 韶山市| 樟树市| 怀远县| 龙陵县| 宿迁市| 靖州| 新竹县| 咸宁市| 石柱| 公主岭市| 光山县| 合水县| 方山县| 东至县| 瓦房店市| 鸡西市| 八宿县| 绥阳县| 大姚县| 绍兴县| 玉山县| 桐柏县| 确山县| 微山县| 连江县| 泽州县| 广南县| 长宁区| 恩平市| 苍南县| 兴山县| 广西| 西丰县| 寿光市| 兴宁市| 盐津县| 高阳县| 莆田市| 建始县| 清水河县|