GIS软件开发平台选型对比

GIS软件开发平台选型对比
GIS软件开发平台选型对比

GIS软件开发平台选型对比

软件选型是GIS应用项目开发中的重要环节。在国内外众多的GIS软件产品中,“没有最好的,只有最合适的”。本文档从功能、性能、二次开发能力和技术支持等多方面剖析ArcGIS、SuperMap GIS和MapInfo三套解决方案,并列出对比条目对二次开发项目的重要等级参考,希望对开发商和最终用户软件选型有所帮助。

1.对比软件

2.功能对比

2.1数据组织

(重要等级参考:★★★★)

在应用需求的推动下,ArcGIS先后推出了多种文件格式,如Arc/Info的Coverage、ArcView 的Shape文件、ArcSDE的空间数据库、GeoDatase的空间数据库、交换文件格式E00等等,ArcMap推出后又出现了新的数据结构。这些数据格式所支持的功能各不相同,比如Coverage 和GeoDatabase有拓扑关系,Shape和SDE没有拓扑关系,数据对象结构也相差极大,以至于各格式之间相互转换频繁,且这样或多或少地会损失信息和功能。

SuperMap同样提供了多种格式的数据组织方式,比如:基于复合文档技术的SDB,基于桌面数据库的MDB,基于大型数据库的SDX for Oracle和SDX for SQL Server等。SuperMap 的这些格式都有统一的对象模型和结构定义,各个格式支持的操作和功能从根本上是统一的。SuperMap GIS系列软件都可以直接打开这些格式的数据,并且能非常简单地实现各个数据格式数据源之间交换数据,如在同一格式的数据源内复制数据。SuperMap拥有独一无二的“多源空间数据无缝集成技术”,允许开发上轻易将使用SuperMap已建成的应用系统移植到其他格式。比如,在极少代码改动的情况下,一个使用SQL Server存储空间数据的应用系统或者产品轻松移植到使用Oracle或者SDB的环境中。

MapInfo的数据格式相对比较单一,即基于文件的TAB数据格式,另一种就是基于数据库的MapInfo Spatialware。MapInfo也能比较方便地在两种数据格式之间进行转换。不足之处在于MapInfo的数据格式都不支持拓扑关系,MapInfo整个软件也不支持拓扑关系。

===基于文件的地图数据管理=== (重要等级参考:★★★)

基于文件的地图数据管理方式仍然在一些系统中广泛应用,特别是在一些中小型应用项目中中还是具有一定的意义。

2.1.1对比明细表

2.1.2评述

ArcGIS提供两种本地地图数据格式,即Coverage和Shape。其中Coverage支持拓扑关系,Shape文件不支持拓扑关系。两种文件格式都不提供加密功能,无法实现数据保护。两种数据格式都是一个数据集、多个文件组成,在大型应用系统中,地图数据量大,因而数据文件也很多,不便于数据的组织和管理。

SuperMap也提供两种本地地图数据格式,即SDB和MDB。两种数据格式都支持拓扑关系、密码保护功能,允许用户对数据进行加密。两种数据格式都是多数据集一体化管理方式,外部数据文件数量少,方便于数据管理和组织。

MapInfo的TAB文件格式也是由多个文件组成,不支持存储拓扑关系,也不支持加密。

2.2空间数据库技术

(重要等级参考:★★★★★)

基于关系数据库和对象关系数据库的空间数据库技术是现今大型GIS应用项目中广泛采用的空间数据管理技术,这一点在大型应用项目的GIS软件选型对比中一直受到高度重视。

2.2.1对比明细表

2.2.2评述

ESRI的SDE和后来推出的GeoDatabase都具有大数据量管理能力,具有很好的数据访问权限管理。但是ESRI的空间数据库支持的几何对象类型不够丰富,此外,由于SDE不支持存储和管理拓扑关系,造成不少应用系统特别是交通、电信、电力等与网络拓扑有关的行业应用系统选型的障碍。尽管GeoDatabase支持拓扑关系,但是MapObjects无法访问GeoDatabase。

SuperMap SDX空间数据库技术具有大数据量管理能力和很好的权限管理功能。

而且SuperMap 空间数据库也如同SuperMap的文件格式一样,支持存储拓扑关系和非常丰富的几何对象类型。

MapInfo的Spatialware空间数据库也有很好的权限管理功能,大数据检索能力也不错。Spatial不支持数据压缩。

2.3拓扑关系

