地理信息系统设计开发教程

作者
郑江华
丛书名
出版社
电子工业出版社
ISBN
9787121384035
简要
简介
内容简介 本书围绕应用型地理信息系统(GIS)设计与开发,从理论篇、技术篇和实践篇3个部分进行内容组织。理论篇讲述了GIS设计与开发的理论技术基础,主要包含主流的应用型GIS系统开发技术、应用型GIS设计方法、应用型GIS开发软件工程理论技术、空间数据库设计、数据标准与共享等;技术篇主要介绍了两种组件式开发,即MapX和ArcGIS Engine两种组件分别在VB和C#前端开发工具下的应用,在简单介绍了HTML+Web IIS架构下的网络开发环境后,讲述了天地图和百度地图国产在线地图API的开发应用;实践篇提供了MapX+VB、ArcGIS Engine+C#和基于百度在线地图API的Web地图应用开发实例,以帮助学生进行上机实践。本书为教师和学生提供了多种授课内容组合的选择方式,可以较好地满足不同区域和不同教学环境下地理信息系统专业及相关专业本科生和研究生教学实践的需要。
目录
第一篇 理论篇

第1章 GIS设计与开发基础\t2

1.1 GIS的概念、产生和发展趋势\t2

1.1.1 GIS的定义及组成\t2

1.1.2 GIS的产生\t4

1.1.3 GIS的发展趋势\t6

1.2 GIS的空间数据模型\t10

1.2.1 矢量数据及其拓扑关系模型\t11

1.2.2 栅格数据模型\t12

1.2.3 属性数据及其表示\t13

1.2.4 空间地理位置\t14

1.2.5 空间数据与属性数据的连接\t18

1.2.6 数据模型与GIS功能之间的联系\t19

1.3 GIS的分类\t19

1.3.1 应用型GIS\t20

1.3.2 工具型GIS\t21

1.3.3 应用型GIS开发的三种实现方式\t22

1.4 GIS开发的组件技术\t23

1.4.1 软件开发的组件技术\t23

1.4.2 COM与 DCOM\t24

1.4.3 组件式GIS的特点\t25

1.4.4 组件式GIS开发平台的结构\t27

1.4.5 组件技术与GIS的发展\t28

1.4.6 ActiveX与ActiveX控件\t29

1.5 其他GIS开发技术简介\t30

1.5.1 网格GIS\t30

1.5.2 共相GIS\t31

1.5.3 云GIS\t31

第2章 GIS设计与开发的基本方法\t33

2.1 GIS设计概述\t33

2.1.1 GIS设计的特点\t33

2.1.2 GIS设计的原则\t34

2.1.3 GIS设计的内容\t35

2.1.4 GIS设计的步骤\t35

2.2 GIS设计的方法\t36

2.2.1 结构化生命周期法\t36

2.2.2 原型化方法\t38

2.2.3 面向对象方法\t41

2.3 需求分析\t44

2.3.1 需求分析的内容\t44

2.3.2 可行性研究\t45

2.3.3 可行性分析报告\t47

2.3.4 需求分析和可行性研究的一般原则\t47

2.3.5 本节实例\t47

2.4 系统总体设计\t52

2.4.1 系统总体设计的内容\t52

2.4.2 系统总体设计的步骤\t54

2.4.3 系统总体设计的基本要求\t55

2.4.4 系统总体设计的基本原则\t56

2.4.5 本节实例\t56

2.5 系统详细设计\t61

2.5.1 GIS功能设计要点\t61

2.5.2 GIS功能设计的原则\t62

2.5.3 地理数据库设计\t63

2.5.4 应用模型与方法设计\t64

2.5.5 本节实例\t66

2.6 GIS软件设计\t67

2.6.1 应用型GIS软件设计的基本特点\t68

2.6.2 信息描述\t68

2.6.3 软件设计方法\t71

2.7 用户界面设计\t73

2.7.1 用户界面的作用\t73

2.7.2 用户界面的设计原则\t74

2.7.3 用户界面的主要类型及主要界面组件\t75

2.7.4 GIS中常用的其他界面技术\t77

2.8 GIS软件开发的工程化\t78

2.8.1 GIS开发工程化的方法\t79

2.8.2 GIS工程设计的基本原则\t80

2.8.3 GIS工程设计的规范\t81

2.8.4 GIS工程项目的管理\t82

