《ArcGIS API for JavaScript 入门》由会员分享,可在线阅读,更多相关《ArcGIS API for JavaScript 入门(70页珍藏版)》请在金锄头文库上搜索。
1、ArcGIS API for JavaScript 入门 目录 ArcGIS API for JavaScript 简介 ArcGIS API for JavaScript 入门 ArcGIS API for JavaScript 简介 什么是ArcGIS API for JavaScript? 首先发布于ArcGIS 9.3. 调用ArcGIS Server REST API的一组JavaScript脚本。 基于功能强大的Dojo工具包 可以做什么? 快速创建交互式的地图应用 使用ArcGIS Server的REST API,可以实现显示、查询、分析 等功能。 调用ArcGIS Server
2、的GP服务,提供专业的分析结果 可以同时调用多个ArcGIS Server的服务,轻松实现融合应用。 为什么选择JavaScript 所有的主流的浏览器均支持JavaScript,无需安装任何插件 JavaScript是世界最常用的开发语言之一,轻量级的Web开发 脚本语言 纯粹的客户端语言(运行在客户端的浏览器内),包括桌面和移 动端 有各种成熟的JavaScript框架:Dojo、jQuery、ExtJS、 Prototype、YUI 为什么使用Dojo? Dojo宽松的使用许可 Academic Free License height:100%; dojo.require(“esri.m
3、ap“); function init() var myMap = new esri.Map(“mapDiv“); var myTiledMapServiceLayer = new esri.layers.ArcGISTiledMapServiceLayer(“http:/lxh- pc:6080/arcgis/rest/services/JSApiDemo/MapServer“); myMap.addLayer(myTiledMapServiceLayer); dojo.addOnLoad(init); ArcGIS API for JavaScript 帮助安装 下载ArcGIS API
4、for JavaScript的SDK http:/ 将下载的SDK压缩文件里的arcgis_js_api目录解压到Web Server的目录下。 IIS:%SystemDrive%inetpubwwwroot Tomcat的webapps目录下。 ArcGIS Server 10.1的tomcat在 %AGSSERVER%frameworkruntimetomcat 完成完成。 在浏览器中打开帮助地址 http:/localhost/arcgis_js_api/sdk/index.html(IIS) ArcGIS API for JavaScript 智能提示 在Visual Studio 2
5、012/2010及Apanta中支持vsdoc智能提示 方法: 从SDK的”API Reference”的” Code Assist Plugins”页面 中 下载与开发工具对应的vsdoc文件。 在Visual Studio中使用方法: html文档: js文件:/ 在Apanta中使用方法: 将vsdoc文件拖拽到apanta的工程中。 JavaScript基础入门 认识javascript 认识JavaScript 真实的名称是 ECMAScript,ECMA-262是正式的JavaScript 标准。 JavaScript 被设计用来向 HTML 页面添加交互行为 JavaScript
6、 是一种脚本语言(脚本语言是一种轻量级的编程语 言) JavaScript 由数行可执行计算机代码组成 JavaScript 通常被直接嵌入 HTML 页面 JavaScript 是一种解释性语言(就是说,代码执行不进行预编 译) 所有的人无需购买许可证均可使用 JavaScript JavaScript能做什么? JavaScript 为 HTML 设计师提供了一种编程工具 JavaScript 可以将动态的文本放入 HTML 页面 JavaScript 可以对事件作出响应 JavaScript 可以读写 HTML 元素 JavaScript 可被用来验证数据 JavaScript 可被用来
7、检测访问者的浏览器 JavaScript 可被用来创建 cookies JavaScript特点 脚本语言:解释执行,不需要预编译 基于对象的语言:基于对象的语言、也可看做面向对象的 简单性:量类型是采用弱类型,容易学习 安全性:不能访问本地硬盘、不能存数据到服务器 动态性:事件驱动的方式与用户交互 跨平台性:和系统无关,只要有浏览器 JavaScript语言基础 标识符命名 变量、函数名、操作符都区分大小写, 不能使用关键字 以字母开头,可以包含数字和下划线。 代码注释 单行注释:/单行注释内容。 多行注释:/* 注释内容,可以换行 */ 变量定义 JavaScript弱类型语言 以var来
8、定义,比如 var p = 1 JavaScript语言基础 主要数据类型 数值:整数、浮点数 12,0xA0,12.3 逻辑值:布尔值 true、false 字符串值 “This a Apple”、 转义字符”t”,” 空值 null 未定义值 undefinded。 对象 Object 使用typeof操作符判定类型 JavaScript语言基础 运算符 算术运算符:+ 、 - 、* 、 / 、 % 、 -(一元取反) 、 + 、 - 等同运算符与全同运算符:= 、 =、 != 、 != 比较运算符: 、 = 字符串运算符: 、 = 、 = 、 + 逻辑运算符: i :/arcgis/re
9、st/services API Content 内容 API Content Map Control Support for Webmap Layers Tiled, Dynamic, FeatureLayer, WMS, WMTS, KML, Graphics Graphics Tasks GP, Network, Geometry, Query, Locator Geometry Symbology ArcGIS Server Symbology Toolbars Edit, Draw, Navigation Map 主要功能 图层管理 添加、删除、遍历 显示设置 Extent、 ArcG
10、ISTiledMapService Layer相关、屏幕地图坐标转换 地图导航 居中、漫游、缩放等设置 ArcGIS Layers ArcGISTiledMapServiceLayer(缓存图层) 通过使用ArcGIS Server Rest API调用ArcGIS Server的 MapServer(已创建Cache) ArcGISDynamicMapServiceLayer(动态图层) 通过使用ArcGIS Server Rest API调用ArcGIS Server的 MapServer(未创建Cache)。 ArcGISImageServiceLayer(影像图层) 通过使用ArcGI
11、S Server Rest API调用ArcGIS Server的 ImageServer。 FeatureLayer(要素图层) 通过使用ArcGIS Server Rest API调用ArcGIS Server的 FeatureService。 OGC Layers WMSLayer 调用OGC(Open Geospatial Consortium)矢量地图服务 WMTSLayer 调用OGC(Open Geospatial Consortium)地图切片服务 KMLLayer 用于调用Keyhole Markup Language描述和保存地理信息文件 GraphicsLayer map
12、.addLayer(graphicsLayer); Graphic Graphic:在GraphicsLayer绘制显示的图形对象。 Graphic=Geometry+Attribute+Symbol+Infotemplate。 Graphic Geometry=new esri.geometry.Point116.596664, 40.071667, new esri.SpatialReference( wkid: 4326 ) Symbol=new esri.symbol.PictureMarkerSymbol(/images/Airport.png, 16, 16); Attribute
13、= Name:”北京首都机场”,City:”北京 ”,Longitude:116.596664,Latitude:40.071667 Infotemplate=new esri.InfoTemplate(“$Name“,“城市: $City经度:$Longitude纬度:$Latitude“); Geometry 包含地物坐标信息的对象 Point:点 Multipoint:点集 Extent:矩形 Polygon:多边形 Polyline :折线 Symbol Points: SimpleMarkerSymbol, PictureMarkerSymbol Lines: SimpleLineS
14、ymbol, artographicLineSymbol Polygons SimpleFillSymbol, PictureFillSymbol Text TextSymbol, Font Infotemplate 用于定义InfoWindow的标题和内容格式 定义格式所用的字符串可包含任何HTML 可以使用$Attribute来代替值 var infoTemplate = new esri.InfoTemplate(“$Name“,“城市:$City经度:$Longitude纬度:$Latitude“); Infowindow 显示信息 Infowindow 每个地图仅有一个InfoWindow InfoWindow包括标题(Title)和内容(Content) InfoWindow可以指定位置显示 如果Graphic定义了InfoTemplate,则点击Graphic显示 InfoTemplate所定义的InfoWindow Infowindow Lite 使用CSS样式定义Infowindow Lite外观。 InfowindowBase 继承InfowindowBase创建自定义Infowindow。 需要实现实现几个方法 Hide, show, setContent, setTitle, resize 使用