在做项目的时候,经常会在各个软件之间互相交互数据,各个软件有自己的优缺点,有自己的文件的数据格式和类型。现将CAD/MAPGIS/ARCGIS之间的转换简要介绍下:

首先,MapGIS符合国人的应用习惯和集成某些常用制图标准,比如在制作图框时,在MapGIS的“实用服务”模块下的“投影变换”系统中的“系列标准图框”就可以直接生成不同比例尺、标准图幅和非标准图幅的图框,如下图:


MapGIS的标准数据格式主要有点(wt)、线(wl)、面(wp)3种类型,软件本身提供的数据交换格式有点(wat)、线(wa1)、面(wap),它们都是ASCII码的明码文件。而ArcGIS是美国环境系统研究所(ESRI)开发的一款GIS软件,是国内GIS行业常用的软件,它对空间数据的支持较强,数据格式主要有Shape、Coverage、Geodatabase和E00。

CAD主要是DWG和DXF,幸好在MapGIS 软件的文件转换模块中,提供了对dxf、mif、E00、shape等文件的输入输出功能。实现了不同软件文件之间的交换。

GIS软件在组织数据的时候一般都是按点、线、面分类,这一点MAPGIS和arcGIS是一样的,所以我们在转换数据的时候要分别按点、线、面转换,对于“点”要素来讲,分“注释型”点和“图元型”点,前者从mapgis到arcgis本人觉得通过坐标点生成点,然后赋属性和采用“E00”方式 转换的结果比较满意,除了符号参数不一样以外,图形和属性都完整且定位准确。只是“E00”方式转换得到的Coverage格式里的anotation文件需转到Geodatebase里,变成Geodatebase的anotation才能编辑,后者则直接输入shape文件,但是如果属性字段中包含有中文,还需单独导出属性进行替换原先随shape导出的属性。“线”和“面”要素从mapgis到arcgis相比“点”来讲就简单多了,直接由mapgis“文件转换”模块导出shape文件,然后单独导出属性,进行替换,再进行拓扑修复(repair geometry)就ok了,。从arcgis到mapgis则是一种逆向的转换过程,转换也是在mapgis中的“文件转换”功能模块中完成。转换过来的数据也是图形和属性数据完整,定位准确但是符号,线型,内部填充参数不一致。导致出现这个问题是因为这个软件之间的线型库和颜色库编码不一致。转换后调出符号库进行相应的设置即可,或者在转换前分别就点、线、面编辑相应的代码对照表,这样这个问题就可解决。由于DBF格式文件中文字段只能为10个字即符5个汉字,所以在mapgis转入arcgsi过程中,属性字段过长需更改。下面是不同要素类型的转换对比:




线属性对比








面属性对比

CAD文件只要转换成mapgis和arcgis其中一种,就可以基于以上的方法转到另一种软件中,实现数据交换。下面就CAD转到mapgis为例,探讨转换方法。

CAD中的线型库和颜色库的编码和mapgis的也不一致,导致转换后颜色丢失和线型参数不一致的问题,有些图元是以块的形式组成的,转换后形成“张冠李戴”,有时两边无法对应,在mapgis中提供了符号对照表、线型对照表、颜色对照表、层对照表,一套对照表文件接口,很好地解决了这个问题。要使CAD到mapgis首先,将CAD的dwg格式,转化为cad的数据交换格式,在这个过程中不要对原图的块做爆破处理,但是有样条曲线的话最好对其进行爆破处理。其次将系统库目录设为,并将..slib目录下的符号对照表、线型对照表、颜色对照表、层对照表4个文件拷贝至系统库目录....suvslib下。然后用记事本对这4个进行编辑(mapgis编码在“数字测图”系统中查到,注意大小写),最后进入mapgis的“文件转换”模块,装入DXF,将CAD文件装到系统中,复位窗口便可查到转换后的结果文件图。现在可以使用SECTION等软件将CAD转换为MAPGIS,相对要简便的多。而arcgis里的“To CAD”工具可以实现gis到CAD。一般情况都是从CAD转入GIS。