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

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.

主站蜘蛛池模板: 泗洪县| 灵台县| 罗定市| 汉寿县| 漯河市| 江源县| 双城市| 根河市| 福贡县| 上饶县| 天津市| 滦平县| 麻江县| 科技| 长寿区| 泰来县| 边坝县| 教育| 新绛县| 广东省| 汾阳市| 铜陵市| 纳雍县| 彭水| 永城市| 墨脱县| 开鲁县| 汤原县| 咸宁市| 吉隆县| 德阳市| 盐源县| 宁南县| 武城县| 岳西县| 东丽区| 石屏县| 仪征市| 通化市| 鄂伦春自治旗| 西充县|