• 扫一扫,访问微社区

    QQ登录

    只需一步,快速开始

    查看: 15850|回复: 76

    AC小技巧——提取CAD高程点自动生成地形

      [复制链接]
    发表于 2013-4-12 14:48:28 | 显示全部楼层 |阅读模式
    ArchiCAD在2011年的14版中加入了一个“通过测量数据放置网面”的功能,用于自动根据高程数据生成基地地形。

    但是由于我们一般是拿不到做好的高程TXT数据文件的,一般我们只能拿到一张标示了高程点的和高程数据的dwg文件,所以我们就需要通过一个手段,把这些高程点的数据提取出来,用来生成基地模型。

    这里我们不需要专业GIS软件,只是使用autocad的“数据提取功能就可以很轻松的提取到我们所需要的数据。

    下面我以一个例子说明

    首先我们看到的是一张写满数据的dwg图,红色的就是高程点了




    相信大家对这个都不陌生,一般我们要先看一下这些高程点的属性


    可以看到这个高程点是一个带属性的块,再看看其他的,一般高程点的块名称是相同的,记住这个名字。
    PS:如果不是块,而是一个点,也没关系,看看点的属性里的Z值跟旁边的文字写的高度是不是一致,一般标准的图应该是一样的,如果连点都没有,只有一个文字,那也没关系,继续往后看,我会告诉你怎么提取,这一步主要的目的就是搞清楚这个高程到底是什么,但是无论它是什么,我们都是可以提取到的,只不过提取规则不同。

    然后我们点开工具——数据提取


    可以看到下面的一个对话框



    这里我们常见一个数据提取,点下一步


    会让你取一个名字,这个名字可以随意,放在哪也无所谓,这个文件只是一个记录提取规则的文件,不是我们最后要用的。
    点保存之后就会看到下面的对话框



    这里你可以选是提取整个图形的,还是只是选择部分的,这个看你的需要来选择。
    PS:如果你的DWG图,高程点是在独立的图层的,或者你可以清理到图上只剩下高程点,这里就用只提取选择对象的。
    继续下一步



    这一步会让我们筛选我们需要提取数据的对象,之前我们已经看过所有的高程点都是块G200,所以这里我们只选择提取G200这个块的属性。
    PS: 如果你的高程点,没有Z属性,只是文字,那提取的时候就选择只提取文字的值和文字的x y坐标,同样也是高程点
    然后继续下一步


    这里可以看到这个对象所包含的所有特性,我们只需要他的”几何图形“属性里的X Y Z 值,设置好如下图所示


    然后继续下一步,就可以看到已经提取出来的数据,这里我们把不需要的标题行之类的都关掉,只需要保留3列数值。然后下一步


    这一步我们就需要把已经提取出来的数据输出到excel,当然也可以直接输出到txt文件,但是一般我建议先输出到excel,因为在excel里可以进一步的处理一下,删除一些可能存在的错误数据。






    再点下一步,autocad里的工作就完成了,我们会得到一个excel文件。



    打开这个文件


    可以看到三列数据,分别是x y z轴的数值,这里可能会有一些错误的点,这个可以自己判断一下,删掉错误的值,把第一行的标题也删掉。



    然后导出另存为,制表符分隔的文本文件





    这样我们就已经得到所需要的高程点数据了,可以到ArchiCAD用来生成网面了。

    在ArchiCAD里,设计——通过测量数据放置网面



    选择刚才生成的TXT文件



    出现设置对话框



    这里选择单位,看你的dwg图的单位来确定,然后放置为宜一般选择初始位置,也就是根据真是坐标来生成,一般会距离原点比较远,所以可以选择上缩放到新网面,这样放置之后,窗口就自动缩放到新网面的位置了。

    点确定,然后就看地形复杂程度和机器配置了,一般很快就可以看到生成的地形,





    这里平面显示会比较乱,我们可以在网面设置里设置一下



    显示用户脊线和平滑所有脊一般都是要选的。



    这样平面就很干净了,方便我们画图,如果最后表达的时候需要,还可以再调回来,但是鉴于是在太乱,一般会用生成的地形切割出等高线来表达。


    到这里,提取CAD高程点自动生成地形就完成了


    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?加入BIM Studio

    x

    评分

    参与人数 4经验 +15 金钱 +40 贡献 +1 收起 理由
    junde6076 + 5 很给力!
    jerrywz + 5 这个蛮有用的 楼主的方法清晰 配图很好 很.
    adidas023 + 5 + 20 + 1 神马都是浮云
    无忧 + 10 + 10 很给力!

    查看全部评分

    发表于 2013-5-30 15:25:47 | 显示全部楼层
    王远华 发表于 2013-5-21 17:22
    太棒了,感谢楼主能不能提取等高线的数据,试啦了一下没有成功!觉得等高线更光滑些 ...

    等高线可以,只要有Z标高的信息就可以。(想起n年前拿到地形图的第一步就是把元素标高归0,真是错误啊。)
    具体是:
    1.  等高线往往是pline,因为数据提取里没有提取pline线的各结点的xyz信息,所以线把pline炸开,变成line。
    2.  用L版的方法提取这些line的端点xyz信息(虽然还可以提取起点,差值等xyz,但取其一就够了)
    3.  Z数据按照升序排序,到时候在excel里便于编辑。
    4.  按照楼主的方法到处xls文件。
    5.  excel打开这个文件, 在前面找出z为0或者负数的错误值,删除掉。
    6. 另存为txt文件。
    ...........
    后面一样了。

    评分

    参与人数 1经验 +10 收起 理由
    leglo + 10 赞一个!

    查看全部评分

    发表于 2013-4-12 15:04:39 | 显示全部楼层
    方法可行 不过用这些点生成的地形还是有一点点精度缺陷~~
    再一个就是  现在很多甲方提供的地形图 都是全部炸开了的 数据全部无法提取~~
    发表于 2013-4-12 15:17:06 | 显示全部楼层
    沙发先坐了
     楼主| 发表于 2013-4-12 15:19:05 | 显示全部楼层
    Chiongyu_Yih 发表于 2013-4-12 15:04
    方法可行 不过用这些点生成的地形还是有一点点精度缺陷~~
    再一个就是  现在很多甲方提供的地形图 都是全部 ...

    注意这一句:
    PS: 如果你的高程点,没有Z属性,只是文字,那提取的时候,就选择只提取文字的值和文字的x y坐标,同样也是高程点。 这么说吧,只要他有标示高程的文字在那,就没有提取不了的,当然精度会有影响,但是做设计足够用

    评分

    参与人数 1经验 +1 收起 理由
    adidas023 + 1 赞一个!

    查看全部评分

    发表于 2013-4-12 15:56:40 | 显示全部楼层
    {:soso__10169062262133571330_1:}
    发表于 2013-4-12 16:49:11 | 显示全部楼层
    谢谢L大分享技巧
    发表于 2013-4-12 18:36:17 | 显示全部楼层
    {:soso_e179:}
    发表于 2013-4-12 19:19:42 | 显示全部楼层
    沙发~支持楼主
    发表于 2013-4-12 21:33:47 | 显示全部楼层
    建议楼主抽空发个帖子介绍下各种软件制作的模型互相导入的方法,像草图大师、cad、3Dmax、ac等软件及与各种渲染软件互相导入模型方法及注意事项。
    发表于 2013-4-14 11:07:50 | 显示全部楼层
    沙发~支持楼主
    您需要登录后才可以回帖 登录 | 加入BIM Studio

    本版积分规则

    BIM STUDIO 中国最活跃、最专业的ArchiCAD技术论坛

    技术支持:   X3.4© 2013-2018 BIM STUDIO

    Archiver|手机版|小黑屋|BIM STUDIO ( 苏ICP备14040709号 公安部备案号: 32010402000580 ) 点击这里加入此群

    GMT+8, 2018-12-15 09:04 , Processed in 0.098792 second(s), 37 queries .

    快速回复 返回顶部 返回列表