APP下载

AutoCAD地形图数据规整入库的研究与应用

2013-12-11袁源琳张新长黄健锋郭泰圣

测绘通报 2013年5期
关键词:规整图层实体

袁源琳,张新长,黄健锋,郭泰圣

(中山大学地理科学与规划学院,广东广州510275)

一、引 言

AutoCAD具有强大的绘图功能,在测绘地理信息部门的制图系统中,大多是利用AutoCAD作为软件的开发平台。目前,我国大多数城市的地形图数据以AutoCAD的数据格式(*.dwg)存储。为充分利用已有的数据资源,必须有一个切实可行的处理方法,将已有的AutoCAD数字地形图数据转换为适用的GIS数据,以便更高效地建立城市基础地理信息数据库[1]。张叶[2]提出基于 Geoway 实现 CAD 数据到GIS数据的转换,鉴于AutoCAD地形图数据不规范(如编码不规范、地物拓扑关系错误等),转换结果不理想。由于生产模式和数据规范不断完善[3],导致数据标准不一致,同时由于内业制图不严谨,需要对数据进行统一整理与加工。本文研究如何将AutoCAD地形图数据进行规范整理并转换到GIS空间数据库中去。

二、AutoCAD地形图规整

1.地形图数据标准规范

由于现有数据往往是不同时期采集的,人工操作多,数据输入操作不严谨[4],一般存在以下质量问题:①地物编码问题(包括缺编码、非法编码、编码与符号线型不一致);②地形图分层不规范,甚至含垃圾图层;③编辑操作中地物要素分错层,或有不明地物;④拓扑错误(如面状地物不封闭、线线非法交叉等);⑤地物描述问题(包括图层及地物颜色不规范、点状地物符号错误、块名称与编码不一致等)。因此,AutoCAD地形图规范整理内容主要有地物编码分类、分层,编码属性检查,空间拓扑关系检查等。

本文的地形图数据规范要求参考《东莞市1∶500、1∶1000、1∶2000 矢量地形图数据标准》,主要有图层分层设色标准、不同类别地物属性表、块文件符号表、地形图要素信息及编码对照表等。其中,地形图要素信息及编码对照表是标准规范的核心,其内容主要包括地物类型、CAD编码、GIS编码、CASS编码、CAD图层、GIS图层、GIS图层几何类型、块文件的参考名、线宽、线型、注记字高等相关信息,见表1。

表1 地形图要素信息及编码对照表(部分地物)

其中,每个地物的CAD编码、GIS编码、CAD图层、GIS图层、几何类型都不可缺少,这些属性关系到地物的分类以及在CAD和GIS库中的分层。CAD中点状地物由默认点或块参照表示,用块参照表示的需要其参考名信息;线状地物含有对应的线型、线宽信息;面状地物轮廓线一般也有线型信息;注记类地物含有字高信息。

2.AutoCAD中实体属性数据的存储

AutoCAD2000以后的版本提供4种表述图形属性数据的方式:块属性数据、扩展图元数据、扩展词典和图形词典[5]。考虑到后期编程开发将数据导入GIS中更便捷,本文采用扩展词典进行存储,将实体的属性存储在其对应的扩展记录中,其存储结构如图1所示。

图形实体Entity创建扩展字典;再在扩展字典中创建自定义字典,命名为“DXTD”;然后在该自定义字典下新建扩展记录Xrecord,以图形的字段名进行命名,扩展记录的Data属性存储该字段的属性值。要存储信息包括实体的GIS编码及其他属性字段,如房屋类地物一般包括房屋面积、房屋楼层等信息。

图1 AutoCAD中Entity的属性存储结构

3.AutoCAD地形图规整流程及关键技术

为了提高地形图数据的转换效率与质量,需先对地形图数据进行规范整理,只有符合技术规程及相关作业标准的数据才能正确进行入库操作[6]。AutoCAD地形图规整步骤主要包括地物编码、编码检查、拓扑检查与编辑、属性编辑等,其规整流程如图2所示。

图2 AutoCAD地形图规整流程

(1)编码赋值

对地形要素赋编码是将要素的地理要素编码赋予要素的属性项中,以便唯一地标识地理要素和进行空间分析[7]。本文通过存储地形要素的GIS编码来进行标识。要素的手动编码赋值是一项工作量很大的工作,因此宜采用程序进行自动赋值。

通过对实测地形图的调查研究发现,不少数字地形图由CASS软件编辑而成。由CASS软件编辑的图形一般存储有CASS编码及编码意义,一部分图形对应的CAD代码值存储在该图形的厚度属性中。因此,将所有待规整的图形分为两类:含编码图形和无编码图形。针对这两类图形,本文分别设计了相应的地物编码自动转换方法。

