首页软件基础教程ArcGIS【ArcGIS小操作】90...

【ArcGIS小操作】90.根据cad文字标注提取建筑信息

系列配套练习数据下载链接:

链接:https://pan.baidu.com/s/1y3t92SLVNToxWCPSMnpblA?pwd=mnsj 提取码:mnsj
链接会经常失效,如有需要请尽快下载,如若失效,我也会在最新发布文章中更新下载链接。




  • 加载数据:
加载cad文件中的【Annotation】和【Polygon】两个图层。
本次将根据cad中的文字标注内容提取建筑结构、层数、质量等信息。

  • 空间连接:
打开【系统工具箱→Analysis Tools→叠加分析→空间连接】工具,进行相应设置,本次均采用默认设置即可。

设置完成点击确定,得到结果,可以看到输出图层【建筑_带属性】的属性表中的【Text】字段即cad中的文字标记内容。

  • 添加字段:
打开建筑_带属性】属性表,依次添加【结构】、【层数】、【质量】三个字段。

  • 字段计算:
在属性表中,在【结构】字段处右击,选择【字段计算器】,在对话框中输入以下代码:
!Text![:1]

即提取【Text】字段的第一个文字内容。

【层数字段处右击,选择【字段计算器】,在对话框中的【预逻辑脚本代码】框中输入以下代码:
def floor(x):    if len(x)>1:        return int(x[1:])    else:        return 1
代码块2:
floor( !Text! )
即,如果【Text】字段长度大于1,就选择字段的第1个字后的文字作为层数,否则就赋值为1。

【质量字段处右击,选择【字段计算器】,在对话框中的【预逻辑脚本代码】框中输入以下代码:
def quality(x,y):    if x==u'混' and y>1:        return '质量较好'    elif x==u'砖':        return '质量一般'    else:        return '质量较差'
代码块2:
quality( !结构! , !层数! )
即,通过结构和层数进行一个简单判断,如果结构为“混”并且层数大于1,质量设定为“质量较好”,如果结构为“砖”,质量设定为“质量一般”,其余设置为“质量较差”。

设置完成后,查看图层属性表,可以看到三个字段的内容:

下一步可以根据字段内容进行可视化显示,再次就不做过多介绍了。

————————————————-

《ArcGIS小操作》系列内容目录(持续更新):

……

79.使用ModelBuilder创建自己的工具
80.栅格数据的拼接
81.矢量数据的拼接
82.栅格清理
83.栅格数据矢量化(全自动)
84.栅格数据矢量化(半自动)
85.属性传递
86.ArcGIS与CAD数据的相互转换
87.绘制坐标格网
88.空间连接
89.空间校正

本篇文章来源于微信公众号: 码农设计师

RELATED ARTICLES

欢迎留下您的宝贵建议

Please enter your comment!
Please enter your name here

- Advertisment -

Most Popular

Recent Comments