中地软件系列丛书
MAPGIS
二次开发培训教程
(VB 版)
武汉中地数码科技有限公司
北京中地时代软件工程有限公司
二○○四年七月 武汉
内容简介
中地软件丛书之《MAPGIS 二次开发培训教程(VB 版)》是根据最新推出的 MAPGIS
软件平台编写而成,主要介绍用组件在 VB 环境下进行二次开发必须具备的基础知识、
VB 开发工具以及 MAPGIS 组件系统的基本概念、结构体系和编程方法。
本书作为 MAPGIS 地理信息系统系列产品配套使用手册,供使用 MAPGIS 地理信
息系统并利用组件进行二次开发的用户参考。
版权所有 武汉中地数码科技有限公司
警告: 未经武汉中地数码科技有限公司书面许可,任何单位和个人均不得以任何形式
或手段复制或传播本书的任何部分。
联系电话: 027-87785588
传真: 027-87611317
网址: www.mapgis.com.cn
电子信箱: technic@mapgis.com.cn
market@mapgis.com.cn
前 言
MAPGIS 是武汉中地信息工程有限公司研制的具有自主版权的大型基础地理信息系统平台。它
是一个集当代最先进的图形、图像、地质、地理、遥感、测绘、人工智能、计算机科学于一体的大
型智能软件系统,是集数字制图、数据库管理及空间分析为一体的空间信息系统,是进行现代化管
理和决策的先进工具。MAPGIS 连续五年在全国 GIS 测评中名列第一,并成为唯一连续五年获得国
家科技部向社会推荐的国产 GIS 软件平台。
中地软件丛书之《MAPGIS 二次开发培训教程(VB 版)》是根据最新推出的 MAPGIS 软件平台
编写而成,主要介绍用组件在 VB 环境下进行二次开发必须具备的基础知识、 VB 开发工具以及
MAPGIS 组件系统的基本概念、结构体系和编程方法。本教程分为两个部分,共十二讲。其中:
第一部分(即第一讲的内容):编程工具 VB。对于在 VB 这样一个编程环境中开发应用程序应
熟悉的概念、术语和最基本的框架、构件实现过程等知识做了一个简明扼要的介绍。已掌握一定 VB
编程基础知识的读者可以略过该部分。
第二部分(即第二讲至第十二讲的内容):详细讲述了地理信息系统的基本概念(包括 GIS 原
理概述、空间数据类型、空间数据库、空间数据结构与数据管理等内容);MAPGIS 的基本概念和
体系结构(简要描述了 MAPGIS 二次开发的基本概念、术语、工作区、空间实体及其数据、C++类
组织和开发环境介绍的内容);MAPGIS 空间数据存取和属性编辑(包括工作区、空间实体和属性
的操作);图形显示输出及窗口操作、图形编辑和控件开发;矢量空间分析和属性查询;图库管理和
查询系统(包括基于图库的应用程序开发、MAPGIS 图库介绍、开发的一般步骤以及结合图库显示
说明图库主要函数的功能等方面的内容)以及图象分析与处理。这一部分为本教程的主要部分,能
使大家从了解到熟练掌握这个部分 的内容也是我们编制本书的主要目的,同时它还可以作为
MAPGIS 二次开发过程中的参考来使用。
参加本书编写的人员主要是本系统的软件开发人员以及长期从事 MAPCAD 和 MAPGIS 培训的
教师。由于时间仓促,书中难免存在错误和不当之处,敬请广大用户及读者提出宝贵意见和建议,
以利改进。
中地软件丛书编委会
2003
年 5 月
目 录
第一讲 VB 编程工具....................................................................................................................................1
1.1 Visual Basic 6.0 开发环境 .................................................................................................................1
1.2 Visual Basic 基础 ...............................................................................................................................1
1.3 使用代码和窗体 ................................................................................................................................2
1.4 变量和过程 ........................................................................................................................................3
1.5 控制程序的执行流程 ........................................................................................................................6
1.6 调试 ....................................................................................................................................................8
1.7 使用控件 ............................................................................................................................................8
1.8 完善用户界面 ....................................................................................................................................8
第二讲 地理信息系统的基本概念 ............................................................................................................10
2.1 GIS 原理概述...................................................................................................................................10
2.2 GIS 空间数据类型...........................................................................................................................12
2.3 GIS 数据管理...................................................................................................................................13
2.4 地理信息系统发展趋势 ..................................................................................................................14
第三讲 MAPGIS 的基本概念和体系结构 ...............................................................................................17
3.1 MAPGIS 二次开发的基本概念 ......................................................................................................17
3.2 MAPGIS 基本术语 ..........................................................................................................................18
3.3 MAPGIS 的数据管理(工作区) ..................................................................................................20
3.4 MAPGIS 的空间实体及其数据组织 ..............................................................................................22
第四讲 MAPGIS 组件对象介绍 ...............................................................................................................25
4.1 MAPGIS 组件开发平台的层次结构 ..............................................................................................25
4.2 MAPGIS 组件开发平台的组件对象关系略图...............................................................................25
4.3 MAPGIS 组件文件 ..........................................................................................................................25
4.4 MAPGIS 组件对象关系图(示例)....................................................................................................27
4.5 MAPGIS 组件对象接口图(示例)....................................................................................................28
4.6 MAPGIS 组件使用方法 ..................................................................................................................29
第五讲 MAPGIS 工作区对象 ...................................................................................................................38
I
5.1 建立 MAPGIS 工作区对象.............................................................................................................38
5.2 点工作区对象 PntArea 的属性和方法 ...........................................................................................38
习题:.......................................................................................................................................................42
第六讲 属性和属性结构(对象、控件)................................................................................................43
6.1 基本概念..........................................................................................................................................43
6.2 属性和属性结构对象 ......................................................................................................................44
6.3 属性控件和属性结构控件 ..............................................................................................................48
习题:.......................................................................................................................................................50
第七讲 图形显示输出相关对象................................................................................................................51
7.1 图形显示输出..................................................................................................................................51
7.2 组件开发中的图形显示和窗口处理实例 ......................................................................................57
习题:.......................................................................................................................................................58
第八讲 MAPGIS 工程、LAYER 和 MAP..............................................................................................59
8.1 MAPGIS 工程简介..........................................................................................................................59
8.2 Layer 和 Map 说明 ..........................................................................................................................59
第九讲 图形编辑、控件开发....................................................................................................................65
9.1 图形编辑开发概要 ..........................................................................................................................65
9.2 EditView 控件 ..................................................................................................................................65
9.3 MAPGIS 控件开发..........................................................................................................................67
9.4 MAPGIS 控件开发示例..................................................................................................................70
习题:.......................................................................................................................................................76
第十讲 空间分析和属性查询....................................................................................................................77
10.1 空间分析..........................................................................................................................................77
10.2 属性查询检索..................................................................................................................................83
习题:.......................................................................................................................................................86
第十一讲 图库管理....................................................................................................................................87
11.1 MAPGIS 图库简介 ........................................................................................................................87
11.2 基于图库的应用程序的开发 ........................................................................................................88
11.3 DBS 组件开发 ...............................................................................................................................88
11.4 DBS 组件开发示例........................................................................................................................92
II