MapGIS6.X和ArcGIS9.0的数据互相转换

摘要:本文深入讨论了MapGIS和ArcGIS两种GIS软件的数据格式,并详细介绍了MapGIS6.X和ArcGIS9.0的数据互相转换过程。在MapGIS向ArcGIS数据转换时,首先将MapGIS6.X转换为E00格式,然后在ArcCatolog中将E00数据转换为Coverage格式,转换后对于多边形数据需要在Arc中进行拓扑重建,然后由Covrrage格式就可以转换成ArcGIS9.0的任意格式。

关键词:MapGIS; ArcGIS;数据转换;地理信息系统

中图分类号:TP311.13

文献标识码:A

文章编号:4481- (2006) 04-0029-04 1

引言

 随着GIS的广泛应用,其使围范围涉及多学科多部门,但各部门在开发地理信息系统时,通常根据本部门的特定情况,采用不同的数据建模方法,选用不同厂商的软件。由于不同软件采用不同的空间数据格式,对地理数据的组织有很大的差异,这使得运用不同软件开发的系统之间数据交换存在困难另外,不同的应用部门对地理现象的理解不同,对地理信息有不同的数据定义,使得各领域在共同协作中进行信息共享和交流时存在障碍,导致空间数据利用率比较低,数据重复采集和不兼容现象时有发生。因此,实现有效数据转换和共享成为发展的迫切需要。

 

目前,在地籍管理中县乡级的数据一般采用MapGIS格式.而省市级或直管部门一般都采用大型关系数据库来集中管理数据,实现在一套连续完整的数据上对地籍变更进行实时一监控,进而制止非法用地现象。MapGIS是一款优秀的国产GIS软件,已普遍应用于国内的土地、地质、测绘、交通、煤炭等行业,它的地图编辑功能很强而且易于操作,因此获得了国内用户的欢迎,但是它对空间数据库的支持性能不太理想。ArcGIS是美国专业GIS软件公司ESRI的旗舰产品,对空间数据库的支持功能很强[2]。ArcGIS通过ArcSDE和一个RDBMS相连,用户不必知道他听用的是什么数据库,他所看到是一个个的图层,但是ArcGIS的地图编辑功能较弱.很多用户在MapGIS下制作地图,然后通过类型转换将数据转换到ArcGIS支持的数据格式。怎样最广泛、最有效地实现这两种系统之间的数据共享是许多用户共同关注的问题。

本文以此为目的,探讨MapGIS和ArcGIS的数据共享实现的方法.

2 MapGIS6.X和ArcGIS9.0数据格式

2.1 MapGIS的数据格式

MapGIS数据管理的核心概念是工作区,存放空间对象的空间数据、拓扑数据、图形数据和属性数据,每个工作区都对应于一个数据文件。工作区分为点、线、面、网、表5种类型。在一个工作区中,存放许多空间实体的个体,每个体都有唯一的实体号,对实体数据的存取的主要依据实体号。 MapGIS的数据交换格式是ASCⅡ码的明码文件,其文件结构由文件头和数据区两部分组成。文件头记录的是文件的版本和类型(点、线、面)信息。数据区记录的是实体的几何信息。明码文件按要素类型分为点文件(*.wat)、线文件(*.wal)/区文件(*.wap)三种。MapGIS还有一种不公开的标准数据格式.也按要素类型分为点文件(*.wt)、线文件(*.wl)、区文件(*.wp)三种。明码文件只有要素的几何信息而没有要素的属性信息,只能用于地图的显示和出版,必须转换为MapGIS的标准文件,才能进行GIS分析与属性信息查询等操作。

2.2 ArcGIS的数据格式

ArcGIS通过空间数据引擎ArcSDE存贮Geodatabase对象,ArcSDE以层的方式来管理地理数据,具有共同属性项的一类要素可以放到一层中,每个数据库记录对应一个实际要素[4]。ArcSDE为数据库中各(layer)建立了空间索引。空间索引是将层从逻辑上分成一个个小块,称为“cell”,层中的要素则分解到各cell中加以描述,并将此描述信息写到索引表中。落到多个cell上的要素将在每个cell对应的索引记录中加以描述没有数据的cell不包括在索弓}表中[5]。

ArcGIS的数据格式与MapGIS的不同,它的数据格式与表示特征的类型没有关系。它的数据格式主要有Shape、Coverage、Geodatabase和E00[3]。其中一个图形特征的Shape或者Coverage数据是由一组文件组成,相当于一个小型的桌面数据库,而Geodatabase是指数据在空间数据库中存储方式,Geodatabase中每一个特征构成一个特征类(FeatureClass),多个特征类构成1个特征数据集(Featuredataset)。Geodatabase通过ESRI的空间数据库引擎ArcSDE来管理,用户不能直接操作RDBMS中的表。向Geodatabase中添加数据必须通过ArcCatalog或者ArcToolBox中的工具进行数据的导入。E00 Geodatabase数据是一种交换(Interchange)格式,用于不同平台之间的数据转换,在下文中正是利用E00格式作为一个桥梁进行数据转换。

3 数据转换

3.1 MapGIS6.X向ArcGIS9.0的数据转换在由MapGIS6.X向ArcGIS9.0的数据转换时首先将点数据、线数据和面数据转换到E00格式,然后在ArcCatalog中选择工具将E00数据转换到Coverage格式,然后在ArcEdit中对线数据和面数据进行拓扑重建,这样就完成了由E00到Coverage的转换,接着利用ArcToolBox中的其他工具就可以很方便地转换到其它的ArcGIS格式。

下面就详细地介绍转换过程。

第一步:由MapGIS 格式转换到E00格式 在MapGIS的主界面选择菜单项“图形处理”→“文件转换”,进入文件转换界面。然后在主菜单中选择“文件”,这时可以选择要装入的文件类型〔点数据、线数据、面数据)装入文件以后,选择菜单“输出”,这时根据所装入的文件类型选择输出点数据、线数据或者面数据的E00格式(如图1)。

第二步:由E00格式向Coverage格式转换

 (1)启动ArcGIS9.0,打开“VIEW”菜单→“Toolbars”菜单→选择复选框“ArcView 8x Tools”,添加转换工具条Conversion Tools。 (2)单击Conversion Tools下拉菜单,选择“Impot from Interchange File”工具(如图2),打开“ArcView Impot Interchange File”对话框。

(3)在“Input File”框中输入E00数据文件路径和文件名,在“Output”框中选择转换的文件路径和文件名。单击“OK”按纽,完成E00数据到Coverage数据的转换。

 第三步:拓扑重建[6]。

ArcGIS数据与MAPGIS数据的组织都是采用拓扑关系构建的,数据转换时必须进行拓扑重建。

首先启动Arc,进入命令行界面,输入如下命令(假设文件路径在E:/Dat):

 (1)Arc:create workspace E:/dat (创建一个工作区)

 (2)Arc: workspace E:/Dat(设置工作路径)

 (3)Arc:copy E:/Dat/Coveragename Coveragename ((将源Coverage文件复制到当前工作区)

 (4)Arc:ArcEdit(启动ArcEdit)

(5)ArcEdit:edit coverage Coveragename(设置当前编辑的Coverage文件)

(6)ArcEdit:edit feature arcs(设定当前编辑的特征)

 (7)ArcEdit:Clean(重建拓扑关系)

(8)ArcEdit:save(保存)

 (9)ArcEdit:quit(退出ArcEdit)

 (10)Arc: quit(退出Arc) 这样在路径E:/dat中的Coverage文件就是重建拓扑以后的文件。

第四步:由Coverage格式向其它格式转换 主要有两种途径。

第一种如图3所示,在ArcToolBox中选择Conversion Tools 目录下的“To Shapefile”或者“To Geodatabase”转换到 shape格式或者导入空间数据库。

 第二种如图4所示,在ArcCatalog中选择要转换的coverage文件,右键单击,选择“Expout”菜单下的“To Shapefile”或者“To Geodatabase”工具,将Coverage转换到Shape格式或者导入空间数据库。(geodatabase)

第五步:ArcMap查看转换结果 (以下所用数据为某县土地利用现状数据,其中DLDM代表地类代码)

打开ArcMap ,单击工具栏“Add Data”按纽,添加转换后的shape格式或Geodatabase数据,右键单击面状数据,选择“Properties”→”Symbology”选项,在“Show” 窗体中选择“Categories”→“Unique Values many fields”→在“Value Fields”窗体中选择显示的字段如“DLDM”→单击”Add All Values ”→单击“确定”按钮,即可查看不同地类转换后的情现(如图5)。

右键单击数据,打开属性表。在“Option”下拉框中选择“Select By Attributes”,输入条件表达式如:“DLDM”=‘1ll’OR“DLDM”=‘l12’OR“DLDM”=‘113’OR“DLDM”=‘114’OR “DLDM”=‘115’,可以查看大类合并后ArcGIS9.0和对应MapGIS6.X下地类代f码是否一致。

3.2 ArcGIS9.0向MapGIS6.X的数据转换

ArcGIS9.0向MapGIS6.X的数据转换是MapGIS6.X向ArcGIS9.0数据转换的逆过程,转换过程分为ArcGIS9.0到E00格式和E00格式到MapGIS6.X。

第一步 ArcGIS9.0到E00格式 首先启动Arc,进入命令行界面,输人如下命令:

 (1)Arc:workspace filepath(设置工作区)

 (2)Arc:Export coverage CoverageData A(将一个图层CoverageData转换为A.e00格式)

 (3)Arc:quit(退出)

第二步 E00格式到MapGIS6.X 在MapGIS的主界面选择菜单项“图形处理”→“文件转换”,进入文件转换界面。选择“输入”菜单,选择下拉菜单“输入Arc/INFO(*.E00),在图形显示区右键单击,选择“复位窗口”命令,即可显示转换结果。

4 结论 在信息高速发展的今天,如何使数据资源最大化地共享,如何充分利用软件的优势互补,优化数字化生产的工艺流程,降低生产成本,提高劳动产产率,是推动GIS行业向前的一个重要问题,有待于今后进一步的探讨和总结。实现MapGIS6.X和ArcGIS9.0的数据共享,将使用户可以充分利用MaPGIS6.X方便的图层数据编辑功能、ArcGIS9.0强大的空间分析功能和空间数据库支持能力,极大地方便了地图数据制作和空间数据的维护。

参考文献

 [1]胡良军,邵明安.接受外部空间数据的初步探讨—兼论ArcInfo的数据接受方式[J]遥感技术与应用.2000, 15(4):256—269

[2]谢文勇,黄长江,陈志远.地理信息系统应用中图形数据的组织和管理[A].第五届ArcGIS暨ERDAS中国用户大会论文集(2002)[C].北京:地震出版社,2002.

 [3]崔伟宏.空间数据结构研究[M].北京:中国科学枝术出版社,1995.

 [4]梁鸿,丁仁伟.Oracle Spatial空间数据库的设计及应用[J].测绘科学,2005(3).

 [5]ESRI. ArcGIS Engine Developerr Guide [M].ESRI,2003.

[6]张建军,张静波.MapGIS6.1向ArcGIS8.1的数据转换[J].微机发展,2003(11):14-16

[7]王海琴等.MapG1S到ArcSDE的数据转换方法与实践[J].国土资源遥感,2005 (3) :30-33.

 [8]http:/www.MAPGIS.com.cn [EB/OL].

[9]陈勇等.数字图数据到MAPGIS数据的格式转换[J].测绘学院学报.2004(3):154-156

MapGIS6.X and ArcGIS9.0 Based Data Format Transformation Suo Junfeng Institute Geog.& Envmt. Sci.,Northwest Normal University, Lanzhou, Gansu Provine,730070 Abstract: In this paper, the data formats of MapGIS and ArcGIS are discussed in depth and the data interchange between MapGIS6.X and ArcGIS9.O are introduced in detail. In the process of data transformation from MapGlS6.X to AreGIS9.0, MapGIS6.X data is first transformed to E00 format, and E00 data is then transformed to coverage format using the tool in ArcCatalog. after the transformation, the polygon type data need to be reconstructed topologically in Arc. From Coverage format, data can he transformed to any formal that ArcGIS supports. Finally, the transformed result can be checked in ArcGIS9.0. Keywords:MapGIS; ArcGIS; Data transfimmation; GIS

转载自:https://blog.csdn.net/hailiannanhai/article/details/6268603

You may also like...