马 媛 闫 菲
摘 要:用来支撑地理信息系统(GIS)的数字化技术是计算机软件高度发展的产物,这些技术使得人们可以将数字化可靠化的管理方式渗透到生产生活的各个领域,极大地提高了管理效率。在深入研究了GIS中常用数字化技术的基础上,分析了组件式地理信息系统(ComGIS)的开发方式,提出了运用MapX组件进行系统开发的方法,重点对地理信息系统的空间数据库和系统功能进行了分析和设计,从而解决了实际应用中的一些主要问题。
关键词:地理信息系统(GIS);数字化技术;MapInfo;MapX
中图分类号:TP315文献标识码:B
文章编号:1004-373X(2009)05-122-03
Application of Digital Technology in Geographic Information System
MA Yuan1,YAN Fei2
(1.School of Information Engineering,Chang′ an University,Xi′ an,710064,China;
2.Shaanxi Branch,China Unicom,Xi′ an,710075,China)
Abstract:As the robust development of the computer software,the digital technology was born,which is the core factor of Geographic Information System(GIS).This technology makes people work more efficiently.The paper analyses the digital technology in the GIS.Then further analyses the developing method of ComGIS.This paper also introduces how to design and develop the GIS by using MapX technology.The system′s spatial database and function design are stressed,which can solves some important problems faced with in practice.
Keywords:Geographic Information System(GIS);digital technology;MapInfo;MapX
0 引 言
地理信息系统(GIS)是对各种空间信息进行收集、存储、分析和可视化表达的信息处理和管理系统[1]。GIS提供的信息产品不仅仅是简单的文字和数据,而且还有一幅幅空间图形或图象。位置图往往比文字更能说明空间问题,它给人以直观完整而深刻的印象[2]。随着软件技术的发展而不断出现的各种数字化技术则是实现GIS的基础和保障。
1 数字化技术简介
地图数据的数字化是建立地理信息系统的首要任务,目前使用最广泛的数字化工具是美国MapInfo公司推出的桌面地理信息系统MapInfo。系统的操作界面则由面向对象的编程语言完成,常用的有Visual Basic、Delphi和Visual C。系统的后台数据库和操作界面建立好之后,就需要使用一个专门的地理信息系统控件MapX或者Map Objects来完成系统对数据的操作。下面我们就来看看这些数字化技术。
1.1 数字化工具MapInfo
系统建立者将纸质地图或电子版的综合地图通过数字化工具建立空间数据库和属性数据库,再通过一个特定控件将数据库连接到系统的操作中[3]。虽然MapInfo其本身也是一个地理信息系统产品,可以完成地理信息系统的很多功能,但是用户为了建立符合其自身使用特点的地理信息系统产品时,常借助它作为地图的数字化工具,并将数字化后得到的图形数据和属性数据存储在MapInfo自带的类关系型数据库中。
MapInfo小巧易用,价位较低,是系统建立者优选的数字化产品。MapInfo的主要技术特点之一是按图层组织地图[4]。也就是说,将一幅综合地图加工成多个层层叠加的透明图层,每个图层包含了整个地图的一个不同方面[5]。现以交通管理地理信息系统为例,第一图层可以是高速公路,第二图层可以是一级公路,第三图层是二级公路,第四图层是由公路连接的城市组成,以此类推,就可以形成一幅完整的公路图。
1.2 系统开发语言Visual Basic
数字化建库完成后,地理信息系统的建立工作就已经完成70%了,接下来就是利用可视化编程语言如Visual Basic,Delphi或Visual C,建立符合用户需求的系统操作界面。由于MapInfo公司与Microsoft公司保持着长期的合作伙伴关系,它们的产品有着更好的兼容性,所以通常选择Microsoft公司的Visual Basic语言来建立系统的操作界面。
1.3 基于组件式GIS的MapX
系统界面建立好之后,就是要实现系统对数据的操作了。这里用到了组件式地理信息系统的概念。组件式地理信息系统(Components GIS,ComGIS)的基本思想是把地理信息系统的各大功能模块分为若干个控件,每个控件完成不同的功能[6]。各个GIS控件之间,以及GIS控件与其它非GIS控件之间,可以方便地通过可视化的软件开发工具集成起来,形成最终的GIS应用系统[7]。在组件式技术已经成为业界标准的时代,使用GIS控件就如同使用我们熟悉的Active X控件一样简单方便,使非专业开发者同样能得心应手地开发出符合用户需求的地理信息系统产品。目前常用的GIS控件有MapX和Map Objects,其中前者比后者的功能略强,又考虑到数据格式和经济因素等实际情况,往往使用MapX作为系统开发时使用的GIS控件。MapX同样是美国著名的桌面地理信息系统厂商MapInfo公司推出的,那么它将会与数字化工具MapInfo有更好的融合。使用MapX时,只需在可视化开发环境中将MapX控件放入窗体,并对其进行编程,就可以实现数据的空间可视化、专题分析、数据绑定、地图编辑等地理信息系统功能。
2 地理信息系统的实现
以上简单介绍了建立地理信息系统时用到的数字化技术和工具,概括来说,建立地理信息系统的步骤如下:首先,应用MapInfo数字化各类信息,完成空间数据和属性数据的数字化建库工作,数字化后的数据可以存储在MapInfo自带的数据库中,也可以存储在其它外部数据库中[8];接着,在可视化编程工具Visual Basic中添加MapX控件,编制符合用户需求的界面和功能,完成整个地理信息系统的开发。
下面以本人参与实现的某楼宇管理系统为例,让大家直观感受各数字化技术和工具是如何相互支持,支撑起整个地理信息系统的。
首先,利用扫描仪扫描图纸,或者利用现有的电子版图纸,存为栅格文件;接着,在MapInfo中调入该文件,设置投影方式并配准[9];再次,以得到的栅格图纸为蓝本,新建图层并覆盖在该栅格图纸之上,将其作为编辑矢量地图图层的参考[10];最后,采用手工绘制方法分层绘制相关地理对象,如楼宇房间图层。在建立了房间图层的图形数据后,同时需要建立相应的该房间图层的属性表。属性表的建立比较简单,通过与关系型数据库的表结构设计和输入相类似的方法即可完成,需要注意的是要将图形数据对象和它的属性数据一一对应。
一幅图层的图形数据和属性数据建立好之后,该图层的数字化工作就完成了。要完成整个综合地图的数字化,就要将构成这幅综合地图的各个图层按照同样的方法分别数字化,最后将这些包含图形数据和属性数据的图层叠加在一起即可。
在实现了系统的空间数据库之后,就要在面向对象的编程语言Visual Basic中添加MapX控件来编制用户界面和实现系统功能了。
3 系统功能实例
鉴于对具体需求的分析,在上例中,系统实现了数据输入输出与管理模块、系统基本功能模块、空间查询分析模块、专题渲染模块、数据绑定模块和系统实时帮助模块等地理信息系统较为基本的功能模块。此外,还根据用户在管理中遇到的常见问题,实现了智能检测模块、立体效果模块和宣传功能模块,满足了用户的需求。
3.1 鹰眼图
系统基本功能模块中的鹰眼图是GIS中一个基本的功能,它是为了方便用户浏览地图而设计。鹰眼图窗口中的矩形代表的是原地图窗口中的地图在整幅地图中的位置。鹰眼图如图1所示。这时要通过一个单独的MapX控件来显示鹰眼图,与主地图的MapX控件相独立。
3.2 I查询
空间查询可以是图形查询,可以是属性查询,更可以是二者之间的交叉查询。I查询是空间查询中一个最基本的查询功能,它的特点是鼠标点击任何一个目标图元,无论这个图元在整个地图集的哪一个图层上,都能弹出其对应的全部属性信息,如图2所示。
3.3 上级查找
智能检测可以在管线出现故障时,相对智能地显示出可能出现故障的线路或节点。上级查找是其中一项实用的功能,它利用Search方法以及具有方向性的节点编码,通过子节点向上查父节点的方式,根据输入的节点号,按流向查找某一管线节点的上级节点,在地图上标注出上级节点编号,并加亮显示该管线,如图3所示。
3.4 立体效果
为了能够直观反映楼宇内各房间的情况,系统中还设计实现了房间的三维立体模块。首先,使用3D Home Architect Deluxe建立立体效果模型,然后利用Flash MX将导出的图片生成人机互动界面,最后在Visual Basic中加入控件Swflash.ocx与原系统进行整合。以某房间为例,立体效果展示过程如图4所示。
各个功能模块是在明确具体需求的基础上设计的,每一功能模块中的每个功能都用以实现一个特定的管理目的,最终形成了一个操作简单,提供交互式和可视
化环境,使复杂模式与数据处理对用户透明的管理系统。不难看出,利用数字化技术可以将地理信息系统这一思想渗透到生产生活的各个方面,使得人们对信息的管理更加直观高效,并为管理中的各种数据提供强有力的查询和分析,从而为管理决策提供了依据。
参考文献
[1]周云萍.数字化园区的方案设计与研究——基于J2EE的网上办公系统的设计[D].西安:西安交通大学,2003.
[2]武舒凡.数字化园区的方案设计与研究——基于Web Services的动态电子商务系统设计[D].西安:西安交通大学,2003.
[3]王建锋.数字化园区的设计与实现——基于GIS的数字化楼宇管理系统[D].西安:西安交通大学,2005.
[4]Duane F Marble.Some Thoughts on the Integration of Spatial Analysis and Geographic Information Systems[J].Journal of Geographic Systems,2000:31-35.
[5]Al Gore.The Digital Earth:Understanding our Planet in the 21st Century[EB/OL].http://159.226.117.45/Digitalearth/, 1998.
[6]齐锐,屈韶琳,阳琳赟.用MapX开发地理信息系统[M].北京:清华大学出版社,2003.
[7]周心铁,刘毓华.组件技术与GIS的发展[D].北京:中国科学院地理信息产业发展中心,1998.
[8]Zorica Nedovi′-Budi′,Jeffrey K Pinto.Interorganizational GIS: Issues and Prospects.The Annals of Regional Science,1999,33(7):183-195.
[9]李连营,李清泉.基于MapX的GIS应用开发[M].武汉:武汉大学出版社,2003.
[10]Yee Leung.Some Thoughts on Spatial Data and Structure Analysis.Joural of Geographical Systems,2000,2(1):107-110.
作者简介 马 媛 女,1981年出生,回族,陕西西安人,西安交通大学通信与信息系统专业硕士,长安大学信息工程学院电子信息与通信工程实验室助理工程师。主要研究方向为交通信息工程及控制。