Rhino拾遗(十九):Grasshopper小程序从等高线信息自动拟合地形
发布于 2021-09-08 12:28 ,所属分类:数学资料学习库
Rhino拾遗(十九):
Grasshopper小程序从等高线信息自动拟合地形
本篇教程主要针对景观设计。请不相关专业读者酌情选择阅读。
从等高线平面图自动拟合地形
在已绘制完成闭合等高线平面图,且该平面图中等高线未出现复杂的多处相互嵌套的的情况下,可利用Grasshopper小程序自动抬升相邻等高线间的高度,从而快速建立地形曲面。

实现自动抬升平面等高线并生成曲面的Grasshopper程序如下:

此Grasshopper程序的原理在于:以Length运算器提取出每根曲线的长度,用Sort List运算器筛选出等高线长度信息的列表。以Series运算器生成以指定等高距为公差的等差数列,并将相应位置的等高线与等差数列中相应的项数配对,分别沿着UnitZ运算器指定的Z轴方向,以Move运算器抬升不同的距离。注意Move运算器的Geometry输入端的数据结构需要设为Reverse. 最后,以patch运算器生成曲面。

从三维等高线信息图自动拟合地形
Step1:
首先,将带有三维等高线信息的AutoCAD (或DXF等) 图纸导入Rhino.

切换到Perspective视图选取待生成地形的等高线范围。

编写如下Grasshopper程序,可依据提取出的三维等高线信息,拟合出适合的地形。
此Grasshopper程序的原理在于:先按照指定距离提取出三维等高线上每隔相应距离的地形标高特征点,构成点云,然后依据点云生成拟合地形的mesh曲面。
首先,将这些三维等高线拾取进Curve对象。将Curve对象与Devide Curve运算器的Curve输入端相连。再将Curve对象与Length运算器相连,将Length运算器的输出结果输入Division运算器的A输入端,B输入端则输入一个距离数值,这个数值决定了在原有等高线上提取的相邻点之间的距离。然后,将Division运算器输出结果赋予Divide Curve运算器的Count输入端。将Divide Curve运算器输出端的数据结构拍平,输入至Delaunay Mesh 运算器的Points输入端,拟合出曲面。

Step2:
Bake出所得mesh曲面。

在TOP视图键入_DrapePt(生成幕帘点)命令,提取mesh曲面外接矩形范围内的曲面表面特征点。

在任一侧视图选中并删去冗余点。


将地形特征点_Patch成面,即可拟合出所求地形的nurbs曲面。

效果展示:

内容恕仅供技术交流、参考,作者恕不对原文中任何内容承担任何责任。
如有疏漏,恳请斧正。©2021,闲渊斋,非盈利个人gongzhong号.




![[小程序] 极客学院小程序从入门到实战教程带实战环节包含课件源码](https://static.kouhao8.com/sucaidashi/xkbb/f391c0616156f6de56d386d12ce61eba.jpg?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)
![[小程序] 9小时搞定微信小程序开发 微信小程序从入门到实战视频课程 高磊主讲](https://static.kouhao8.com/sucaidashi/xkbb/570b1b552a766843b416fb28f2752248.jpg?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)
![[小程序] 极客学院小程序从入门到实战教程带实战环节包含课件源码](https://static.kouhao8.com/sucaidashi/xkbb/6328f20ad68bb340175842b0f6726415.jpg?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)

![[小程序] 9小时搞定微信小程序开发 微信小程序从入门到实战视频课程 高磊主讲 共91课](https://static.kouhao8.com/sucaidashi/xkbb/5cb6f36e2f97b5067b9c315e510137a7.jpg?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)



![[小程序] 零基础玩转微信小程序开发全套课程](https://static.kouhao8.com/sucaidashi/xkbb/49d4b8528a407349b65b347240e23e0b.jpg?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)
![[小程序] 微信小程序经典案例开发视频教程合集](https://static.kouhao8.com/sucaidashi/xkbb/f4724009a72f0b8bb0bcf95680eed664.png?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)
![[小程序] 微信小程序进阶实战之分答应用开发(中级项目)](https://static.kouhao8.com/sucaidashi/xkbb/e8e72ed860a82510565d1ea959c6dfae.jpg?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)
![[小程序] 微信小程序经典案例开发视频教程合集](https://static.kouhao8.com/sucaidashi/xkbb/cd40585dc6146bf1848cbd115437f6ae.jpg?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)
![[小程序] 小木学堂小程序基础实战视频教程 共3季 包含课件源码](https://static.kouhao8.com/sucaidashi/xkbb/d342d01905e4e8fbe391832f301ed609.jpg?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)
![[小程序] 小木学堂小程序基础实战视频教程 共3季 包含课件源码](https://static.kouhao8.com/sucaidashi/xkbb/490160590fa102677140a8524e4e0415.jpg?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)














相关资源