(重要等级参考:★★★★★)

在电力、交通、电信和城市综合管网管理等系统中,拓扑关系方面的功能非常重要。

2.3.1对比明细表

2.3.2评述

ArcGIS中的Workstation部分对拓扑关系有非常强的处理和分析功能,但是该部分缺少强大的组件式二次开发能力。ArcInfo 8.0新增部分,特别是ArcObjects+GeoDatabase对拓扑的处理能力尚不成熟,尤其缺少交通网络资源管理中特别需要的动态维护拓扑关系、一根管线中包含多条光纤/铜缆以及一条道路多车道的网络搜索功能,也不支持节点连接关系矩阵。若用ArcObjects开发交通网络资源管理系统,这部分网络分析功能需要在二次开发中实现。若用MapObjects开发交通网络资源管理系统,则所有的拓扑关系维护和分析功能全部需要二次开发实现,工作量更大。

SuperMap无论是文件格式还是空间数据库格式都支持拓扑关系存储管理功能。

并且,针对交通网络资源管理中一根管道包含多条光纤/铜缆、一条道路多车道的特殊情况,SuperMap专门提供了解决方案,通过RuleMask可以对管线中指定的通信线缆、道路中的车道进行网络路径搜索,大大减少了二次开发的工作量。

与此同时,SuperMap还支持在编辑时动态维护网络拓扑关系,增加管线无需重建拓扑关系。独特的节点联接关系矩阵为解决网络节点处理复杂的连接关系提供了方便。

MapInfo不支持拓扑关系的存储和管理,也不支持基于拓扑结果的空间分析和运算。若用于开发电信、电力、自来水等需要拓扑分析功能的应用系统,拓扑分析功能完全需要二次开发实现,无疑增加了二次开发的工作量和系统建设周期。2.4专题地图

(重要等级参考:★★★★)

专题地图是GIS软件根据属性数据的不同分别给几何对象采用不同风格显示的地图表现形式,是GIS软件数据可视化的重要工具,在多数GIS应用中都有重要意义。

2.4.1对比明细表

2.4.2评述

ArcGIS支持较多的专题地图,SuperMap在这方面功能更强,不仅支持更多的统计专题图功能,而且提供了独一无二的自定义专题地图,解决了以往GIS软件专题地图显示中面临的一些难题。MapInfo的专题地图功能也较为丰富,使用也比较方便。

2.5数据格式转换

(重要等级参考:★★★★)

对应用系统来讲,GIS软件数据交换能力决定了该系统的开放性,即能否方便地输入其他来源的数据以及输出相应的数据格式,与其他系统进行数据交换的能力。

2.5.1对比明细表

2.5.2评述

三套解决方案相比较,SuperMap具有更强的数据交换能力,支持更多的矢量

数据格式(包括交换格式和二进制格式)。

2.6多源数据集成

(重要等级参考:★★★)

多源数据集成,即无需格式转换直接访问多种数据格式的能力,这是GIS应用系统开放能力的另一种体现。

2.6.1对比明细表

2.6.2评述

ArcGIS和SuperMap的多源数据集成能力都比较强,其中SuperMap支持DGN,ArcGIS不支持。

2.7地图编辑

(重要等级参考:★★★★)

地图编辑功能是多数GIS应用必需的功能,组件对象模型强大的地图编辑功能可以省却大量二次开发的精力。

2.7.1对比明细表

2.7.2评述

ArcInfo在地图编辑功能方面能力欠佳一直困扰着ArcGIS用户,MapObjects 甚至不提供基本的地图编辑功能,全部需要通过二次开发来实现。ArcObjects提供一些地图编辑功能,但是所能创建的几何对象类型不多,而且智能捕捉能力也

弱。

SuperMap超强的图形编辑能力在很大程度上降低了图形编辑的开发工作量,在这方面SuperMap具有非常显著的优势。

MapInfo地图编辑功能比较方便,能创建的地图对象也较丰富,但在捕捉功能方面较弱。

2.8制图输出/桌面排版

(重要等级参考:★★★)

通过桌面排版方式打印输出地图是多数GIS应用系统需要提供的功能。

2.8.1对比明细表

2.8.2评述

MapObjects不提供桌面排版功能。

ArcObjects提供桌面排版功能,功能较强。支持属性数据表,不支持对象组合(Group)、组合嵌套(Nested Group)和艺术字体标题。