含CASS编码的图形,读取CASS编码,通过地形图要素信息及编码对照表查找到对应的GIS编码,完成编码转换与存储;含厚度值的图形,读取厚度值(即CAD编码),通过地形图要素信息及编码对照表查找到对应的GIS编码,完成编码转换与存储。

无编码的图形通过目视判读及图形筛选赋值的方式完成地物编码赋值。智能筛选是通过图形类型、图层、线型、线宽、注记内容等条件将同一类的地物筛选出来,进行多图形集体赋值。对于地物类型数量较少的地物采用直接目视判读的方法,通过手动选择图形进行赋值。

(2)编码检查与图形查错

完成地物编码流程后,需要对编码进行检查,直到修改无误为止。检查的内容包括:①实体是否缺编码;②实体存储编码是否规范合法(在地物编码表中);③编码对应的几何类型与实体类型是否冲突,如若某个DBText类型的实体被赋予了点、线、面类型的编码则会产生冲突;④BlockReference类型的实体其块名称和编码是否一致;⑤面要素是否闭合(这是以编码查图形,如果编码对应的是面状要素,需进行构面);⑥图形类型是否支持转换,因为后续的转换暂时只支持BlockReference、DBPoint、Polyline、Polyline2d、Arc、Spline、Line、Circle、DBtext等基本图形,因此不符合类型的实体需修改。

(3)拓扑检查与编辑

张叶[6]、谢祖明[8]是基于 Geoway 软件进行拓扑检查;王蔚[9]、邵华[10]等是将拓扑检查放在入库后。由于GIS软件对于图形的编辑功能不如Auto-CAD,因此本文在AutoCAD环境下基于ArcGIS Engine对图形建立拓扑规则,然后将涉及拓扑错误的图形在AutoCAD中列出来,利用AutoCAD的编辑功能修改拓扑错误。拓扑查错包括面重叠、线重叠、线相交、线自相交检查。

三、CAD数据与GIS数据的转换

1.转换流程

在完成AutoCAD数据的规整之后,即要进行AutoCAD数据与GIS数据的转换,以建立GIS空间数据库。进行CAD数据与GIS数据的转换,不仅要了解两种数据文件的转换,还要了解两者数据概念与内容的转换。在剖析了二者数据模型的基础上,采用直接转换的方式,将AutoCAD地形图数据转换为ArcGIS(*.mdb格式)的标准GIS空间数据,其转换流程如图3所示,步骤如下:

1)建立规范的GIS空间数据库,根据GIS数据库中的分层要求,建立各个专题的点、线、面、注记图层,并根据图层的属性要求添加相应的属性字段。

2)将标准AutoCAD地形图中的所有实体依据存储的编码按照GIS分层要求进行分类,然后按类别对实体逐类进行转换,并存储到对应的GIS图层中,直至全部类别实体转换完成。在转换过程中,根据该类实体所要转为GIS中的不同几何类型图层,选用相应的点、线、面、注记转换模型进行转换,转换内容包括地物实体的图形信息及属性信息。

2.转换模型说明

(1)图形转换

CAD中常见的用于描述地物的实体类型有Block Reference、DBPoint、Polyline、Polyline2d、Arc、Spline、Line、Circle、DBtext等,地物一般以专题内容进行分层;而在GIS中是按照几何类型进行分层的,一般有 Point、Line、Polygon、Annotation 几种类型的图层。在CAD图形中,Block Reference、DBPoint等类型的图形实体在GIS中用Point类型来表示,需要根据图形的编码信息通过点转换模型转到相应的点图层中;DBText类型的图形实体在GIS中用Annotation类型来表示,需要根据图形的编码信息通过注记转换模型转到相应的注记图层中;Polyline、Polyline2d、Arc、Spline、Line、Circle 等类型的图形实体在CAD中既可以表示线也可以表示面,应根据其编码进行判断,表示线实体的通过线转换模型转到对应的线图层中,表示面实体的通过面转换模型转到对应的面图层中。

点转换模型较为简单,对于 Block Reference、DBPoint类型的实体,通过读取坐标信息,在GIS中基于X、Y坐标信息进行构点,然后通过Geomery进行转换。

图3 CAD数据转换为GIS数据流程图

线转换模型涉及的图形类型较多,其基本原理是读取图形的各个节点信息,然后以点构线。有的类型较简单(如Line),通过读取起点和终点坐标即可直接构线;有的类型相对复杂(如Arc),需要通过读取起点和终点坐标、Arc的起始角度及总角度、弧长等信息构弧上的点,然后进行构线。

面转换模型主要涉及Polyline、Polyline2d、Circle 3种类型的实体,其基本原理是通过读取图形的节点等相关信息,进行构线及构面。如对于Circle类型,通过读取圆心的坐标及半径信息,在GIS中通过圆进行构面。

