关键词:ODA软件;1∶10000地形图建库;数据
一、转换过程的分析
建库数据是指反映空间地理实体位置、属性、拓扑关系的数据,要素具有连续性;它将空间对象抽象成点、线、面三种基本几何类型。制图数据以图中的地图符号、注记、地图整饰传达地理信息。建库数据注重对地理实体空间性、特征性的反映,侧重于空间信息和属性信息,关注地理空间分析;制图数据强调地图表达和地图制图规范,图形数据呈碎化、不连续的形式,注重从形式上对地球表面的自然地理和社会人文各要素作形象、直观的描述。根据两者差异,建库数据向制图出版数据转换的过程包括符号化、属性内容的转化和地图表达的补充表示等。
1.1符号化
依据代表实体唯一性的空间数据编码进行符号化,实现地图图形显示,反映出实体的性质、位置、形状。
1.2属性内容的转化
建库数据除实体位置、形状、编码信息之外,其他地理信息均包含在属性内容中,可转为地图注记。如道路名称、居民地名称、河流名称等。
1.3地图表达的补充表示
其他补充的地图表达与具体的位置关系、语义,颜色有关,如注记的配置、同色符号的间断、不同色符号(注记)的压盖等,还包括重要的地图整饰内容。
二、程序设计
本程序基于国际开源设计联盟OpenDesignAlliance(ODA)发布的软件开发库Teigha3.0.3开发。完全独立于Autodesk公司开发的AutoCAD,不用再安装AutoCAD软件即可使用,具有很高的灵活性。
2.1转换流程
1∶10000DLG成果数据到制图成果数据的转换程序主要包括独立运行的可执行程序和基于ArcGIS的插件两部分。既可以直接打开可执行程序进行MDB成果数据的转换,也可以在ArcMap下通过插件注册的方式运行。
2.2ArcGISDesktop插件开发
ArcGISDesktop开发的重点在于理解ArcGIS插件架构的运行机制。
前述插件是指可以形成用户界面(UserInterface,UI)并能够与用户进行人机交互的组件,它们实现了ArcGIS应用框架体系的相关接口(如命令按钮(ICommand)、工具按钮(ITool),工具条(IToolBarDef)、菜单栏(IMenuDef)或浮动窗体(IDockableWindow)),可以为符合ArcGIS应用框架体系的其他应用程序提供一系列的GIS应用服务。插件式架构的核心在于主应用程序与插件对象的通讯,即:主应用程序如何识别插件对象,并与插件对象建立事件关联。这个过程包括下面几点:
1)主应用程序加载插件。主应用程序程序启动时,首先从插件中通过.NETFramework的反射机制加载对象信息,然后依据这些信息进行初始化工作。
2)插件的初始化。当主应用程序从根据加载的插件信息并在内存中生成插件对象后,根据插件对象产生各自的插件UI对象。以ICommand插件对象为例,主应用程序获得这个对象的Icon,ToolTip,Name,Category,Message和HelpFile等信息后,在主应用程序的UI层面上生成一个可以供交互的UICommand命令对象。
3)按钮(ICommand)插件和应用程序之间的通讯。对于主应用程序,首先通过创建按钮(ICommand)插件对象,通过初始化事件(例如OnCreat或者Connect这样的事件)的参数得到当前应用程序的Application等对象实例,并绑定按钮的click事件。对于应用程序的一些状态变化,可以通过定义事件,然后在插件代码中响应这些事件来完成。这样,主应用程序与插件对象之间的通讯桥梁便建立起来了。
主应用程序需要将插件对象的UI对象(如一个按钮)与插件对象之间的交互机制建立起来,可通过“事件机制”实现这一点。当用户在主应用程序界面上点击一个插件UI对象后,主应用程序将这个操作通过函数指针和回调函数调用正确的插件对象,以完成特定的操作。在COM机制中,通过绑定函数指针和回调函数的方式,主应用程序将知道当某个按钮按下时,需要调用哪一个对象的函数来实现该事件需要执行的功能。在.NETFramework中,事件关联被一种称为“委托”(Delegate)的机制来完成。
2.3转换配置表设计
根据相关规范性文档的要求,1∶10000基础地理信息地形要素整合升级DLG数据包含定位基础、水系、居民地及设施、交通、管线、境界与政区、地貌、植被与土质、注记九个大类的数据。除注记外,其他需要转换DWG符号化输出的八大类要素,均须按照地物类编码进行详细的参数配置。针对新的数据规范,对每一类要素建立转换对照表,设置颜色、线型、块名、线宽等属性,根据转换对照表制作各类的符号和线型,特殊的符号还需要编程写算法实现,从而实现对空间数据的制图符号化。下面以地形地貌要素和植被要素为例(包含点、线、面要素)说明转换配置表的设计,见表1。
图1中,左图为在ArcMap中符号化的1∶10000DLG成果数据,右图为通过本软件转换到AutoCAD数据后的效果图。可以看出,右图中半依比例尺房屋、围墙、公路、旱地、草地、行树均按图示规范实现了符号化表达,公路上标注的道路编码、技术等级的注记,已自动与公路符号断开。
通过作业试验,该程序实现DWG符号化输出具有以下优势:
1)使用ArcMap转换DWG符号化输出可方便地把基础地理信息数据库中的GIS数据转换成符合制图要求的DWG文件格式的数据,处理过程中不需要人工干预,自动完成数据的处理和生成,减轻了数据处理人员的工作量,提高了数据符号化出图的规范性和效率。
2)使用DWG符号化输出工具软件可以避免传统DWG符号化过程中由于人为疏忽造成的符号化出图数据与原始DLG数据不一致的错误。
结语
本文结合当前传统地形图、制图数据的需求,提出一种基于ODA(OpenDesignAlliance)的软件开发库Teigha,实现1∶10000DLG成果数据(MDB格式)到制图数据(DWG格式)的转换工具插件,达到直接转换出制图数据的目的。该方法自动化程度高,基本符合出图要求,操作方便,提高了生产效率,可规模化、规范化作业,尤其对测绘资料分发部门来说,能够极大地提高数据分发和服务能力。
参考文献
[1]吴信才.地理信息系统原理与方法[M].北京:电子工业出版社,2002.
[2]郭庆胜,任晓燕.智能化地理信息处理[M].武汉:武汉大学出版社,2003.
论文作者:段玉晶1,刘志超2,王睿2
论文发表刊物:《防护工程》2018年第1期
论文发表时间:2018/5/17
标签:数据论文; 插件论文; 符号化论文; 对象论文; 应用程序论文; 地图论文; 要素论文; 《防护工程》2018年第1期论文;