当前位置:文档之家› 几种常用的地理信息软件比较

几种常用的地理信息软件比较

几种常用的地理信息软件比较时间:2010-04-10 来源: 网友评论:0 人气: 183 作者:地理信息系统是信息科学与信息技术发展的一个重要组成部分,是信息高速公路上的节点和重要基础设施。

作为在信息社会中的一种集地理空间特征和各种统计信息于一体的特殊信息系统,地理信息系统已成为政府部门进行科学管理和快速决策时不可或缺的工具。

地理信息系统的提出源于二十世纪五十年代,经过四十余年的发展,随着计算机科学、地理学、制图学、遥感与摄影测量学、图形图像技术以及数据库技术的不断发展,地理信息系统已经成为了一种功能强大、性能完善的计算机系统,广泛应用于规划、土地、测绘、建设、环保、军事等诸多部门。

自MapInfo与Arc/Info率先进入中国地理信息系统市场以来,国外其它各种GIS软件(如MGE、MapCAD、Genemap、MicroStation GeoGraphics、Maptitude等)也蜂拥而入,竞相强占中国GIS市场。

而此时,国产GIS软件在此危机时刻,在国家和地方有关部门的支持下,也加快了开发的步伐,并相继推出了几种GIS软件,如武汉测绘科技大学的GeoStar、中国地质大学的MapGIS、北京大学的CityStar以及方正集团公司开发的“方正智绘”软件等等。

无论是国产GIS软件,还是国外GIS软件,都必须具有GIS的基本功能,如数据接收与处理(包括数据校核、坐标变换、投影变换等),数据存储,数据库管理,空间查询与检索,空间分析,数据输出等等。

下面我将对MapInfo,Arc/Info,Maptitude三种GIS软件中本人较熟悉的部分作简要的分析。

1.MapInfo 软件在MapInfo的系列产品中,用得最多的是MapInfo Professional 和MapBasic。

MapInfo Professional 是基于普通PC微机的桌面地图信息软件,其主要特点是:(1)快速数据查询,高速屏幕刷新,使得用户界面具有良好的图形显示效果;(2)集成能力强,能够根据数据的地理属性分析信息的应用开发工具,是功能强大的地图数据组织和显示软件包;(3)数据可视化和数据分析能力较强,可以直接访问多种数据库的数据,如Oracle, Microsoft Access, Informix, SQL Server, Dbase等;(4)专题地图制作方便,数据地图化方便;(5)同时支持16/32位的应用开发,适用于多种计算机操作系统,如Windows 3.1,Windows 95, Windows NT,OS/2等;(6)完整的Client/Server体系结构;(7)完善的图形无缝连接技术;(8)支持OLE 2.0标准,使得其它开发语言如:Visual Basic, Visual C++, PB, Dephi等能运用Integrated Mapping技术将MapInfo作为OLE对象进行开发。

MapBasic是基于MapInfo平台的用户开发语言,包括300多条语句和功能。

通过MapBasic 的二次开发,能够扩展MapInfo的功能,实现程序的自动操作,而且可以方便地将MapInfo 与其它软件进行集成,其主要特点是:(1)由于MapBasic是一种类Basic程序语言,所以使用简单;(2)便于MapInfo界面的改造,功能的扩展与应用的可视化;(3)支持OLE Automation和DDE(动态数据交换)技术,易于与其它应用软件相连接;(4)包含嵌入的SQL语句,数据查询、检索更加方便。

MapInfo和Mapbasic提供了放大、缩小、漫游、选择、空间实体组合/分割等基本的图形操作功能;同时MapBasic 可以直接读取点、线、面等空间实体和属性数据库,并提供条件分析、统计分析、缓冲区分析等分析功能。

利用MapInfo进行开发主要有三种模式:(1)以MapInfo作为独立开发平台,利用MapBasic所进行的二次开发模式;MapInfo Professional 提供了基本的GIS功能,如数据接收功能、建库功能、图形功能、数据查询与检索功能、专题图制作功能、简单分析功能、数据输出功能等。

而MapBasic是建立在MapInfo平台上的用户开发语言,是针对MapInfo的二次开发,完善MapInfo的功能和灵活地进行各种所需功能的开发。

(2)将MapInfo作为OLE对象的开发模式;尽管MapInfo Professional和MapBasic具有强大的功能,可以实现一般的GIS功能,但是随着用户需求的不断变化,其功能毕竟还是有限的。

对于任何GIS软件平台而言,为了能够维持其生命力,就必须要求该平台具有可扩展能力,即支持OLE标准。

MapInfo有效地解决了这个问题,允许其它开发语言将它作为OLE对象来进行开发。

(3)利用基于ActiveX的MapX控件所进行的开发模式。

GIS软件的组件化是GIS软件发展的方向之一,即:利用ActiveX控件方式进行GIS系统的二次开发。

MapX是MapInfo基于ActiveX技术的可编程控件,它集成了MapInfo几乎所有的功能,如地图显示,图形放大、缩小、选择、漫游等,制作专题地图,图层控制,ODBC 功能,地理查询等等。

在GIS系统中,数据的工作量占整个系统开发的70-80%,所有GIS功能均须基于地理数据,由此可见合理的地理数据模型是GIS系统生存的基础。

MapInfo Professional作为桌面地图系统的典范,其空间数据结构是不具备拓扑关系的,因此相对部门级或企业级地理信息系统而言,其空间分析能力较弱。

