第1章 地理信息系统软件工程 1
1.1软件工程简介 1
1.1.1基本概念 1
1.1.2软件系统开发过程 2
1.1.3开发过程模型 5
1.2 GIS需求分析 7
1.2.1 需求获取 7
1.2.2需求规约 8
1.3 GIS数据管理设计 9
1.3.1全部采用文件管理 9
1.3.2文件结合关系数据库管理 9
1.3.3全部采用关系数据库管理 10
1.3.4采用面向对象数据库管理 11
1.4 GIS用户界面设计 12
1.4.1界面设计原则 12
1.4.2 GIS界面设计中的要素 14
1.4.3 GIS界面样式 16
1.5 GIS应用模式与开发方式 18
1.5.1 GIS应用模式 18
1.5.2 GIS开发方式 20
1.6 “北京市地理信息公众查询系统”介绍 22
第2章 需求分析 24
2.1 需求概述 24
2.2功能性需求 25
2.2.2用户描述 26
2.2.1系统体系结构 26
2.2.3具体功能需求 27
2.2.4非功能性需求 30
2.3功能需求详细描述 30
第3章 系统总体设计 41
3.1系统平台选择 41
3.1.1硬件平台 41
3.1.2系统操作平台 41
3.1.3数据库平台 41
3.1.4系统开发模式与GIS组件选择 41
3.1.5开发工具 44
3.2.2系统数据库 45
3.2.3系统的开发结构 45
3.2.1系统功能框架 45
3.2系统总体框架 45
3.2.4系统界面组织 46
3.3系统数据组织 48
3.3.1 系统数据的逻辑组织 48
3.3.2系统的主要数据类型 49
3.4进度规划 49
第4章 系统详细设计 50
4.1数据库详细设计 50
4.1.1地名分类编码 50
4.1.2元数据表结构 67
4.1.3 电子地图数据 71
4.2系统相关类的详细设计 76
4.2.1辅助类的详细设计 76
4.2.2 CEnvironment类的详细设计 80
4.2.3 CNrstPath类的详细设计 83
4.2.4 CNetLayer类的详细设计 84
第5章 系统主界面的实现 93
5.1 MapObjects简介 93
5.1.1 MapObjects的功能 93
5.1.2 MapObjects的特点 94
5.1.3 MapObjects的结构 94
5.2建立项目 97
5.2.1加入地图控件 98
5.2.2创建工具栏资源 99
5.2.3加入位图资源 101
5.3主窗体的实现 101
5.3.1界面设计 101
5.3.2基本编码 102
5.4 CEnvironment类的初步实现 113
5.4.1辅助类的实现 114
5.4.2 CEnvironment类的成员变量 116
5.5读取元数据 119
5.6初始化地图控制窗口中的控件 136
5.7图层的加入与控制 144
5.7.1在地图中加入图层 144
5.7.2依据比例尺控制图层显示 166
5.8控制地图显示 173
5.8.1控制显示的地物类型 173
5.8.2控制地图显示区域 191
5.9地图的放大、缩小、全图显示和漫游 198
5.10其他辅助功能的实现 204
5.10.1鹰眼功能的实现 204
5.10.2显示经纬度与地图显示比例尺 204
第6章 选择与查询功能的实现 207
6.1选择地物 207
6.2查询地物信息 217
6.3地名查询 230
6.4查找最近地物 241
6.5公交查询 254
6.5.1 公交站点与线路查询 254
6.5.2乘车路线查询 289
6.6地名索引 319
6.7查询结果的定位与更详细信息 334
6.8最短路径查询 339
第7章 系统其他辅助功能 381
7.1地名的快速显示 381
7.2长度量算与面积量算 386
7.3地图输出 390
7.4帮助功能 393
7.5其他快捷按钮功能的实现 395