ArcGIS中的各个软件无法共享制图排版的成果,如ArcMap的布局设计成果无法在MapObjects、ArcInfo Workstation和ArcView 3.x中使用。

SuperMap提供专门的桌面排版控件(SuperLayout),功能较强。SuperMap的布局组件不直接支持属性表,需要通过二次开发来扩展实现。SuperLayout支持

艺术汉字标题,支持布局元素的组合(Group)、组合嵌套(Nested Group)等功能,

有助于在布局二次开发中实现特殊的模板功能。

SuperMap GIS系列软件基于共同的技术基础构建,各个软件之间可以共享布局设计,如SuperMap Survey制作的布局,在SuperMap Deskpro桌面软件和

SuperMap III组件中都可以识别并使用。

MapX没有排版功能。

2.9数据采集

(重要等级参考:★★★★)

SuperMap提供专业的数据采集工具,可以进行基础地形图和专业地图数据的批量快速采集。

ArcGIS和MapInfo无类似专业的数据采集软件。使用传统的桌面GIS软件进行数据编辑时,往往需要不断切换可编辑图层,来指定当前绘制的几何对象存放到什

么图层,这样既耗费时间也容易出错。此外,通过数字化人员输入编码的方式来区

分同层的不同地物要素类型,这也是一个容易出错的工作,大量数据错误检查的工

作严重影响数据采集的效率。

基于SuperMap Survey专业数据采集软件,先由数据采集管理员定义数据结构并构

建数据采集界面参数库,数字化人员通过所见即所得的方式绘制指定类型的几何对

象,无需不断切换可编辑图层、无需输入要素编码,避免了大量错误的发生,大幅

度提高了效率。

2.10专题地图

2.10.1对比明细表

2.10.2评述

2.10.3

3.二次开发对比

3.1二次开发组件

(重要等级参考:★★★★★)

组件式开发方式无疑已经成为当前最主流的GIS应用二次开发方式,比较GIS 软件的组件开发能力和灵活性在GIS软件选型中至关重要。

3.1.1对比明细表

3.1.2评述

MapObjects组件对象封装粒度适中,使用灵活且易于掌握。但是功能很弱,其功能不超过SuperMap系列组件中的核心组件之功能。因此MapObjects的定位是一个非常轻量级的客户端,不适合于大型工程应用。此外,MapObjects 自从

2.1版本推出之后已经长期没有更新版本,若采用其进行工程应用开发,后续版

本升级存在问题。

ArcObjects是ESRI基于ArcInfo 8新的构架推出的组件对象平台,功能强大,对象丰富。但是ArcObjects对象粒度封装过细,导致对象数量骤增(多达1000多个),一方面导致系统初始化速度慢(每个COM对象的初始化都需要消耗一定的CPU和内存资源),另一方面导致掌握该组件群非常困难。

SuperMap组件对象封装粒度适中,使用灵活且易于掌握。SuperMap III大型

组件式GIS软件开发平台功能强大,由一系列控件组成,既可以协同工作,也可

以任意裁减,具有高度的伸缩性和灵活性。

MapX与MapObjects功能基本相当,稍强于MapObjects,但是也属于轻量级客

户端,只有一个主要控件,不适合于大型应用项目。

3.2二次开发文档

(重要等级参考:★★★★)

ArcObjects的开发参考文档不仅是全英文说明,而且内容过于简洁,比如,函数参数除了说明参数类型以及是否可缺省之外,竟鲜有文字描述该参数的意义,令人难以理解。

SuperMap III全中文二次开发文档齐全,《SuperMap III 程序员参考手册》中对对象及其接口的说明较为详细,方法的参数除了有较详细的说明外,还有大量的示

范代码指导开发者使用对象及其接口。除此之外,《SuperMap III开发教程》还提供

了系统学习SuperMap III组件的教材。

以下是ArcObjects和SuperMap中一个典型方法(创建数据集)的文档说明对比

(SuperMap手册中不仅提供了对参数的较详细说明,而且通过大量示范程序说明

接口的使用方法)。

3.2.1对比明细表

3.2.2评述

3.3专题地图

3.3.1对比明细表

3.3.2评述

3.3.3

4.技术支持对比

4.1专题地图

4.1.1对比明细表

4.1.2评述

4.1.3

4.2专题地图

4.2.1对比明细表

4.2.2评述

4.2.3

4.3专题地图

4.3.1对比明细表

4.3.2评述

4.3.3

5.

相关主题
相关文档
最新文档