找回密码
 加入BIM Studio

QQ登录

只需一步,快速开始

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

2013-4-14 11:07:50 · ArchiCAD 小技巧

早点注册攒积分吧

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

x
ArchiCAD在2011年的14版中加入了一个“通过测量数据放置网面”的功能,用于自动根据高程数据生成基地地形。

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

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

下面我以一个例子说明

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

02.jpg

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

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

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

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

04.jpg

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

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

06.jpg

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

111.jpg

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

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

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

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

13.jpg

11.jpg

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

14.jpg

打开这个文件
15.jpg

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


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

17.jpg

18.jpg

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

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

19.jpg

选择刚才生成的TXT文件

20.jpg

出现设置对话框

21.jpg

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

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

22.jpg

23.jpg

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

24.jpg

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


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


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


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

查看全部评分总评分 : 经验 +15 金币 +40 贡献 +1

王远华 发表于 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 赞一个!

查看全部评分总评分 : 经验 +10

2013-5-30 15:25:47
1
方法可行 不过用这些点生成的地形还是有一点点精度缺陷~~
再一个就是  现在很多甲方提供的地形图 都是全部炸开了的 数据全部无法提取~~
2013-4-12 15:04:39
沙发先坐了
2013-4-12 15:17:06
评论·
·举报

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

查看全部评分总评分 : 经验 +1

2013-4-12 15:19:05
{:soso__10169062262133571330_1:}
2013-4-12 15:56:40
谢谢L大分享技巧
2013-4-12 16:49:11
{:soso_e179:}
2013-4-12 18:36:17
沙发~支持楼主
2013-4-12 19:19:42
建议楼主抽空发个帖子介绍下各种软件制作的模型互相导入的方法,像草图大师、cad、3Dmax、ac等软件及与各种渲染软件互相导入模型方法及注意事项。
2013-4-12 21:33:47
沙发~支持楼主
2013-4-14 11:07:50

早点注册攒积分吧

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

x
ArchiCAD在2011年的14版中加入了一个“通过测量数据放置网面”的功能,用于自动根据高程数据生成基地地形。

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

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

下面我以一个例子说明

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

02.jpg

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

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

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

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

04.jpg

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

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

06.jpg

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

111.jpg

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

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

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

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

13.jpg

11.jpg

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

14.jpg

打开这个文件
15.jpg

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


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

17.jpg

18.jpg

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

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

19.jpg

选择刚才生成的TXT文件

20.jpg

出现设置对话框

21.jpg

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

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

22.jpg

23.jpg

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

24.jpg

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


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


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


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

查看全部评分总评分 : 经验 +15 金币 +40 贡献 +1

王远华 发表于 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 赞一个!

查看全部评分总评分 : 经验 +10

2013-5-30 15:25:47
1
方法可行 不过用这些点生成的地形还是有一点点精度缺陷~~
再一个就是  现在很多甲方提供的地形图 都是全部炸开了的 数据全部无法提取~~
2013-4-12 15:04:39
沙发先坐了
2013-4-12 15:17:06
评论·
·举报

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

查看全部评分总评分 : 经验 +1

2013-4-12 15:19:05
{:soso__10169062262133571330_1:}
2013-4-12 15:56:40
谢谢L大分享技巧
2013-4-12 16:49:11
{:soso_e179:}
2013-4-12 18:36:17
沙发~支持楼主
2013-4-12 19:19:42
建议楼主抽空发个帖子介绍下各种软件制作的模型互相导入的方法,像草图大师、cad、3Dmax、ac等软件及与各种渲染软件互相导入模型方法及注意事项。
2013-4-12 21:33:47
沙发~支持楼主
2013-4-14 11:07:50
懒得打字嘛,点击右侧快捷回复
您需要登录后才可以回帖 立即登录
说说你的想法......
29
92
0
返回顶部