- Building Web and Mobile ArcGIS Server Applications with JavaScript(Second Edition)
- Eric Pimpler Mark Lewin
- 327字
- 2021-07-02 15:49:00
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.
- Google Apps Script for Beginners
- Mastering Entity Framework Core 2.0
- Objective-C Memory Management Essentials
- Python自動化運維快速入門
- Production Ready OpenStack:Recipes for Successful Environments
- Mastering Ubuntu Server
- Python機器學習經典實例
- Node.js全程實例
- Learning SciPy for Numerical and Scientific Computing(Second Edition)
- R語言與網絡輿情處理
- 零基礎學Scratch 3.0編程
- 測試架構師修煉之道:從測試工程師到測試架構師
- MySQL 8從零開始學(視頻教學版)
- Java EE 7 Development with WildFly
- 虛擬現實:引領未來的人機交互革命