南方CASS格式DWG的读取

原文发布时间:2010-11-19

作者:跑

QQ:44295133

GIS数据来源有很大一部分是AutoCAD传统制图格式,而在某些行业比较普及的软件——南方CASS又占据相当的数量。因此,如何读取它值得探讨。

 

(一)  引言

首先我们了解一下南方CASS特点。它实际是通过对AutoCAD二次开发,将图形属性存放在相应要素的扩展数据(XDATA)中,这部分内容可由命令XDLIST查看。

如果你已经安装并已注册CASS,在图形界面将光标放置在要素上,它会显示如下信息:



而将数据输出至FME Universal Viewer查看属性,如下:



由此,我们可以不难发现,autocad_extended_data{0}.string{0}字段就是我们关注的要素代码。值得注意的是,autocad_这一前缀是FME添加的,Viewer直接打开数据时默认不显示它。

此外,根据对象的不同,它所附加的扩展信息量也不尽相同。如宗地、图斑、房屋等等,这里不作更详细阐述。但可以明确的是,它们都是按一定规律被组织起来的。


(一)  问题

然而,事实上由于图形生产人员水平及作业习惯的不同,或者各地方要求、规范不一致,导致数据特别是扩展信息的存放位置是“浮动”的。



3、图4比较可以看出,对于应用名为‘SOUTH’所对应的要素代码autocad_extended_data{*}.string{0}这个顺序号分别是01。这是由于通过XDATA命令追加扩展信息,重复执行的不同顺序决定的。

那么,如何获取指定应用名下的信息内容呢?这里用到了表操作类的ListSearcher + ListIndexer,即通过搜索属性表中指定应用名(此处为SOUTH)所在位置,进而将它索引出来。当然,假定我以将所需字段手工暴露。如图




这样,就得到了我们所需要的字段值。

 

(一)  小结

针对CASS数据,我们利用FME可以综合解决许多图形、属性问题,前提是在对数据进行充分分析的基础之上。而本文所阐述的内容,是本人在使用过程中的一点心得,或许是被你忽视的一个细节。









猜你喜欢

转载自blog.csdn.net/fmechina/article/details/80698870
dwg