ArcGIS api for javascript——加入動態地圖


描述

這個示例展示了增加一個按用戶縮放或平移服務器每次繪制的地圖。這樣的地圖沒有切片的 cache並被調用一個動態地圖服務圖層。 ArcGISDynamicMapServiceLayer表示ArcGIS JavaScript API動態地圖服務。

動態地圖服務執行效率比切片地圖服務慢。如果不能創建一個切片的緩存,只能使用動態地圖服務。如果數據修改比更新緩存要快,可能不能創建一個緩存,或者需要實時數據的顯示。

下行代碼創建了地圖:

var map = new esri.Map("map");

上面行中"Map"出現了三次。第一次(var map)是對象的名稱,第二次 (esri.Map)是類的名稱,第三次("map")是將包含地圖的DIV的名稱。

注意動態地圖服務圖層的構造函數需要服務的REST端點的URL(http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Population_World/MapServer). 可以使用Services Directory找到地圖服務的URL。

注意圖層使用setOpacity方法設置半透明的。 然后用地圖的addLayer方法增加圖層到地圖。

dynamicMapServiceLayer.setOpacity(0.5);
map.addLayer(dynamicMapServiceLayer);

<%-- <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> --%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta http-equiv="X-UA-Compatible" content="IE=7" />
    <title>DynamicMapServiceLayer</title>
    <link rel="stylesheet" type="text/css" href="styles.css"
          href="http://serverapi.arcgisonline.com/jsapi/arcgis/1.6/js/dojo/dijit/themes/tundra/tundra.css">
    <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=1.6"></script>
    <script type="text/javascript">
        dojo.require("esri.map");
        function init(){
            var map = new esri.Map("map");//創建地圖,該層為半透明,要使用它的setOpacity方法
            var imageParameters = new esri.layers.ImageParameters();
            //設置圖像類型為JPEG
            imageParameters.format = "JPEG";
            //非緩存地圖服務URL
            var dynamicMapServiceLayer = new esri.layers.ArcGISDynamicMapServiceLayer(
                "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Population_World/MapServer",
                {"opacity":0.5, "imageParameters":imageParameters}
            );
            //將動態地圖服務圖層添加到地圖中
            map.addLayer(dynamicMapServiceLayer);
        }
        dojo.addOnLoad(init);
    </script>
  </head>
  
  <body class="tundra">
    <div id="map" style="width:900px;height:600px;border:1px solid #000"></div>
    Create a map adds an ArcGISDynamicMapServiceLayer.<br>
    Map navigation using mouse:
    <ul>
      <li>Drag to pan</li>
      <li>SHIFT + Click to recenter</li>
      <li>SHIFT + Drag to zoom in</li>
      <li>SHIFT + CTRL + Drag to zoom out</li>
      <li>Mouse Scroll Forward to zoom in</li>
      <li>Mouse Scroll Backward to zoom out</li>
      <li>Use Arrow keys to pan</li>
      <li>+ key to zoom in a level</li>
      <li>- key to zoom out a level</li>
      <li>Double Click to Center and Zoom in</li>
    </ul>
  </body>
</html>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM