文档编号:PTM02_WAPI201306130102
版 本 号:V1.0
范 围 :公开
ArcGIS API for Javascript
开发教程
2013 年 3 月
易智瑞(中国)信息技术有限公司
1
——制定及修订记录——
版本
修订时间
修订人
修订类型 修订章节 修订内容
刘宇
杜保坤
黄超
高杰
张楠
马鑫
伏伟伟
A
M
M
M
M
M
M
* 修订类型分为 A - ADDED M - MODIFIED D – DELETED
注:对该文件内容增加、删除或修改均需填写此记录,详细记载变更信息,以保
证其可追溯性。
2
目 录
1 基本概念 ............................................................................................................................... 9
Javascript 介绍.................................................................................................................. 9
Dojo 介绍........................................................................................................................ 10
REST 介绍 ...................................................................................................................... 10
JSON 介绍 ..................................................................................................................... 11
ArcGIS API for Javascript 介绍 ..................................................................................... 13
ArcGIS API for Javascript 介绍 ..................................................................................................... 13
ArcGIS API for Javascript 主要特点 ............................................................................................. 13
ArcGIS for Server 服务类型 .......................................................................................... 14
主要服务具备的能力 .................................................................................................................... 15
2 应用开发起步 ..................................................................................................................... 18
集成开发环境和 API 的准备 ................................................................................... 18
ArcGIS API for Javascript 离线部署 ............................................................................................. 19
ArcGIS API for Javascript 帮助的离线部署 ................................................................................. 20
关于智能提示 ................................................................................................................................ 21
第一个应用程序 ........................................................................................................ 21
3 基础入门 ............................................................................................................................. 26
基本概念 .................................................................................................................... 26
地图 ................................................................................................................................................ 26
图层 ................................................................................................................................................ 26
Geometry ........................................................................................................................................ 27
Symbol ........................................................................................................................................... 28
Graphic ........................................................................................................................................... 29
Render ............................................................................................................................................ 29
FeatureSet ....................................................................................................................................... 29
常用控件(小部件) ................................................................................................ 30
鹰眼图 ............................................................................................................................................ 30
Scalebar .......................................................................................................................................... 32
3
书签 ................................................................................................................................................ 34
InfoWindow ................................................................................................................................... 36
编辑控件 ........................................................................................................................................ 38
图例 ................................................................................................................................................ 39
时间滑块 ........................................................................................................................................ 42
4 服务访问 ............................................................................................................................. 45
预备知识 .................................................................................................................... 45
Dojo 基本函数 ............................................................................................................................... 46
动态 2D 地图服务加载 ............................................................................................. 49
动态 2D 地图服务主要方法 ......................................................................................................... 49
主要属性 ........................................................................................................................................ 50
动态 2D 地图服务加载示例 ......................................................................................................... 50
切片服务加载(缓存 2D 地图服务) ..................................................................... 52
切片服务加载示例 ........................................................................................................................ 53
要素服务加载 ............................................................................................................ 53
如何使用要素服务 ........................................................................................................................ 54
要素图层按需模式显示示例 ........................................................................................................ 54
影像服务加载 ............................................................................................................ 58
什么是影像服务 ............................................................................................................................ 58
ArcGIS 影像服务可以做什么....................................................................................................... 59
ArcGISImageServiceLayer 介绍 ................................................................................................... 60
影像服务动态处理 ........................................................................................................................ 61
影像服务加载示例 ........................................................................................................................ 63
影像服务的时态展示示例 ............................................................................................................ 64
OpenStreetMap 地图服务 .............................................................................................. 68
OpenStreetMap 加载示例代码 ...................................................................................................... 68
OGC 标准服务 ............................................................................................................... 69
WMS 服务加载示例 ..................................................................................................................... 70
GraphicsLayer ................................................................................................................. 71
GraphicsLayer 的主要方法 ........................................................................................................... 72
GraphicsLayer 的主要属性 ........................................................................................................... 72
GraphicsLayer 示例 .................................................................................................................... 72
动态图层 .................................................................................................................... 76
4
什么是动态图层 ............................................................................................................................ 76
如何注册工作空间 ........................................................................................................................ 77
动态图层使用示例 ........................................................................................................................ 78
5 地图操作 ............................................................................................................................. 80
地图 ............................................................................................................................ 80
Map 的主要方法 .......................................................................................................................... 81
属性 ................................................................................................................................................ 82
事件 ................................................................................................................................................ 84
地图操作示例 ................................................................................................................................ 85
导航 ............................................................................................................................ 86
Navigation 定义的主要方法 ........................................................................................................ 86
事件 ................................................................................................................................................ 86
导航示例 ........................................................................................................................................ 87
绘图 ............................................................................................................................ 87
绘图工具的主要方法 .................................................................................................................... 88
属性 ................................................................................................................................................ 89
事件 ................................................................................................................................................ 89
绘图示例 ........................................................................................................................................ 90
图形编辑 .................................................................................................................... 90
编辑工具的主要方法 .................................................................................................................... 91
事件 ................................................................................................................................................ 91
6 符号渲染 ............................................................................................................................. 92
渲染器 ........................................................................................................................ 92
简单符号渲染 ............................................................................................................ 93
示例 ................................................................................................................................................ 93
唯一值渲染 ................................................................................................................ 94
示例 ................................................................................................................................................ 94
分级渲染 .................................................................................................................... 95
示例 ................................................................................................................................................ 95
7 任务知多少 ......................................................................................................................... 96
查询检索 .................................................................................................................... 97
QueryTask ...................................................................................................................................... 97
5
查询统计 ...................................................................................................................................... 103
FindTask ....................................................................................................................................... 104
IdentifyTask .................................................................................................................................. 107
关联查询 ....................................................................................................................................... 112
ImageServiceTask ......................................................................................................................... 115
查询检索小结 .............................................................................................................................. 120
服务器端渲染 .......................................................................................................... 122
示例 .............................................................................................................................................. 122
地址匹配 .................................................................................................................. 125
Geocode 服务发布 ...................................................................................................................... 126
示例 .............................................................................................................................................. 127
网络分析 .................................................................................................................. 131
示例 .............................................................................................................................................. 131
Geoprocessing ............................................................................................................... 136
地处理服务介绍 .......................................................................................................................... 136
返回矢量数据示例 ...................................................................................................................... 139
返回栅格数据示例 ...................................................................................................................... 142
服务器端打印 .......................................................................................................... 146
示例 .............................................................................................................................................. 146
8 几何操作 ........................................................................................................................... 149
几何操作简介 .......................................................................................................... 149
示例 .......................................................................................................................... 150
核心代码 ...................................................................................................................................... 151
展示结果 ...................................................................................................................................... 153
9 关系运算 ........................................................................................................................... 154
关系运算简介 .......................................................................................................... 154
示例 .......................................................................................................................... 158
核心代码 ...................................................................................................................................... 158
展示结果 ...................................................................................................................................... 159
10 在线编辑 ........................................................................................................................... 160
在线编辑简介 .......................................................................................................... 160
示例 .......................................................................................................................... 160
6
核心代码 ...................................................................................................................................... 160
展示结果 ...................................................................................................................................... 161
11 开发进阶 ........................................................................................................................... 162
InfoWindow 高级定制 ............................................................................................. 162
简单的 InfoWindow ..................................................................................................................... 162
复杂的 InfoWindow ..................................................................................................................... 164
使用 InfoWindowBase 扩展 ........................................................................................................ 167
自定义专题图 .......................................................................................................... 171
示例 .............................................................................................................................................. 172
核心代码 ...................................................................................................................................... 172
更加复杂的图表展现 .................................................................................................................. 174
第三方地图资源加载 .............................................................................................. 174
切片服务的源头-TiledMapServiceLayer .................................................................................... 175
天地图 .......................................................................................................................................... 175
百度地图 ...................................................................................................................................... 180
Google 地图 ................................................................................................................................. 184
轨迹移动 .................................................................................................................. 187
简单的轨迹移动代码示例 .......................................................................................................... 188
复杂的轨迹移动代码示例 .......................................................................................................... 190
业务数据整合(Web Service 整合) ..................................................................... 191
Web Service 介绍 ......................................................................................................................... 191
和 Web Service 相关的名词 ....................................................................................................... 192
示例 .............................................................................................................................................. 193
使用 SOE 扩展 ArcGIS for Server .......................................................................... 198
SOE 介绍 ..................................................................................................................................... 198
使用 SOE 示例 ............................................................................................................................ 200
代理 .......................................................................................................................... 203
为什么需要代理 .......................................................................................................................... 203
代理原理 ...................................................................................................................................... 203
ArcGIS API for Javascript 何时需要代理 ................................................................................... 204
代理配置 ...................................................................................................................................... 204
额外内容-为什么可以直接使用 ArcGIS Online 在线的 API?.................................................. 206
ExtJS,JQuery 整合 ................................................................................................... 206
ExtJS ............................................................................................................................................ 206
7
JQuery .......................................................................................................................................... 209
12 应用部署 ........................................................................................................................... 212
应用部署 .................................................................................................................. 213
在 Visual Stuido 2010 中发布 ..................................................................................................... 213
禁用目录浏览功能 ...................................................................................................................... 215
添加默认文档 .............................................................................................................................. 216
小结 .......................................................................................................................... 219
13 参考资料 ........................................................................................................................... 219
14 学习资料 ........................................................................................................................... 220
15 附录 ................................................................................................................................... 220
如何发布动态 2D 地图服务 ................................................................................... 220
如何发布要素服务 .................................................................................................. 229
使用要素服务的准备条件 ...................................................................................... 230
如何发布影像服务 .................................................................................................. 233
GP 服务发布(最短路径分析为例) .................................................................... 238
如何创建 SOE ......................................................................................................... 241
8