首页/技术分享

DynamoPrimer解析之Packages - MapToSurface-PleatedPolysurface-OffsetPointstoSurface(三)

发布于:2020-02-13 13:46:26
3751人 分享

9、在步骤8的基础上通过节点Curve.PointAtParameter获取曲线上的点,具体的点位置由节点Code Block决定,即从曲线的起点到终点均分为4段,取5个点。

0901_获取曲线上的点.png

10、通过代码块定义一个由-1和1组成的列表。

10.1 第一行中的{-1, 1}表示由-1和1两个数值创建的小列表,并将列表赋予变量cullPattern。

10.2 第二行中首先出现的节点是List.Cycle,该节点的作用是将指定的列表重复指定的次数。第二个用到的节点是Math.Ceiling,该节点的作用是返回一个大于指定输入值且最接近输入值的整数,图中5/2=2.5,因此返回值为3。整体的含义是将列表cullPattern重复3次。

10.3 第三行使用的节点是List.ShiftIndices,该节点的作用是“滑动”列表,将整个列表的数据移动指定的索引数。图中就是将列表向下移动一个索引项。例如{-1, 1, -1, 1}将会变为{1, -1, 1, -1}。

10.4 最后一行将未移动过前的列表和移动后的列表整合进一个大列表中。

1001_创建循环的列表.png

11、同样使用节点List.Cycle将输入的列表进行重复。需要重复的列表是步骤10.4的列表,重复的次数与步骤7.2中点的数量有关。因为列表{baseList, shiftList}原本有两个列表,所以重复的次数为点的数量除以2。

1101_将列表的数值重复.png

12、将点图元沿着上下方向移动复制。

12.1 节点Geometry.Translate能够将输入的对象移动复制。

12.2 输入端geometry输入需要被移动的图元,图中为步骤9中的各个点。

12.3 剩下的三个输入端分别对应着X方向、Y方向和Z方向的移动距离。

12.4 其中X方向与Y方向都为0。Z方向根据步骤11中的列表计算数值,将步骤11的列表乘以移动的距离,就得到了一个正负相间的结果,一个向上一个向下,以此类推。

1201_移动点图元.png

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

上一篇:

DynamoPrimer解析之Packages - MapToSurface-PleatedPolysurface-OffsetPointstoSurface(二)

下一篇:

你需要的CAD快捷键汇总,请查收!