谢玉红范莎张婧婧
(新疆地质矿产勘查开发局第九地质大队新疆乌鲁木齐830000)
摘要:由于目前GIS数据在不同软件之间交换以实现共享的需求,以地质勘查领域应用较多的MAPGIS与ARCGIS软件为对象,从建立开发环境、点文件转换、线文件转换及区文件转换和工程文件的生成等方面,运用VB编程语言对这两个GIS平台进行二次开发。通过MAPGIS提供的MAPGISSDK开发包调用相应的接口实现对MAPGIS图形数据文件的访问,通过ARCGIS提供的开发包ARCOBJECTS调用相应的接口实现数据向目标文件的写入和文件的生成。开发出可以实现MAPGIS到ARCGIS进行数据无损转换的工具,实现MAPGIS数据与ARCGIS之间的数据转换。
关键词:MAPGISARCGIS数据转换
随着MAPGIS技术的迅速发展和应用领域的不断拓展,应用部门普遍关注现有的与MAPGIS图的格式不同的地理信息资源的开发利用。例如,土地管理、测绘部门采集地图数据以MAPGIS为载体,而工程设计部门广泛采用ARCGIS作为图形数据处理和工程设计工具。因此,为充分利用现有地理信息资源,实现数据共享,必须实现MAPGIS与ARCGIS之间的数据交换,即图形转换。
MAPGIS是一个集图形、图像为一体的全汉字国产软件系统。它支持大型、超大型数据库,输入、编辑等功能相当方便。ARCGIS是一个全面的,可伸缩的GIS平台,为用户构建一个完善的GIS系统提供完整的解决方案。ARCGIS的基本体系能够让用户在任何需要的地方部署GIS功能和业务逻辑,无论是在桌面、服务器、网络还是在野外。本文的实施方案就是运用VB编程语言对这两个GIS平台进行二次开发,通过MAPGIS提供的MAPGISSDK开发包调用相应的接口实现对MAPGIS图形数据文件的访问,通过ARCGIS提供的开发包ARCOBJECTS调用相应的接口实现数据向目标文件的写入和文件的生成。开发出可以实现MAPGIS到ARCGIS进行数据无损转换的工具,实现ARCGIS平台对MAPGIS数据的有效读取。
MAPGIS平台提供两种数据格式:
一种是MAPGIS明码数据格式,这种格式访问方便,利用程序可以直读直取,但是由于此种文件不保存MAPGIS文件的属性信息,所以本设计中不加以使用;
第二种是MAPGIS自带的加密数据格式,即WT、wL、wP格式,这种格式保存了所有数据的内容,程序不能直接读取,但可以通过调用MAPGIS提供的开发包(SDK)实现对文件的访问。
本文在MAPGISSDK的基础上进行MAPGIS的WT、WL、WP文件内容的全部读取。包括:
①点文件的图形坐标、属性信息、渲染方式(子图号、注释内容、颜色等);
②线文件的图形坐标、线颜色、属性信息;
③区文件的边界组成坐标、区填充颜色、属性信息。
1软件开发环境的建立与数据格式的统一
MAPGIS和ARCGIS是由不同公司生产的两个GIS平台软件。本文需要运用VISUABASIC同时对这两个平台软件进行二次开发,因此,必须搭建好开发环境,以实现组件接口、函数的相互调用,进而完成开发过程。要完成MAPGIS数据格式向ARCGIS数据的无损转换必须要经过三个程序。首先,对MAPGIS和ARCGIS各自提供的数据格式进行了说明;然后,对于两种平台所提供数据格式的进行选择;最后,在前面分析的基础上,拿出所采用的数据格式。
2点、线、区文件转换
在转换过程当中点、线、区的操作步骤是一样的,在此我们且以点的操作流程来说明:点文件的转换,主要是运用VB编程语言对这两个GIS平台进行二次开发,实现对MAPGIS点文件信息的读取,然后依据这些信息生成相应的ARCGIS数据文件。点实体信息的转换是分为空间信息和属性信息这两大块内容分别进行转换的。而点实体的转换也按照点实体类型的不同被转换成了两种不同类型的ARCGIS文件。转换过程主要包括以下三个方面:
①通过MAPGIS提供的MAPGISSDK开发包调用相应的接口实现对MAPGIS点文件(*.wt)的访问,得到该文件所提供的相应实体要素的空间信息和属性信息;
②通过ARCGIS提供的开发包ARCOBJECTS调用相应的接口,依据获取的MAPGIS提供的空间信息和属性信息,生成ARCGIS目标文件。包括保存子图类要素的shapefile点文件和保存注记类要素的(*.lyr)图层文件。
③根据获取的空间信息中对图形要素进行渲染的信息,对生成的shaPefile文件和(*.lyr)图层文件进行渲染,并将结果保存为工程文件(*.mxd)。
对MAPGIS点文件空间信息的读取主要是运用VB编程语言,通过MAPGIS提供的MAPGISSDK开发包调用相应的接口实现对MAPGIS加密点文件(*.wt)的访问,得到该文件所提供的相应实体要素的空间信息。下一步就是MAPGIS数据向ARCGIS的转换,具体包括空间信息和属性信息这两个方面内容的转换。读取MAPGIS点文件属性信息后,运用VB编程语言,通过ARCOBJECTS开发平台,调用相关接口实现将获取的属性信息写入ARCGIS相应接口函数。
ARCGIS的数据与渲染样式是分开保存的,数据保存在Shapefile、coverage、geodatabase等格式的数据文件中,渲染样式保存在MXD工程文件中,点、线、区文件都是如此。因此,对渲染样式方面参数的写入主要是通过在相应的数据文件里添加扩展字段,用来存储这些渲染信息,然后运用这些渲染字段进行渲染,最后生成相应的工程文件。
3小结
随着“数字国土”工程在全国范围内的全面铺开及对已建成的数据库的更新与维护,原有的ARCGIS格式的地形图文件作为”数字王国“的主要数据源。研究ARCGIS格式文件转换成,MAPGIS格式文件具有十分重要的使用价值和经济价值。本文通过对此进行的研究,总结出ARCGIS格式文件与MAPGIS格式文件相互转换的一般步骤以及转换过程中的关键技术,通过对两种数据格式相互转换的研究,得到要实现两种不同数据格式的转换时。首先要了解两种数据的特点,联系和区别,因为只有了解了两者间的特点、联系和区别。才知道两种数据的对照关系;其次是找到能对两种数据文件的读写操作的方法。即找到从要转换的数据格式中读出数据。写入到需要的数据格式的方法,只有掌握了这些最基本的信息,才能找到又好又快的转换方法,最大限度地实现各种数据的共享。
4结语
通过对两种软件坐标系统定义方式、交换格式文件结构的分析,实现了不同坐标系统下的ARCGIS与MAPGIS间数据的相互转换,取得了较好的应用效果。笔者希望本文能起到抛砖引玉之效,对其他GIS软件系统间的数据交换提供思路。
参考文献:
[1]周顺平,王海龙.基于MAPGIS组件的二次开发.中国地质人学学报,2002.
[2]彭晶晶,戴爱德.MAPGIS数据向ARCG工S转换研究.《国土资源信息化》,2008.
作者简介:
谢玉红(1985-05-25),女,甘肃渭源人,毕业于中南大学,微机制图技术员,本科,研究方向:制图软件的开发及应用,作者单位:新疆地质矿产勘查开发局第九地质大队。