第1章 OpenGIS概述 1
1.1 概述 1
1.1.1 OpenGIS 1
1.1.2 OpenGIS的特点和作用 2
1.1.3 开放模式 3
1.2 OpenGIS的发展 4
1.2.1 国外发展现状 4
1.2.2 国内发展现状 5
1.3 0penGIS的相关技术 5
1.3.1 OpenGIS数据 5
1.3.2 OpenGIS软件 10
1.3.3 地图API 17
1.3.4 OpenGIS类库 18
1.4 本章小结 23
第2章 OpenGIS软件简介 24
2.1 QGIS 24
2.1.1 QGIS简介 24
2.1.2 QGIS的核心功能 26
2.1.3 QGIS框架介绍 28
2.1.4 QGIS部分功能介绍 28
2.2 Qt 32
2.2.1 Qt基本模块框架 32
2.2.2 Qt的功能与优势 33
2.2.3 图形界面库框架 34
2.2.4 Qt所支持的平台 35
2.2.5 基于Qt开发的产品 35
2.2.6 Qt编程的工作流程 36
2.2.7 HelloQt 36
2.3 PostgreSQL 37
2.3.1 概述 37
2.3.2 框架 39
2.3.3 后端服务器 40
2.3.4 PgAdmin4界面介绍 40
2.4 PostGIS 43
2.4.1 概述 43
2.4.2 数据模型 44
2.5 本章小结 49
第3章 OpenGIS软件安装配置 50
3.1 QGIS安装配置 50
3.2 PostgreSQL安装配置 53
3.3 PostGIS数据库引擎配置 57
3.4 本章小结 62
第4章 空间数据查询浏览 63
4.1 数据加载 63
4.1.1 加入矢量图层 63
4.1.2 加入栅格图层 66
4.1.3 加入服务数据 66
4.2 数据浏览 69
4.2.1 数据层名称的改变 70
4.2.2 数据层顺序的调整 71
4.2.3 数据层显示控制 71
4.2.4 数据层的复制与删除 71
4.3 数据查询 71
4.3.1 图层属性查询 71
4.3.2 图层空间查询 76
4.4 数据符号化 79
4.4.1 点要素的符号化 80
4.4.2 线要素的符号化 83
4.4.3 面要素的符号化 85
4.4.4 数据层标签 88
4.4.5 统计图符号 88
4.5 本章小结 91
第5章 数据更新 92
5.1 启动编辑 92
5.2 要素属性编辑 92
5.3 要素编辑 93
5.4 结束编辑 100
5.5 本章小结 100
第6章 QGIS制图与输出 101
6.1 设置制图版面 101
6.1.1 新建打印版面 101
6.1.2 设置版面大小与底色 102
6.2 添加制图数据 103
6.2.1 添加制图数据组 103
6.2.2 复制制图数据组 105
6.2.3 旋转制图数据组 105
6.2.4 绘制坐标网格 106
6.3 添加辅助要素 107
6.3.1 几何体 107
6.3.2 位图、属性表、HTML框架 108
6.4 地图整饰 109
6.4.1 添加和修改图名 109
6.4.2 添加和修改图例 110
6.4.3 添加和修改比例尺 112
6.4.4 添加指北针 114
6.4.5 排列地图要素 114
6.5 地图的打印与输出 115
6.5.1 地图打印 115
6.5.2 地图导出 115
6.6 本章小结 116
第7章 PostGIS空间数据管理 117
7.1 PostgeSQL基本操作 117
7.1.1 pgAdmin4介绍 117
7.1.2 数据库与表的创建 118
7.1.3 数据库的备份与恢复 121
7.2 利用QGIS实现空间数据导入导出 122
7.2.1 连接数据库 122
7.2.2 导入导出数据 123
7.3 使用SQL建立PostGIS空间数据库 127
7.3.1 利用SQL语句建立空间数据表 127
7.3.2 利用SQL语句插入空间数据 127
7.4 本章小结 128
第8章 QGIS插件开发 129
8.1 开发环境配置 129
8.1.1 Python IDLE安装 130
8.1.2 QtDesigner下载安装 131
8.1.3 Plugin Builder 133
8.1.4 Python控制台 134
8.2 添加和清除数据功能实现 136
8.2.1 添加矢量数据 136
8.2.2 添加栅格数据 136
8.2.3 添加Web服务数据 136
8.2.4 清除数据 137
8.3 图层渲染功能实现 137
8.4 缓冲区功能实现 137
8.5 简单栅格处理功能实现 138
8.5.1 二值化 138
8.5.2 平滑和边缘提取 138
8.6 Python开发注意事项 138
8.6.1 常见问题及解决方法 138
8.6.2 开发技巧 139
8.7 案例:多功能GIS插件 140
8.7.1 需求分析 140
8.7.2 插件总体设计 140
8.7.3 插件功能设计与实现 143
8.8 本章小结 150
第9章 QGIS二次开发 151
9.1 QGIS编译 151
9.1.1 安装软件 151
9.1.2 下载依赖库 152
9.1.3 配置系统变量环境 155
9.1.4 CMake编译源码 156
9.1.5 提取QGIS二次开发库文件 159
9.2 配置VS 2010开发环境 161
9.3 加载数据功能 165
9.3.1 加载矢量数据 165
9.3.2 加载栅格数据 169
9.3.3 加载文本数据 170
9.3.4 加载Web地图服务数据 176
9.4 属性查询功能 180
9.4.1 属性查询实现思路 180
9.4.2 创建图层管理器 181
9.4.3 创建属性表对话框 182
9.4.4 创建属性查询对话框 183
9.5 制图输出 184
9.5.1 制图模板 185
9.5.2 制图要素 186
9.5.3 制图输出 186
9.6 集成 189
9.7 本章小结 193
参考文献 195