注记转换模型主要涉及DBtext类型实体,其基本原理是通过读取文字的坐标及内容,在GIS库中的Annotation图层中进行重绘。

(2)属性转换

在规整中,图形的属性信息存储在其扩展字典下自定义字典的扩展属性中,在转换过程中,先通过CAD读取存储在实体中的属性信息,然后通过属性字段进行匹配,最后将属性值写入到GIS中Feature对象的对应属性中。

四、规整入库应用实例

为验证本文的研究思路和方法,在Windows环境下,以Microsoft Visual Studio 2008为开发工具,基于 C# 和 AutoCAD 2008、ArcGIS Engine 9.3 平台开发了AutoCAD地形图数据规整入库系统。不仅实现了对初始AutoCAD地形图的规范整理,即地形图要素分类编码、拓扑检查与修正、属性编辑等功能,同时实现了AutoCAD数据与GIS数据之间的异构同化。

本文以1∶1000地形图实测数据进行测试,数据包括 Polyline2d(4)、Line(405)、Arc(2)、Polyline(1765)、DBPoint(7)、Circle(1)、DBtext(754)、BlockReference(964)等共计3992个图形要素,并通过系统对该数据进行规整,然后转入GIS数据库中。初始的AutoCAD数据与GIS数据符号化之后的对比如图4所示。

五、结束语

本文提出了AutoCAD地形图数据的规整要求与步骤,设计了一套规整方法,在地物编码方面,提供了一些自动化编码赋值工具,并在AutoCAD环境下实现了拓扑检查;在剖析了AutoCAD地形图模型与GIS数据模型的数据结构的基础上,设计了Auto-CAD数据模型直接无缝转换为GIS数据模型的方法;最后通过自主开发的AutoCAD地形图规整入库系统,以1∶1000地形图数据进行实例了验证。试验证明,通过本系统能够有效地对CAD地形图进行规范整理,并转入GIS空间数据库。系统已经在东莞市城乡规划局投入使用,本研究具有较高的推广应用价值。

图4 实例转换对比图

虽然本文提出的AutoCAD地形图规整入库方法有较好的应用效果,但由于AutoCAD数据图形复杂,地形图数据错误种类多样,一些新的质量控制工具有待增加;鉴于转换模型中考虑的CAD图形类型有限,为不在转换模型中将图形类型遗漏,还需要进一步优化;转换模型目前仍借助ArcGIS Engine,将转换模型封装成独立模块是下一步的工作任务。

[1]陈能,施蓓琦.AutoCAD地形图数据转换为GIS空间数据的技术研究与应用[J].测绘通报,2005(8):11-14,34.

[2]张叶,孙毅中,陈年松.CAD城市基础数据到GIS数据转换的有关问题探讨[J].测绘与空间地理信息,2007,30(1):94-97.

[3]赵建辉,薛萍.1∶10 000基础地理信息数据库建库数据加工整理模式的探讨[J].测绘标准化,2011(5):42-43.

[4]丁建勋,程效军,石如文,等.浅谈珠海市基础空间数据检查与建库预处理[J].地理空间信息,2005(2):30-32,35.

[5]刘德儿,闾国年,兰小机,等.城市基础地理数据库更新机制研究[J].大地测量与地球动力学,2010(1):155-159.

[6]刘志辉,肖海威,梁子震.浅析城市信息化地形图的入库数据质量检查[J].城市勘探,2012(5):53-56.

[7]施一军.数字地形图向GIS数据转换处理方法的探讨[J].江苏测绘,2000,23(4):44-46.

[8]谢祖明.基于CAD数据生产ArcGIS制图数据的研究与应用[J].测绘与空间地理信息,2012,35(8):121-123,126.

[9]王蔚,陈明锐.AutoCAD数据向GIS空间数据转换机制的研究[J].热带农业科学,2010,30(11):48-52.

[10]邵华,王建力,杨圆鉴.基于 ArcInfo的CAD数据到GIS数据转换初探[J].科学技术与工程,2009,9(10):2778-2780,2785.

[11]周勇前.GIS与CAD数据交换[J].武测科技,1996(3):16-18.

猜你喜欢

规整图层实体
“教学做合一”在生成课程背景下构建区角游戏开展
前海自贸区:金融服务实体
300kt/a硫酸系统规整填料使用情况简介
巧用混合图层 制作抽象动感森林
实体的可感部分与实体——兼论亚里士多德分析实体的两种模式
两会进行时:紧扣实体经济“钉钉子”
振兴实体经济地方如何“钉钉子”
提高日用玻璃陶瓷规整度和表面光滑度的处理方法
电梯的建筑化艺术探索
图层法在地理区域图读图中的应用