• ArcGIS api for javascript——显示地图属性


    描述

    本例展示了如哦读取地图和图层的属性和返回信息给用户。本例中的四个按钮允许用户接收地图属性。每个按钮调用不同的函数。

    • ·Get All Map Layers - 这个按钮调用getMapLayers函数,循环地图里的每个图层并在报警框中报告 layer IDvisibility opacity信息
    • ·Get SR - 这个按钮调用getSR函数,在报警框中报告地图的空间参考的WKID。
    • ·Get Scales for portlandParcels - 这个按钮调用函数getScales,在地图服务图层的portlandParcels切片中报告关于每个比例级别。该函数使用 ArcGISTiledMapServiceLayer.tileInfo属性,这个属性能显示 map cache里有多少个比例级别,级别是什么比例的,每个比例的分辨率是什么。
    • ·Get Map Width Height - 这个按钮调用函数getMapWidthHeight,在报警框里报告地图的width height,单位是像素。
     1 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
     2 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/strict.dtd">
     3 <html>
     4   <head>
     5     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     6     <meta http-equiv="X-UA-Compatible" content="IE=7" />
     7     
     8     <title>ArcGIS JavaScript API Map Layer</title>
     9     
    10     <link rel="stylesheet" type="text/css" href="styles.css"
    11            href="http://serverapi.arcgisonline.com/jsapi/arcgis/1.6/js/dojo/dijit/themes/tundra/tundra.css">
    12     <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=1.6"></script>
    13     <script type="text/javascript">
    14         dojo.require("esri.map");
    15         
    16         var map,portlandParcels,transportation,census;
    17         
    18          function init(){
    19             map=new esri.Map("map");
    20             //波特兰(美国奥勒冈州最大的城市)地块
    21             portlandParcels=new esri.layers.ArcGISDynamicMapServiceLayer(
    22                 //"http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Portland/Portland_ESRI_LandBase_AGO/MapServer"
    23                 "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Population_World/MapServer"
    24             );
    25              map.addLayer(portlandParcels);    
    26             //交通系统
    27              /* transportation = new esri.layers.ArcGISTiledMapServiceLayer(
    28                  "http://server.arcgisonline.com/ArcGIS/rest/services/Reference/ESRI_Transportation_World_2D/MapServer",
    29                  {"id":"agoreference", "opacity":0.5}
    30              );
    31              myMap.addLayer(transportation); */
    32             //人口普查
    33              /* census = new esri.layers.ArcGISDynamicMapServiceLayer(
    34                  "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Census_USA/MapServer", 
    35                  {"id":"census","opacity":0.5}
    36              );
    37              myMap.addLayer(census);
    38             */
    39         
    40         } 
    41          //所有图层信息
    42          function getMapLayers(){
    43             for(var i=0,i1=map.layerIds.length;i<i1;i++){
    44                 var currentlayer=map.getLayer(map.layerIds[i]);
    45                 alert("id: "+currentlayer.id+",visible:"+currentlayer.visible+",opacity"+currentlayer.opacity);
    46             }
    47         
    48         } 
    49         //控件参考
    50         function getSr(){
    51             alert("Spatial Reference WKID:"+map.spatialReference.wkid);
    52         
    53         }
    54         //比例级别
    55         function getScales(){
    56             var titleInfo=portlandParcels.titleInfo;
    57             var scales="";
    58             for(var i=0,j=titleInfo.lods.length;i<j;i++){
    59                 var level=titleInfo.lods[i].level;
    60                 var scale=titleInfo.lods[i].scale;
    61                 var resolution=titleInfo.lods[i].resolution;
    62                 scales=scales + "level:" + level + ",scale" + scale + ",resolution" + resolution;
    63             }
    64             alert(scales);
    65         
    66         }
    67         //获取地图宽度和高度
    68         
    69         function getMapWidthHeight(){
    70             alert("Width: " + map.width + "Height: " + map.height);
    71         }
    72         
    73         dojo.addOnLoad(init);
    74     </script>
    75 
    76   </head>
    77   
    78   <body>
    79     <div id="map" class="tundra" style="900px;height:600px;border:1px solid #000;"></div>
    80             <input type="button" value="所有图层" onclick="getMapLayers()"/>
    81            <input type="button" value="控件参考" onclick="getSr()"/>
    82            <input type="button" value="比例级别" onclick="getScales()"/>
    83            <input type="button" value="地图的宽度高度" onclick="getMapWidthHeight()"/>
    84   </body>
    85 </html>
  • 相关阅读:
    python高级语法
    python的内置类型
    Python现状
    前端项目技术栈
    1.22
    类型转换!
    文件上传下载!
    Struts2的Ognl详解
    第二章复习
    解耦和耦合
  • 原文地址:https://www.cnblogs.com/xiaotian-222/p/6514831.html
Copyright © 2020-2023  润新知