首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

螺旋式观景塔参数化建模与生长动画

EFFEKT距离哥本哈根以南一个小时路程,该观景塔提供360度全景,能够环顾赫斯列兹森林,湖泊、湿地和小溪等山地特色景观尽收眼底。本文将以该观景塔为例,进行grasshopper建模以及制作模型生长动画。

观景塔以一条螺旋母线作为基本体,其形体规律为两端大中间小。在z轴方向构建等距圆,并用Graph mapper+Remap numbers(函数映射)组合控制圆的半径变化。

观景塔总层数为十二层,图示中生成了六十个圆,可得每五个圆作为旋转一层。将每个圆等分五个点,并通过求余的方式计算螺旋线所通过的点。

通过指向圆心的向量,移动螺旋线的点从而计算出坡道两侧的点,并通过loft生成坡道曲面。按照同样的方法可生成坡道两侧围护。

顶层走道可通过提取最顶层的圆获得基础元素,再通过Offset Curve生成走道两侧,进而生成曲面。此处围护的生成采用与坡道围护生成的方法不同,其方法为通过断面矩形单轨扫掠生成曲面。

该观景塔除了螺旋坡道,最吸睛的便是其外部网格结构。再次平分圆获得点,并通过Rotate与Π偏移每个点(此处示例中Π除以54,当除以的值越大,外网格结构形成的菱形越窄)。最后通过filp matrix改变树形数据,由pipe生成圆管结构。

右击Number Slider后出现Animate一项。点击出现动画控制界面,其中最重要的是保存路径,保存名称,导出图片分辨率以及导出帧数。 值得注意的是grasshopper中默认导出bmp文件,建议在保存名称中改成png后缀。导出帧数一般为一秒二十四帧,可后期透过pr等视频软件进行仔细修改,导出的帧数越大,视频越流畅,同样的视频文件越大。

制作动画的逻辑为通过提取关键基础元素并使用Number slider控制区间,缩放,偏转角度等途径对基础元素进行有效改变。如图中外网格结构基础元素为十八条曲线(即电池图中的curve),因此通过Sub Curve的重参数化并使用区间控制曲线生成。

如何解决同一动画中不同时间端生成不同的曲面?

一般将分别制作动画再通过pr等视频软件后期处理。如果是存在时间差(如上文坡道gif中,坡道与两侧围护生成时间均有差异),或者通过grasshopper进行简单的多段动画,可以通过判断语句进行对生成时间的控制。笔者打包一个简单的布尔值判断电池组,可用于在输入布尔值true或者false时筛选出不同的值。

以螺旋线生成为例,该gif为螺旋线为先生成,再消失的动画。需要通过两次布尔值判断,以确定两次动画的开始与结束时间。

本案例中Rhino & Grasshopper源文件获取方法

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200914A0MBF100?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券