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源文件获取方法
领取专属 10元无门槛券
私享最新 技术干货