第1章面向ArcGIS的Python语言基础 1
1.1使用IDLE进行Python脚本开发2
1.1.1PythonShell窗口2
1.1.2Python脚本窗口3
1.1.3编辑已有的Python脚本3
1.1.4在IDLE中运行脚本5
1.2ArcGISPython窗口的使用5
1.2.1ArcGISPython窗口5
1.2.2ArcGISPython窗口的显示6
1.3Python语言基础8
1.3.1代码注释8
1.3.2模块导入9
1.3.3变量10
1.3.4内置数据类型13
1.3.5类和对象19
1.3.6语句20
1.3.7文件I/O(输入/输出)25
1.4总结26
第2章管理地图文档和图层27
2.1引言27
2.2引用当前的地图文档28
2.2.1准备工作28
2.2.2操作方法28
2.2.3工作原理29
2.3引用磁盘上的地图文档30
2.3.1准备工作30
2.3.2操作方法30
2.3.3工作原理31
2.4获取地图文档中的图层列表31
2.4.1准备工作31
2.4.2操作方法31
2.4.3工作原理32
2.4.4拓展32
2.5限制图层列表33
2.5.1准备工作33
2.5.2操作方法33
2.5.3工作原理34
2.6缩放至所选要素35
2.6.1准备工作35
2.6.2操作方法35
2.6.3工作原理37
2.7改变地图范围37
2.7.1准备工作37
2.7.2操作方法38
2.7.3工作原理39
2.8添加图层到地图文档39
2.8.1准备工作40
2.8.2操作方法40
2.8.3工作原理42
2.8.4拓展42
2.9插入图层到地图文档42
2.9.1准备工作42
2.9.2操作方法43
2.9.3工作原理44
2.9.4拓展45
2.10更新图层的符号系统45
2.10.1准备工作45
2.10.2操作方法46
2.10.3工作原理47
2.10.4拓展48
2.11更新图层属性48
2.11.1准备工作48
2.11.2操作方法48
2.12操作数据框中启用时间的图层53
2.12.1准备工作53
2.12.2操作方法54
2.12.3工作原理58
第3章查找和修复丢失的数据链接59
3.1引言59
3.2查找地图文档和图层文件中丢失的数据源59
3.2.1准备工作60
3.2.2操作步骤60
3.2.3工作原理62
3.2.4拓展62
3.3使用MapDocument.findAndReplaceWorkspacePaths()方法修复丢失的数据源62
3.3.1准备工作62
3.3.2操作步骤63
3.3.3工作原理64
3.3.4拓展64
3.4使用MapDocument.replaceWorkspaces()方法修复丢失的数据源65
3.4.1准备工作65
3.4.2操作步骤65
3.4.3工作原理67
3.5使用replaceDataSource()方法修复单个图层和表对象68
3.5.1准备工作69
3.5.2操作步骤69
3.5.3工作原理72
3.5.4拓展72
3.6查找文件夹中所有地图文档内丢失的数据源72
3.6.1准备工作72
3.6.2操作步骤73
3.6.3工作原理74
第4章自动化地图制图和打印76
4.1引言76
4.2创建布局元素的Python列表77
4.2.1准备工作77
4.2.2操作方法78
4.2.3工作原理79
4.3为布局元素指定唯一的名称79
4.3.1准备工作79
4.3.2操作方法79
4.3.3工作原理82
4.3.4拓展82
4.4使用ListLayoutElements()函数限制返回的布局元素83
4.4.1准备工作83
4.4.2操作方法83
4.4.3工作原理84
4.5更新布局元素的属性84
4.5.1准备工作84
4.5.2操作方法85
4.5.3工作原理87
4.6获取可用的打印机的列表87
4.6.1准备工作87
4.6.2操作方法87
4.6.3工作原理88
4.7使用PrintMap()函数打印地图88
4.7.1准备工作89
4.7.2操作方法89
4.7.3工作原理90
4.8导出地图为PDF文件90
4.8.1准备工作90
4.8.2操作方法90
4.8.3工作原理92
4.9导出地图为图像文件92
4.9.1准备工作92
4.9.2操作方法92
4.9.3工作原理93
4.10导出报表93
4.10.1准备工作94
4.10.2操作方法94
4.10.3工作原理97
4.11使用数据驱动页面和ArcPy制图模块构建地图册98
4.11.1准备工作98
4.11.2操作方法98
4.11.3工作原理102
4.12将地图文档发布为ArcGISServer服务102
4.12.1准备工作103
4.12.2操作方法104
4.12.3工作原理109
第5章使用脚本执行地理处理工具110
5.1引言110
5.2查找地理处理工具110
5.2.1准备工作111
5.2.2操作方法111
5.2.3工作原理113
5.3查看工具箱别名114
5.3.1准备工作114
5.3.2操作方法115
5.3.3工作原理116
5.4使用脚本执行地理处理工具116
5.4.1准备工作117
5.4.2操作方法117
5.4.3工作原理118
5.4.4拓展119
5.5将一个工具的输出作为另一个工具的输入119
5.5.1准备工作119
5.5.2操作方法120
5.5.3工作原理122
第6章创建自定义地理处理工具123
6.1引言123
6.2创建自定义地理处理工具123
6.2.1准备工作123
6.2.2操作方法124
6.2.3工作原理138
6.2.4拓展139
6.3创建Python工具箱139
6.3.1准备工作139
6.3.2操作方法139
6.3.3工作原理148
第7章查询和选择数据149
7.1引言149
7.2构造正确的属性查询语句149
7.2.1准备工作150
7.2.2操作方法150
7.2.3工作原理153
7.3创建要素图层和表视图154
7.3.1准备工作154
7.3.2操作方法155
7.3.3工作原理157
7.3.4拓展157
7.4使用SelectLayerbyAttribute工具选择要素和行158
7.4.1准备工作158
7.4.2操作方法159
7.4.3工作原理161
7.5使用SelectLayerbyLocation工具选择要素161
7.5.1准备工作161
7.5.2操作方法162
7.5.3工作原理165
7.6结合空间查询和属性查询选择要素165
7.6.1准备工作165
7.6.2操作方法166
7.6.3工作原理167
第8章在要素类和表中使用ArcPy数据访问模块168
8.1引言168
8.2使用SearchCursor检索要素类中的要素171
8.2.1准备工作171
8.2.2操作方法171
8.2.3工作原理173
8.3使用where子句筛选记录173
8.3.1准备工作173
8.3.2操作方法173
8.3.3工作原理174
8.4使用几何令牌改进游标性能174
8.4.1准备工作174
8.4.2操作方法175
8.4.3工作原理178
8.5使用InsertCursor插入行178
8.5.1准备工作178
8.5.2操作方法179
8.5.3工作原理183
8.6使用UpdateCursor更新行183
8.6.1准备工作183
8.6.2操作方法184
8.6.3工作原理187
8.7使用UpdateCursor删除行187
8.7.1准备工作187
8.7.2操作方法187
8.7.3工作原理189
8.8在编辑会话中插入和更新行189
8.8.1准备工作189
8.8.2操作方法190
8.8.3工作原理192
8.9读取要素类中的几何信息193
8.9.1准备工作193
8.9.2操作方法193
8.9.3工作原理195
8.10使用Walk()遍历目录195
8.10.1准备工作195
8.10.2操作方法195
8.10.3工作原理197
第9章获取GIS数据的列表和描述198
9.1引言198
9.2使用ArcPy列表函数199
9.2.1准备工作199
9.2.2操作方法199
9.2.3工作原理201
9.2.4拓展201
9.3获取要素类或表中的字段
列表202
9.3.1准备工作202
9.3.2操作方法202
9.3.3工作原理204
9.4使用Describe()函数返回要素类的描述性信息204
9.4.1准备工作204
9.4.2操作方法205
9.4.3工作原理207
9.5使用Describe()函数返回栅格图像的描述性信息208
9.5.1准备工作208
9.5.2操作方法208
9.5.3工作原理210
第10章使用Add-in定制ArcGIS界面211
10.1引言211
10.2下载并安装PythonAdd-in
Wizard212
10.2.1准备工作212
10.2.2操作方法212
10.2.3工作原理214
10.3创建按钮加载项和使用Python加载项模块214
10.3.1准备工作214
10.3.2操作方法215
10.3.3工作原理222
10.4安装和测试加载项222
10.4.1准备工作223
10.4.2操作方法223
10.4.3工作原理227
10.5创建工具加载项228
10.5.1准备工作228
10.5.2操作方法229
10.5.3工作原理232
10.5.4拓展233
第11章异常识别和错误处理234
11.1引言234
11.2默认的Python错误消息235
11.2.1准备工作235
11.2.2操作方法235
11.2.3工作原理236
11.3添加Python异常处理结构(try/except/else)236
11.3.1准备工作236
11.3.2操作方法237
11.3.3工作原理238
11.3.4拓展238
11.4使用GetMessages()函数获取工具消息238
11.4.1准备工作238
11.4.2操作方法239
11.4.3工作原理239
11.5根据严重性级别筛选工具消息239
11.5.1准备工作240
11.5.2操作方法240
11.5.3工作原理241
11.6测试和响应特定的错误消息241
11.6.1准备工作241
11.6.2操作方法242
11.6.3工作原理243
第12章使用Python实现ArcGIS的高级功能244
12.1引言244
12.2ArcGISRESTAPI入门245
12.2.1准备工作245
12.2.2操作方法245
12.2.3工作原理250
12.3使用Python构建HTTP请求并解析响应250
12.3.1准备工作251
12.3.2操作方法251
12.3.3工作原理254
12.4使用ArcGISRESTAPI和Python获取图层信息254
12.4.1准备工作254
12.4.2操作方法254
12.4.3工作原理256
12.5使用ArcGISRESTAPI和Python导出地图257
12.5.1准备工作257
12.5.2操作方法257
12.5.3工作原理259
12.6使用ArcGISRESTAPI和Python查询地图服务260
12.6.1准备工作260
12.6.2操作方法260
12.6.3工作原理264
12.7使用EsriWorldGeocodingService进行地理编码264
12.7.1准备工作264
12.7.2操作方法264
12.7.3工作原理266
12.8使用FieldMap和FieldMappings266
12.8.1准备工作266
12.8.2操作方法267
12.8.3工作原理273
12.9使用ValueTable将多值输入到工具中273
12.9.1准备工作274
12.9.2操作方法274
12.9.3工作原理275
第13章在ArcGISPro中使用Python276
13.1引言276
13.2在ArcGISPro中使用新的Python窗口277
13.3桌面ArcGIS与ArcGISPro中Python的编码差异280
13.4为独立的ArcGISPro脚本安装Python280
13.5将桌面ArcGIS中的Python代码转换到ArcGISPro中281
附录A自动化Python脚本282
A.1引言282
A.2在命令行中运行Python脚本283
A.2.1准备工作283
A.2.2操作方法283
A.2.3工作原理288
A.3使用sys.argv[]捕获命令行的输入288
A.3.1准备工作288
A.3.2操作方法289
A.3.3工作原理290
A.4添加Python脚本到批处理文件290
A.4.1准备工作290
A.4.2操作方法291
A.4.3工作原理291
A.4.4拓展291
A.5在规定的时间运行批处理文件291
A.5.1准备工作292
A.5.2操作方法292
A.5.3工作原理296
附录BGIS程序员不可不知的5个Python功能297
B.1引言297
B.2读取带分隔符的文本文件297
B.2.1准备工作298
B.2.2操作方法298
B.2.3工作原理300
B.2.4拓展301
B.3发送电子邮件301
B.3.1准备工作301
B.3.2操作方法302
B.3.3工作原理305
B.4检索FTP服务中的文件305
B.4.1准备工作306
B.4.2操作方法306
B.4.3工作原理309
B.4.4拓展309
B.5创建ZIP文件309
B.5.1准备工作310
B.5.2操作方法310
B.5.3工作原理312
B.5.4拓展313
B.6读取XML文件313
B.6.1准备工作313
B.6.2操作方法314
B.6.3工作原理315
B.6.4拓展316
· · · · · · (
收起)