我们先放一张截图,不再是通过 loft 创建模型,而是通过旋转生成模型,效果如下,今天我们就来聊聊这个模型是怎么生成得。
“旋转”,顾名思义,和 Revit 中创建形状的旋转是一个意思,只是用来旋转的曲线,我们是通过 Dynamo 来参数化控制的。
第一步:创建控制点,很简单,然后将这三个节点选中,复制几个,点越多,控制的曲线形状越复杂。
第二步:这里我选择创建 5 个点作为控制点,然后串联成曲线,如下图:
第三步:利用 Surface.ByRevolve 节点,将生成得曲线旋转,缺省值生成得是旋 0 度旋转到 180 度的曲面,我这里只输入了一个 270 度,效果如下图:
大家可以自己输入一些数据进行测试,例如改变旋转轴所在点,改变起始角度,这里需要读者多去尝试,可以得到意想不到的效果哦~
是不是很简单?
接下来我们来进行不同的尝试:
假设我们要将曲面变成实体墙,只需要给曲面增加一个厚度即可,如图:
现在我们想要开篇那张截图的效果,我们将创建曲面所有的节点选中,复制一份,然后调整旋转角度为 0 到 - 90 度,再调整第一个点和最后一个点的位置,就有了如下的效果:
接下来就能和前几次一样,用 LunchBox 的节点,划分幕墙网格了。
接下来是给嵌板上色,我们可以下载一个节点包,叫 Ampersand,里面有个节点【&】PointList.VisualizePanels,可以自动给嵌板填充随机颜色,将点列表传入这个节点即可:
当然了,如果你没有下载这个节点包,也没有问题,只需要几个节点,也能给嵌板填色,接下来我们来详细说明:
(1)利用 List.Shuffle 将嵌板列表随机打乱,留着备用;
(2)获取列表的项数,用来填色用;
(3)生成一组 0 到 1 之间的列表,长度就是刚才得到的列表长度;
(4)根据列表长度,生成对应的一组颜色列表;
(5)利用 Geometry.ByGeometryColor 给嵌板填色。
到这里就得到了和刚才相同的效果,是不是很简单~
当然了,这里我们也可以不将嵌板列表打乱,直接连入上色节点,就能到的一个颜色渐变的模型,如下图: