刘宇安宁
(中国矿业大学环境与测绘学院 江苏 徐州 221008)
数据是实现世界中的信息载体,是信息的具体表达形式[1]。在GIS出现以前,我国的测绘部门的数据大多数是以CAD的DWG或者DXF格式进行保存;随着GIS的出现并迅速发展从空间地理信息角度来看,CAD存在着缺乏对空间数据的描述和分析等问题。然而,GIS却在空间分析方面发挥着强大的作用,能够对已有的空间数据进行建模、管理,以特定的数据格式保存[2]。因此,为充分利用目前已有的CAD数据作为建立GIS空间信息数据库的数据源,就需要采用切实可行的办法将海量的CAD数据转换成GIS格式的数据。
1.1 CAD数据特点
CAD以强大的图形绘制和编辑功能闻名全球,DWG和DXF是AutoCAD常用的2种数据格式,主要用于描述地理实体的空间位置和几何形状,将点、线、面以及颜色、线性等属性以二进制文件存储[3];用户可以根据自己的需要用使用特定的线型、字体和颜色等形式表达地理实体的信息。同时DXF格式也是CAD用于与其他软件进行数据交换的公开的共享数据格式,是一种开放式矢量数据格式。DXF数据通常是以ASCII码文件保存,用户可以通过直接读取这种数据文件,从而实现CAD数据与其他软件之间的格式转换。
1.2 ARCGIS数据特点
ARCGIS作为国内目前使用最为广泛的GIS软件之一,其数据存储方式主要有[4]:Geodatabase、coverage和 shapefile三种。Geodatabase是DBMS中的一个空间数据库,它包含了矢量数据、栅格数据、表以及其它GIS对象,是建立在简单要素模型基础之上的;coverage是一种矢量格式文件的要素类的集合,把几何和空间拓扑关系存储在二进制文件中,属性数据则被存放在INFO表或RDBMS中;Shapefile也是一种矢量格式文件,一般是由主文件 (.shp),索引文件 (.shx)和DBASE(.dbf)文件组成,分别用于存储空间、属性和两者的空间关系,由于shapefile文件不存储拓扑信息,所以在显示和访问效率上相对于coverage要快许多,是ARCGIS数据一种比较通用的数据交换的格式。
从数据结构角度看,由于CAD中的数据结构与ARCGIS中的的数据结构存在着较大的差异;虽然ARCGIS软件能够接受CAD数据,但是在图形的转换中无论是图形数据还是属性数据,总是存在一些数据损失的问题:
2.1 地理要素的损失和变形。由于CAD主要侧重于对地理实体的空间几何信息的描述,而GIS主要侧重于对地理实体的空间信息与属性信息的的表达。因此,CAD图形向GIS转换时,会导致着要素的某些几何属性如线型、颜色以及符号的丢失,或者无法正常显示的问题;同时也存在一些弧线要素的变形,通常就是采用内插点的方式将弧线转成折线。
2.2 属性信息的丢失。CAD中图形属性信息转入到ARCGIS中,许多CAD的扩展属性信息就会出现丢失的现象;同时,由于CAD的属性信息有的本来就存在着不充分等问题,从而就导致转换后的属性信息不足,这就需要在属性表中对地理要素的进行手工追加相关属性信息。
2.3 数据存储的冗余。在CAD图形存在着有些线状地物上的点太多或者分多段存储、重复画线等问题,在CAD中并不影响图形的显示以及输出;但是,一旦进入到ARCGIS中这些分段存储的线状地物就会占用多条存储记录,无形之中就会加大数据的存储量,从而造成数据的冗余[5]。
3.1 利用ArcGIS实现数据转换
(1)利用 ArcToolBox 工具
ARCGIS中的ARCTOOLBOX模块自带了数据转换工具,可以快速的实COVERAGE、CAD、Shapfile、GEODATABASE等数据格式的转换。CAD向Shapfile转换的实现,依次打开ToolboxConversion tools o ShapfileFeature Class To Shapefile(multiple),选择需要转换的CAD文件和输出路径,点击OK就可以实现数据的转换。在ARCGIS应用中通常是先将CAD格式的数据转换为GEODATABASE数据,然后再按照数据模型的定义对要素类进行组织合并、定义域、子类型、关系、几何网络规则,再导出Shapfile文件[6]。
(2)利用 ArcMap
在ARCGIS中ARCMAP也是可以实现CAD数据的读取和转换。在资源列表窗口,选择需要转换的要素,右键选择DataExport Data,在对话框中默认的是Shapfile格式,也可以选择GEODATABASE和SDE格式,按下确定就是转换成shp格式的文件了。
总之,ARCGIS的这两种数据转化方式可以较快的实现数据格式之间的转换,但是这两种数据转换方式存在着效率低、不能实现数据的批量转换,只适合数据量较小的情况下采用。
3.2 利用FME实现CAD到ARCGIS数据格式转换
FME是加拿大Safe Software公司推出的空间转换处理系统,可以用于读写存储以及转换各种空间按数据,是一种与GIS格式无关的空间ETL工具,该系统通过“语义转换”实现在数据转换过程中重新构造数据的功能,以实现数据格式之间的转换。其转换方式分为两种:(1)采用FME Universal Translator自动转换;(2)采用FME Workbench自定义数据转换。采用第一种方法用户可以采用FME自带的映射文件产生模板,这种方法比较简单、快捷,但不能够满足有特定需要的用户根据工程的需要自行修改需要转出的数据,主要用于对数据需求相对较少的情况;第二种方法在Workbench界面中用户根据自己的工程的具体需要自行定义映射文件,这个过程就是用户将文件的需要的图层数据、要素、属性与目标格式的图层数据、要素、属性之间的一一对应,从而实现图形和属性信息的转换。
本文就某村庄宗地图界址点图层转换为ARCGIS的shapefile格式为例,采用FME Workbench将宗地图界址点图层中的属性根据需要转出,本例选择将宗地图中的权利人、图幅号、宗地号、宗地面积转到文件的属性表中。
图1 转换前CAD数据Fig.1 unconverted CAD data
图2 转换后的shp数据格式Fig.2 converted shp data
图3 转换后的shp属性表格Fig.3 attribute table of converted shp
本文通过分析CAD数据与ARCGIS数据特点分析,充分理解这两种数据格式的特点,以及数据公开的交换格式;总结目前CAD数据转为ARCGIS数据存在的问题,研究目前CAD数据转为ARCGIS数据常用的的三种方法,并分析三种方法的优缺点。最后采用FME实现某村的宗地图转换为ARCGIS格式,这种方法与原图相比能够较好的将属性数据转换到ARCGIS属性表中,符合工作的具体需要。
[1]胡鹏,黄杏元,华一新.地理信息系统教程[M].武汉:武汉大学出版社,2002.
[2]龚健雅.地理信息系统基础[M].北京:科学出版社,2001.
[3]刘永强.AUTOCAD与ARCGIS数据转换方法研 [J].测绘科学,2009,34:168:170.
[4]陈乐书,等.CAD到GIS数据格式转换的讨论.安徽农业科学[J].2009(18):8799-8803.
[5]鄂洁,等.AUTOCAD和ARCGIS间的数据转换研究.软件导刊[J].2007,9:18-19.
[6]李刚,朱庆杰,张秀彦,等.基于FME的城市GIS基础空间数据格式转换[J].测绘通报,2006(6):17-20.