前言 1

鸣谢 3

第一部分 Python和地理处理的相关概念 4

第1章 Python简介 4

1.1 引言 4

1.2 Python的特点 4

1.3 脚本语言和程序语言 4

1.4 ArcGIS的脚本语言 5

1.5 Python的历史和版本 5

1.6 关于本书 6

1.7 Python脚本实例 7

1.8 Python脚本编辑器 10

本章要点 15

第2章 ArcGIS中的地理处理 16

2.1 引言 16

2.2 地理处理 16

2.3 ArcObjets 16

2.4 工具箱和工具 17

2.5 工具的类型 19

2.6 工具对话框 20

2.7 环境设置 24

2.8 批处理 26

2.9 模型和ModelBuilder 29

2.10 运行脚本 32

2.11 运行脚本工具 34

2.12 模型转为脚本 36

2.13 定时运行脚本 37

本章要点 39

第3章 Python窗口 40

3.1 引言 40

3.2 Python窗口简介 40

3.3 编写并运行脚本代码 40

3.4 获取帮助 42

3.5 Python窗口选项 44

3.6 保存脚本 45

3.7 在Python窗口中加载代码 46

本章要点 46

第4章 Python基础 47

4.1 引言 47

4.2 Python文档和资源 47

4.3 数据类型与数据结构 47

4.4 数字 47

4.5 变量及其命名规则 48

4.6 语句和表达式 49

4.7 字符串 50

4.8 列表 50

4.9 Python对象 51

4.10 函数 52

4.11 方法 53

4.12 处理字符串 53

4.13 处理列表 56

4.14 处理路径 58

4.15 模块 59

4.16 条件控制语句 60

4.17 循环语句 62

4.18 用户输入 63

4.19 注释 64

4.20 PythonWin编辑器 65

4.21 编码规范 67

本章要点 67

第5章 使用Python进行地理处理 69

5.1 引言 69

5.2 ArcPy站点包 69

5.3 导入ArcPy 69

5.4 使用旧版ArcGIS 70

5.5 使用地理处理工具 71

5.6 使用地理处理工具箱 74

5.7 ArcPy函数 75

5.8 ArcPy类 76

5.9 环境设置 77

5.10 工具消息 78

5.11 查询许可 81

5.12 获取帮助 83

本章要点 85

第6章 访问空间数据 86

6.1 引言 86

6.2 检查数据的存在性 86

6.3 描述数据 87

6.4 列出数据 88

6.5 对列表使用for循环 90

6.6 操作列表 91

6.7 元组 91

6.8 字典 92

本章要点 94

第7章 处理空间数据 95

7.1 引言 95

7.2 使用游标访问数据 95

7.3 在Python中使用SQL 98

7.4 处理表和字段名 99

7.5 解析属性表和字段名 101

7.6 处理文本文件 101

本章要点 107

第8章 处理几何图形 108

8.1 引言 108

8.2 处理几何对象 108

8.3 读取几何 108

8.4 处理多部分要素 111

8.5 处理有孔洞的多边形 114

8.6 写入几何 116

8.7 使用游标设置空间参考 118

8.8 使用地理处理工具处理几何对象 119

本章要点 120

第9章 使用栅格数据 121

9.1 引言 121

9.2 列出栅格数据 121

9.3 描述栅格属性 121

9.4 处理栅格对象 123

9.5 Spatial Analyst模块 124

9.6 地图代数 125

9.7 ApplyEnvironment函数 127

9.8 arcpy.as模块中的类 128

9.9 NumPy数组 131

本章要点 131

第10章 制图脚本 133

10.1 引言 133

10.2 ArcPy的制图模块 133

10.3 地图文档 133

10.4 地图文档的属性和方法 134

10.5 数据框 135

10.6 图层 137

10.7 修复数据链接 139

10.8 页面布局元素 143

10.9 输出地图 145

10.10 打印地图 146

10.11 处理PDF文档 147

10.12 新建地图册 147

10.13 制图脚本样例 150

本章要点 152

第11章 程序调试与错误处理 153

11.1 引言 153

11.2 识别语法错误 153

11.3 识别异常 155

11.4 程序调试 155

11.5 程序调试技巧 160

11.6 异常的处理 160

11.7 触发异常 161

11.8 处理异常 162

11.9 处理地理处理异常 164

11.10 其它错误处理方法 166

11.11 常见错误 166

本章要点 167

第12章 创建Python类和函数 168

12.1 引言 168

12.2 创建函数 168

12.3 调用函数 170

12.4 添加代码到模块中 172

12.5 使用类 173

12.6 地理处理包 176

本章要点 178

第13章 创建自定义工具 179

13.1 引言 179

13.2 为什么要创建自定义工具 179

13.3 创建自定义工具的步骤 179

13.4 编辑脚本代码 185

13.5 工具参数 186

13.6 设置工具参数 192

13.7 脚本工具示例 198

13.8 自定义工具行为 201

13.9 处理消息 202

13.10 处理独立脚本和工具的消息 204

13.11 自定义进度对话框 204

13.12 在进程中运行脚本 208

本章要点 208

第14章 共享脚本工具 209

14.1 引言 209

14.2 工具共享的方法 209

14.3 软件许可 209

14.4 共享工具的文件夹结构 210

14.5 处理路径 210

14.6 查找数据和工作空间 214

14.7 创建地理处理包 215

14.8 内嵌脚本并设置工具密码 216

14.9 编写工具文档 216

14.10 示例工具:市场分析 220

本章要点 226

附录C 227

1 安装数据和软件 227

2 安装练习数据 227

3 卸载数据及资源 229

4 安装软件 229

5 卸载软件 229