2.8.5 GIS工程建设中的文档\t82

第3章 数据库设计基础与空间数据库设计\t83

3.1 数据库概述\t83

3.1.1 数据库的基本概念\t83

3.1.2 数据管理技术的发展\t85

3.1.3 数据库的数据模型\t86

3.1.4 数据库设计\t94

3.2 需求分析\t97

3.2.1 应用领域的调查\t98

3.2.2 定义数据库支持的信息与应用\t98

3.2.3 定义数据库操作任务\t99

3.2.4 定义数据项\t100



3.3 概念设计\t100

3.3.1 概念设计的基本方法\t100

3.3.2 视图设计的基本策略\t101

3.3.3 视图综合设计法\t102

3.4 逻辑设计\t104

3.5 物理设计\t104

3.5.1 影响物理设计的因素\t105

3.5.2 选择存取方法\t105

3.5.3 设计存储结构\t107

3.6 数据库的实施、运行和维护\t108

3.6.1 数据库的实施\t108

3.6.2 数据库的运行和维护\t109

3.7 空间数据库概述\t110

3.7.1 空间数据库特点\t110

3.7.2 空间数据库的管理方法\t111

3.7.3 空间数据库引擎\t113

3.8 空间数据库的设计\t117

3.8.1 空间数据库的设计原则\t117

3.8.2 空间数据库的设计过程\t118

3.8.3 空间数据库的需求分析和数据模型设计\t119

3.8.4 空间数据库的概念设计\t120

3.8.5 空间数据库的详细设计\t124

3.9 基于ArcGIS的厦门空间地理基础信息数据库建设实例\t126

第4章 GIS开发架构\t132

4.1 基于C/S模式的网络GIS\t132

4.1.1 C/S模式简介\t132

4.1.2 C/S网络组件平台及商用解决方案\t133

4.2 基于B/S模式的网络GIS\t134

4.3 GIS标准化\t135

4.3.1 促进空间数据的使用及交换\t136

4.3.2 促进地理信息共享\t138

4.4 GIS标准体系\t139

4.4.1 制定标准体系的目的和意义\t139

4.4.2 GIS标准体系的编制原则和方法\t140

4.4.3 GIS标准的主要内容\t141

4.5 国外GIS标准化组织\t141

4.5.1 ISO/TC 211\t143

4.5.2 OGC\t145

4.5.3 CEN/TC 287\t147

4.5.4 FGDC\t148

4.5.5 ANSI\t152

4.6 国内GIS标准化\t153

4.6.1 国内GIS标准化现状\t153

4.6.2 国内GIS标准化体系\t154



第二篇 技术篇

第5章 ArcGIS Engine基础\t160

5.1 ArcGIS Engine概述\t160

5.2 ArcGIS Engine组件库\t161

5.3 阅读对象模型图\t167

5.3.1 ArcGIS Engine中的类与对象\t167

5.3.2 类与类的关系\t168

5.4 ArcGIS Engine组成部分\t169

5.5 ArcGIS Engine系统基本功能的设计开发\t170

5.5.1 图层的加载\t170

5.5.2 鹰眼功能的实现\t172

5.5.3 放大与缩小功能的实现\t175

5.5.4 工具条的功能设计\t176

5.5.5 弹出式菜单的设计\t176

5.5.6 地图文档的保存\t179

第6章 Web开发基础\t181

6.1 HTML基础\t181

6.1.1 万维网的基本概念\t181

6.1.2 HTML的基础概念\t182

6.1.3 HTML的基本标签\t186

6.2 Web服务器简介\t194

6.2.1 IIS\t194

6.2.2 Apache\t195

第7章 基于天地图WebAPI的WebGIS开发\t198

7.1 天地图WebAPI简介\t198

7.1.1 天地图\t198

7.1.2 天地图WebAPI\t198

7.2 搭建天地图WebAPI开发环境\t199

7.3 天地图WebAPI中的“Hello World”\t199

7.3.1 将应用声明为 HTML5\t200

7.3.2 引入天地图的地图JavaScript API文件\t201

7.3.3 地图 DOM 元素\t201

7.3.4 创建地图实例\t201

7.3.5 确定经纬度坐标\t202

7.3.6 地图初始化\t202

7.4 天地图WebAPI中的常用概念\t202

7.4.1 控件\t202

