VBA在实现MapMatrix航测数据向CASS转换中的应用
2012-09-22黄太山
黄太山
(福建省国土测绘院,福建厦门 361012)
1 概述
随着计算机与遥感技术及其应用的发展,利用航空摄影测量方法进行大比例尺测图,在铁路、公路、电力等线路的选线测量、地质矿区建设测量、城市规划建设测量以及地籍测量中得到了广泛应用[1]。如何将航测地形图最有效地转换至常用地形测绘软件,为用户提供可读性强的数据,是测绘行业中的一个难题。本文通过以武汉航天远景测绘软件MapMatrix为例,通过研究其数据格式,利用Excel中简单的VBA编程,实现其数据有效的转换至南方测绘软件CASS格式。
2 VBA简介
VBA(Visual Basic for Application)是微软开发的、在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言[2]。VBA最大特点和最大优点是利用面向对象(oop)的ActiveXAutomation技术,使语言的引擎在技术上与开发环境分离。它的功能在很大程度上依赖于它的客户显露的Automation接口。同时,由于VBA是基于ActiveXAutomation技术,它可以使用任何Automation技术的应用程序共同工作[3]。
3 实现转换
3.1 转换方法
MapMatrix测制的图形文件格式为*.xml,为了能够更好地研究其数据组织的格式,以一个一般矩形房屋为基本单元列出其数据形式,从表1中可以看出MapMatrix中的各类几何要素是按照“<Feature>…</Feature>”的形式表示各要素的,每个要素的地物名称、坐标点分别以FID、VERTEXES标签进行识别,必须保留这两个关键标签。

MapMatrix 表1
熟悉南方CASS的读者都知道,CASS可以通过简码识别功能,调用*.dat文件实现地形图的自动展绘。格式如表2所示。

CASS 表2
表1中第三行中的一般房屋与表2中第一行的202分别代表两种软件下的地物名称和对应代码。……
