灌区工程CAD布置图转ArcGIS方法探讨

发表时间:2020/8/12   来源:《城镇建设》2020年第12期   作者:邵奇 张金利 闫冬
[导读] 文章结合SJLT灌区工程CAD布置图转ArcGIS入库工作

         摘  要:文章结合SJLT灌区工程CAD布置图转ArcGIS入库工作,探寻一种快捷高效的方法,通过利用AutoLisp语言编写的CAD二次开发小程序,有针对性获取图形信息,按照属性归类,合理生成字段,极大缩短了ArcGIS编辑归类时间,顺利实现了工程线路入库工作。
         关键词:图层属性 字段 图元 Python

0 引言
         由Autodesk开发的AutoCAD作为广泛应用在水利行业计算机设计辅助软件,其操作简单,容易上手且可扩展性强,已经成为设计行业最为重要的行业软件之一,用户规模庞大且涉及行业广。Auto Lisp语言是由Autodesk公司开发的一种LISP语言程序。通过AutoLISP编程,可以节省开发人员的很多时间。AutoLISP语言作为AutoCAD内部的具有智能特点的编程语言,是开发应用AutoCAD不可缺少的工具。
         地理信息系统(GIS)是一种特定的十分重要的空间信息系统。它是在计算机软硬件系统支持下,对整个或部分地球表层(包括大气层)空间中的有关地理分布数据进行采集\储存\管理\运算\分析\显示和描述的技术系统。
         ArcGIS是由ESRI出品的一个地理信息系统系列软件的总称。用户可用其收集\组织\管理\分析\交流和发布地理信息。作为世界领先的地理信息系统(GIS)构建和应用平台,ArcGIS可供全世界的人们将地理知识应用到政府\企业\科技\教育和媒体领域。ArcGIS可以发布地理信息,以便所有人都可以访问使用。ArcGIS中可以使用VB\Python\SQL语言进行数据库编辑及二次开发。免费开源的Python逐渐成为开发的主流语言,其含有简单\明确等特性。
         由于国家对于空间地理信息数据愈发重视,使得项目成果需要入库管理。当前大量的成果以CAD图形文件的形式保存,对于将其入库的工作也更加的重要。快速处理数据的方法和合理的方案能够减少处理时间和提高工作效率。
1 工程概况
         我省SJLT灌区CAD工程布置图需要转换为ArcGIS格式,所涉灌区几十个。要求灌区边界、渠(沟)道、建筑物等特征点线在ArcGIS下编辑形成标准格式的入库字段,内业转换工作量与劳动强度都很大。CAD在设计单位应用了三十多年,经验成熟,积累了大量开发经验,如何利用这个优势完成转换工作呢。我们结合ArcGIS格式对线性要素、点要素的字段要求,在CAD平台下利用AutoLisp语言编写了转换程序,实现字段自动整合,转存到ArcGIS环境中后再按需归类,取得了理想效果。
2 ArcGIS对灌区数据库要素格式的要求
         渠(沟)道图层属性表中分为5个字段:灌区名称GQMC、渠(沟)道名称GHMC、渠(沟)道功能特性(灌溉、排水、灌排)GHXZ、建设性质(新建、利用、排水)JSXZ、渠(沟)道规模GHGM。
         建筑物图层属性表中分为6个字段:灌区名称GQMC、建筑物名称JZWMC、所在渠(沟)道名称SZGQMC、建筑物类型JZWLX、建设性质JSXZ、灌区进出口建筑物GQJCKJZW。
3 CAD工程布置图现有信息利用
         设计人员在CAD工程布置图中前期已经做了大量基础工作,信息量丰富,层次清晰、线性明了、注记详实,如果能利用好这些信息资源,将大大提高转换入库效率。


首先认真分析了CAD点线的图层构成特点,通过编写的AutoLisp小程序,选择一条沟渠pline线获取图元,从图元数据集中分解到图层名称tuceng$、建设性质GHXZnum,分解线路名称,获得沟渠性质GHXZg,具体语句如下:
           (setq tuceng$ (cdr (assoc 8 (entget (car pline$)))))
           (setq GHXZnum (vl-string-search "灌排" tuceng$))
           (setq GHXZg (vl-string-search "沟" tucengName$)) 
           (setq GHXZp (vl-string-search "排" tucengName$))
         将上述变量用下划线分个形成每个沟渠的新图层名:
           (setq tucengNew$ (strcat tucengNum$ "_" (rtos LenPline 2 3) "_" GHXZ$ "_" jsxz$ "_" GDGM$))
    按照这一思路,只需对要转换的实体点击操作,不用关注无关内容,用时少,思路清晰,完成编辑工作,就可进行下一步工作。
4 ArcMap平台中编辑工作
         灌区CAD工程布置图的点、线要素转存到ArcMap,利用ArcMap的自带程序分解CAD图,将下划线组成的图层名分解自动形成到ArcGIS要素的属性表格,通过智能判断,编辑效率提高数倍,作业员劳动强度降低了,达到了事倍功半的目的。
         在ArcMap中,默认将CAD的图形文件识别为点、线、面、体、文字五种类型。此次工作中需使用线类型进行编辑操作。在将线加载到ArcMap中后,打开其属性表可以获得Layer字段,利用在CAD中合成图层名称,使用Python语句!Layer!.split(“_”,)[x]进行分解,根据字段名称确定X的值,其中JZWD(建筑物点)中:JZWMC字段 x=0;SZGQMC字段 x=1;JZWLX字段 x=2;GQJCKJZW字段 x=3。GHL(沟渠线)中:GHMC字段x=0;GHXZ 字段 x=2;JSXZ  字段 x=3;GHGM字段 x=4。最后整理属性表,删除多余字段。
         Python语句简单明了易于上手学习,处理数据快且应用广泛。
5 结束语
         应用CAD二次开发的小软件,十几个灌区,只需少数人几天即可完成转换工作,而且降低了作业员的劳动强度,效果显著,易于操作,普及使用,自动识别程度高,不需要删除CAD布置图上的其它实体。
         前期CAD工程布置图中,线性之间拓扑关系要符合要求,工程命名规范,会极大提高转换效率。
        
参考文献:
[1] 闫 磊 《ArcGIS从0到1》北京航空航天大学出版社2019年7月
[2] 郭秀娟等 《AutoLISP语言程序设计》化工工业出版社 2015年1月
[3] 孙江宏等 《VisualISPR14~2000编程与应用》科学出版社 1999年10月



[作者简介] 邵奇(1995-),男,黑龙江佳木斯人,佳木斯市水利勘测设计研究院 助理工程师。
张金利(1966-),男,黑龙江方正县人,教授级高级工程师,注册测绘师。
闫冬(1979-),男,黑龙江富锦人,高级高级工程师。
投稿 打印文章 转寄朋友 留言编辑 收藏文章
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: