首页/技术分享

Dynamo模拟实际建筑外装饰幕墙设计(下)

发布于:2019-03-06 15:02:13
6748人 分享

6、编辑嵌板控制点的二维数字列表

6.1 将每一个点都看作嵌板的控制点,通过一次对应控制点放置一块嵌板。例如,pts1中由左下角开始向着行列两个方向推进,都是到达行和列倒数第二的位置,即图中黄色部分。所以灰色部分表示的是pts1无法达到的点。同理,pts2不可能达到最右边和最下边。

6.2 根据这个思路,我们使用节点“List.DropItems”移除列表最末尾的一项,使用节点“List.RestOfItems”移除列表第一项。然后用一个列表整合所有的控制点,最后转置列表形成存放每四个相对应控制点的子列表,该子列表表示每一个子列表就是一块嵌板的四个放置点。

7、幕墙族类型选定及列表的打乱

7.1 首先通过节点“List.Map”将上一步的结果“List.Transpose({pts1, pts2, pts3, pts4})”添加一个维度。

7.2 接着我们需要知道要放置多少块嵌板,并为每块嵌板指定类型。

7.2.1 第一行,通过节点“Count”计算的是未进行添加维度是列表“List.Transpose({pts1, pts2, pts3, pts4})”的项数,即总共的嵌板数量。

7.2.2 第二行和第三行,我们添加一个列表存放嵌板类型,并计算共有几种嵌板类型。

7.2.3 第四行,通过除法获取每种类型嵌板的数量,然后节点“List.Cycle”将每种类型的嵌板都重复之前计算所得的嵌板数量,例如若需要100块蓝色嵌板,那么就得将蓝色嵌板重复100次。

7.2.4 第五行,通过节点“List.Shuffle”随机打乱嵌板的排序。

8、自适应构件的布置与编码

8.1 节点“List.LaceShortest”表示“comb”端输入的命令以最短的连缀方式执行。即“List.Map”中每四个点的列表对应一块嵌板,即每块嵌板用四个控制点定位它的位置。

8.2 为每个嵌板添加标记,填入嵌板的编号。嵌板的编号从1开始直到嵌板的数量,间距为1。然后通过节点将其转换为字符串。

8.3 通过节点“String.PadLeft”修饰嵌板的编号,例如,如果编号为“1”就改为“001”。

8.4 最后通过节点“Element.SetParameterByName”将这些修改后的编号填入嵌板的参数“Mark”中。

转载请注明来源本文地址:https://www.tuituisoft/blog/2182.html

上一篇:

Dynamo模拟实际建筑外装饰幕墙设计(上)

下一篇:

Revit中三种风管对齐方式