但是它对硬件平台,软件环境,软件工具,要求较低,同时使用简单,价格也较低。

MapInfo是通过建立空间实体模型和空间索引来定义其空间数据模型的,利用Table来存储空间数据和属性数据。

空间实体主要由点、线、面三种基本类型组成,采用面向对象的方法,每种实体对象均维护其本身的所有信息。

空间索引是利用R-Tree技术来实现的。

采用这种=FD据模型可以简化数据管理的复杂性,解决部分的空间查询与分析功能,但仍有些空间分析功能如路径分析软件本身无法实现,须借助于外部开发语言(如Visual Basic, Visual C++,Dephi等)来实现。

MapInfo的数据保存在数据库中,主要是两种数据库:内置数据库和通过ODBC连接的外部数据库。

它的数据库通过Table的形式进行数据的组织和管理,每一个Table可存放若干空间实体及对于每一个空间实体的若干属性说明。

当然也可只存放属性数据。

Table严格按照关系模式规范化的要求设计,空间实体在Table表中的存储不允许重复,以保证空间实体记录的唯一性。

有Table表结构,可建立空间实体与属性数据之间的连接关系,从而利用标准SQL来进行查询和检索。

2.Arc/Info 软件Arc/Info是目前功能最为完善、性能最为稳定的专业地理信息系统软件平台之一,也是最庞大的GIS软件。

Arc/Info一般用于部门级和企业级的大型地理信息系统的开发,而对于桌面级的GIS则主要用ArcView来进行开发。

这两种软件相互兼容,可以相互调用数据。

下面将简要列出本人所了解的Arc/Info的主要功能:(1)支持多种系统平台,如Windows NT, UNIX, SUN Solaris, SGI IRIX, IBM AIX等.可方便地调用各种系统平台上的数据和应用;(2)将最广泛的数据源集成到统一的环境下,如矢量(x, y坐标)地图数据、栅格图象数据、CAD数据、声像数据以及大量的DBMS表格数据;(3)地理数据和相关数据的自动化采集、管理、显示功能;(4)强大的地理空间分析功能。

Arc/Info提供了各种分析工具,如:拓扑地理叠置分析、buffer分析、空间与逻辑查询、临近性分析等等;(5)建立了多种数据模型,如水文建模、网络建模、栅格建模等;(6)专业性和功能性非常强的TIN模块,可生成、显示、分析地表模型,同时进行地图晕暄、模拟飞行动画、通视分析、剖面提取及工程土方量计算等等;(7)提供了栅格分析功能,可进行栅格矢量一体化查询与叠加显示;(8)开发了数据库管理模块,可管理大量的数据,并能进行工作数据的维护和动态更新;(9)高效的图形显示功能。

Arc/Info开发了一个图形加速模块,可提高图形显示的速度。

Arc/Info提供了AML(Arc Macro Language)语言开发环境,利用该开发环境可非常方便地编制用户的菜单和功能。

AML是一种解释性的开发语言,与Maptitude的Caliper Script 类似,具有以下特点:(1)语法结构简单,容易掌握,易于开发;(2)可采用模块化的开发方法进行系统应用软件的开发;(3)支持多种风格的菜单、对话框、工具条的设计与开发;(4)提供多线程的调度和输入管理。

同时Arc/Info为了克服AML语言难于处理复杂的线程控制以及开发效率较低,对外部应用的可控制性差等缺陷,又提供了ODE(Open Development Environment)功能。

由于ODE 是通过编译来执行的,因此可弥补AML语言的不足。

Arc/Info的开发模式主要有两种:(1)利用Arc/Info、AML和ODE来进行开发。

(2)利用Arc/Info的Active X控件在通常的编程语言开发环境中进行开发。

Arc/Info的基本元素是“ARC”,可由任意多个点构成,在其两端有结点,并伴有共享该“ARC”的两个区域的代码。

同时,还为每个多边形建立了环绕其边界的“ARC”目录表。

在这种数据结构中,实际存储的只是结点的坐标,而“ARC”和多边形是通过逻辑关系建立的。

这种数据结构不仅保存了描述多边形形状的几何信息,而且还建立了多边形元素(Polygon, Arc, Node)之间的拓扑关系。

同时Arc/Info采用Coverage特征来描述地理数据。

Arc/Info将各种特征属性保存在相应的Table中。

Arc/Info建立Coverage拓扑时,定义拓扑和几何特征,并且存储在特征属性表(FAT)文件中。

因此Arc/Info采用的是一种带有拓扑关系的数据模型。

在这一点上,Maptitude有点与之类似。

ArcView与MapInfo比较类似,主要体现在以下方面:(1)均属于桌面地理信息系统范畴,开发方便、简洁;(2)可支持多种空间数据格式,并且两者空间数据可以互换;(3)空间数据不具有拓扑结构,需建立索引文件来完成各种空间查询和分析;(4)其它的一些基本的GIS功能两种软件都具有,这里就不再详叙。

当然作为两种由不同产家开发的软件也具有各自的特点,如在数据管理模式上,ArcView利用Shape格式来保存无拓扑关系的矢量数据,而用Table来管理属性数据;MapInfo则利用Table来管理所有的数据;两者开发工具不尽相同,ArcView的Avenue是一种面向对象的程序设计语言,引入了类的概念,虽功能强大,但开发较难,而MapInfo的MapBasic是一种类Basic程序设计语言,容易掌握,且功能较完善,但是两种开发工具均可进行编译。

相关主题