7.4.2 叠加层\t203

7.4.3 图层\t204

7.4.4 库\t204

7.5 天地图WebAPI中的事件类\t204

7.6 常用代码实例\t206

7.6.1 地图基本操作\t206

7.6.2 添加标记\t206

7.6.3 控件选项\t206

第8章 基于百度地图API的WebGIS开发(JavaScript)\t208

8.1 百度地图API简介\t208

8.1.1 概述\t208

8.1.2 早期发展历程\t208

8.1.3 产品介绍\t209

8.2 百度地图API的基础知识\t210

8.3 百度地图控件\t213

8.3.1 地图控件概述\t213

8.3.2 向地图添加控件\t213

8.3.3 控制控件位置\t214

8.3.4 修改控件配置\t214

8.3.5 自定义控件\t215

8.3.6 定义构造函数并继承Control\t215

8.3.7 初始化自定义控件\t216

8.3.8 添加自定义控件\t216

8.4 百度地图覆盖物\t217

8.4.1 地图覆盖物概述\t217

8.4.2 标注\t217

8.4.3 内存释放\t219

8.4.4 信息窗口\t220

8.4.5 折线\t220

8.4.6 自定义覆盖物\t221

8.4.7 自定义其他方法\t223

8.5 事件\t224

8.5.1 地图事件概述\t224

8.5.2 事件监听\t225

8.5.3 事件参数和this\t225

8.5.4 移除事件监听\t226

8.6 图层\t226

8.7 地图工具\t228

8.7.1 地图工具概述\t228

8.7.2 向地图添加工具\t229

8.8 服务\t230

8.8.1 地图服务概述\t230

8.8.2 公交导航\t234

8.8.3 驾车导航\t236

8.8.4 地理编码\t237



第三篇 实践篇

第9章 ArcGIS Engine组件式开发\t240

9.1 桌面GIS应用程序框架的建立\t240

9.1.1 实践目的\t240

9.1.2 实践环境\t240

9.1.3 实践内容\t240

9.2 鹰眼的实现\t246

9.2.1 实践目的\t246

9.2.2 实践环境\t246

9.2.3 实践内容\t247

9.2.4 实例代码\t247

9.3 菜单的添加与实现\t251

9.3.1 实践目的\t251

9.3.2 实践环境\t251

9.3.3 实践内容\t251

9.3.4 主要代码\t253

9.4 状态栏信息的添加与实现\t256

9.4.1 实践目的\t256

9.4.2 实践环境\t256

9.4.3 实践内容\t256

9.4.4 实例代码\t256

9.4.5 实例结果\t257

9.5 专题地图\t257

9.5.1 实践目的\t257

9.5.2 实践环境\t257

9.5.3 实践内容\t257

9.5.4 实例代码\t260

9.6 通过要素属性查询\t272

9.6.1 实践目的\t272

9.6.2 实践环境\t273

9.6.3 实践内容\t273

9.6.4 实例代码\t274

9.7 右击菜单添加与文本查询\t275

9.7.1 实践目的\t275

9.7.2 实践环境\t275

9.7.3 实践内容\t275

9.7.4 实例代码\t276

9.7.5 实例结果\t279

9.8 安装与部署\t280

9.8.1 实践目的\t280

9.8.2 实践环境\t280

9.8.3 实践内容\t280

9.8.4 实践结果\t289

第10章 百度地图API的WebGIS开发实例\t290

10.1 加载与显示地图\t290

10.1.1 实践目的\t290

10.1.2 实践环境\t290

10.1.3 实践内容\t291

10.1.4 实例代码\t291

10.2 添加点状叠加层\t292

10.2.1 实践目的\t292

10.2.2 实践环境\t292

10.2.3 实践内容\t292

10.2.4 实例代码\t292

10.3 添加线状叠加层\t294

10.3.1 实践目的\t294

10.3.2 实践环境\t294

10.3.3 实践内容\t294

10.3.4 实例代码\t294

10.4 添加信息窗、事件监听、闭包\t295

10.4.1 实践目的\t295

10.4.2 实践环境\t296

10.4.3 实践内容\t296

10.4.4 实例代码\t296

10.5 添加路况叠加层\t298

10.5.1 实践目的\t298

10.5.2 实践环境\t298

10.5.



有问题微信扫码联系

推荐

Understand China
桂ICP备20004708号-4