前段时间在做项目的时候,在技术上遇到些困难,每天苦思冥想,查阅大量资料,终不得解,后经老师指教,问题总算解决。但是经过这件事情后我想其实这些困难不算是大困难,只是我们学习的面太狭窄了,知识不成体系,没有多少解决思路,容易走进死胡同,才导致这样困窘的局面。
在查阅资料的过程中,我发现作为国产地理信息软件的MapGIS对于国外ArcGIS来讲有其自己的优点,毕竟这个软件是国人编写的,符合国人的应用习惯和集成某些常用制图标准,比如在制作土地利用规划图框时,在MapGIS的“实用服务”模块下的“投影变换”系统中的“系列标准图框”就可以直接生成不同比例尺的图框,如下图:
而ArcGIS就没有这个功能,需一点一点的做,很费力,但是MapGIS的空间分析功能和ArcGIS相比就逊色多了。因此,我就萌发了结合多个软件来做项目念头,充分利用不同软件的优势,但是软件的格式各异,MapGIS 的标准数据格式主要有点( wt)、线(wl)、面(wp)3 种类型,软件本身提供的数据交换格式有点(wat)、线(wa1)、面(wap),它们都是ASCII 码的明码文件。
ArcGIS 是美国环境系统研究所(ESRI)开发的一款GIS 软件,是国内GIS 行业常用的软件,它对空间数据的支持较强,数据格式主要有Shape、Coverage、Geodatabase 和E00。CAD主要是DWG,幸好在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文件装到系统中,复位窗口便可查到转换后的结果文件图。而arcgis里的“To CAD”工具可以实现gis到CAD。一般情况都是从CAD转入GIS。
经过上述的转换方法,我们便可以在CAD、MAPGIS、ARCGIS之间共享数据文件。目前GIS技术已在土地规划、管理,城市规划、经济、交通、资源、军事、灾害等领域广泛应用,如何更好地实现数据共享将是很关键的问题,希望Open GIS的到来能更好地解决这一问题。从旅游管理的酒店管理到人文地理学的区域发展与城市规划,这一路走来,渐渐的喜欢上了用“图”表达这种方式,下一步除了继续学习GIS操作技能和专业理论知识外,将学习,探讨和建立模型,把经典的区域经济分析方法、土地评价、规划等方法集成到GIS中实现,学习VC++,开始“虚拟现实”之旅。
ESRI公司总裁Jack先生曾说过:“GIS只与一件事有关,那就是想象力”。我在想GIS能不能让煮饭智能化?学校食堂的饭菜通常不尽人意,如果能开发一套GIS煮饭技术,应用到学校食堂,让广大学生能享受可口的饭菜,这是多么好的事啊! 呵呵……..当然我没有这个想象力,还望能有高人出现,让GIS煮饭技术应用学校食堂,走进寻常百姓家,呵呵,我也可以吃上好吃的饭菜。