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

描述

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

  • ·Get All Map Layers - 这个按钮调用getMapLayers函数,循环地图里的每个图层并在报警框中报告layer IDvisibilityopacity信息
  • ·Get SR - 这个按钮调用getSR函数,在报警框中报告地图的空间参考的WKID。
  • ·Get Scales for portlandParcels - 这个按钮调用函数getScales,在地图服务图层的portlandParcels切片中报告关于每个比例级别。该函数使用ArcGISTiledMapServiceLayer.tileInfo属性,这个属性能显示map cache里有多少个比例级别,级别是什么比例的,每个比例的分辨率是什么。
  • ·Get Map Width Height - 这个按钮调用函数getMapWidthHeight,在报警框里报告地图的widthheight,单位是像素。
 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="width: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>
时间: 2024-08-10 12:58:37

ArcGIS api for javascript——显示地图属性的相关文章

ArcGIS api for javascript——创建地图

描述 这个示例显示ArcGIS Server的一个地图.ArcGIS Server地图是缓存的,意味着它有服务器管理员建来提升性能的一组预先渲染的切片.由于这个原因地图通过ArcGISTiledMapServiceLayer表示. 如果地图服务没有一个可用的缓存,使用ArcGISDynamicMapServiceLayer.如果不知道地图服务是否有缓存可用,使用 Services Directory寻找. 注意切片地图服务图层的构造函数包含服务的URL(http://server.arcgiso

ArcGIS API for JavaScript 4.2学习笔记[1] 显示地图

ArcGIS API for JavaScript 4.2直接从官网的Sample中学习,API Reference也是从官网翻译理解过来,鉴于网上截稿前还没有人发布过4.2的学习笔记,我就试试吧. 什么是ArcGIS API for JS?这里就不多介绍了,最关键的一点是4.x版本与3.x版本的变化,按官方的意思是重新写了底层. 笔记中规定: ArcGIS API for JavaScript简称AJS 使用CDN(即不配置本地环境)进行测试开发 其余根据需要进行修改.增删. 要将地图显示在h

ArcGis API for JavaScript 开发笔记一 加载地图

1.首先要配置GIS 环境 参考资料:看下这些大神的资料: http://blog.sina.com.cn/s/blog_708bacf90100yddk.html http://blog.csdn.net/wufeishimeng/article/category/522004 也可以查看官方的例子: https://developers.arcgis.com/javascript/jssamples/ 查看GIS 官方API https://developers.arcgis.com/jav

ArcGIS API for JavaScript学习(1):第一个地图

1.简介 ArcGIS API for JavaScript跟随ArcGIS 9.3同时发布,是ESRI根据JavaScript技术实现的调用ArcGIS Server REST API接口的一组脚本.当前的最新版本是Version 3.20.通过ArcGIS API for JavaScript可以将ArcGIS Server提供的地图资源和其它资源(ArcGIS Online)嵌入到Web应用中. 在ArcGIS API For JS中,esri.Map类是最重要的一个类,Map作为地图图层

我的ArcGIS API for Javascript

为大家贴贴最基本的地图加载: 一. API 根据Dom树上节点的 ID 确定 Map 的显示位置; 二. setBasemap 方法可得到一些ArcGIS制作好的底图,例如: "streets" , "satellite" , "hybrid", "topo", "gray", "oceans", "national-geographic", "osm&qu

ArcGIS API for JavaScript 4.2学习笔记[5] 官方API大章节概述与内容转译

内容如上,截图自ESRI官网,连接:ArcGIS API for JavaScript 4.2 [Get Started] 类似于绪论一样的东西,抽取了最需要关注的几个例子.如:加载Map和View,加载layers,使用弹出窗口,视觉化,与使用窗口小部件.(wtf居然没有分析你想搞事情啊web除了展示难道不应该有()&&*--@) [Mapping and Views] (点击进入我写的章节详细介绍) 最基础的,知道地图和视图的区别,能使用2D和3D地图,对地图的布局有一定的了解,对地图

ArcGIS API for JavaScript 学习笔记 (一) --第一个WebGIS应用程序

说明:本地部署后续我会尝试. 简单介绍: 开发环境是Visual Studio 2012,因为它为所有的.aspx文件..htm文件以及外部的.js文件提供了IntelliSense(智能提示),相当于其他软件的代码自动补全功能,非常方便.接下来是我的第一个Javascript API 应用程序.ESRI在其arcgis online中提供了在线的ArcGIS API for JavaScript,在web应用中直接引用即可,无需下载安装:当然也可以下载API,然后部署到自己的web服务器,在这

ArcGIS API for JavaScript 4.2学习笔记[0] AJS4.2概述、新特性、未来产品线计划与AJS笔记目录

放着好好的成熟的AJS 3.19不学,为什么要去碰乳臭未干的AJS 4.2? 诸君,我喜欢嫩的--呸呸呸 诸君,我喜欢3D咋了?新事物会替代旧事物不是~ ArcGIS API for JavaScript 4.2概述 AJS 4.2,即ArcGIS API for JavaScript 4.2,是美国ESRI公司针对WebGIS市场推出的.利用JavaScript和Dojo开发的一款产品,它在2016年12月发布.而AJS 4.0 beta则在一年前就发布了. 关于AJS3和AJS4选择的问题,

初学ArcGIS API for JavaScript

初学ArcGIS API for JavaScript 对于初学者来说,关于esri提供的一些样式和dojo自带的一些样式还是需要有一定的了解,这块在<WebGIS开发从基础到实践>讲解的特别详细,在这里以笔记的形式来帮助自己加以理解和记忆. esri.css样式主要用于ESRI提供的小部件与组件,比如地图.信息框等.此外,还可以引用Dojo提供的样式表,Dojo提供了4组样式,分别是claro\tundra\soria以及nihilo,每种是一组定义用户界面的字体.颜色与大小等设置.在Arc