下载app免费领取会员
1、首先通过节点Rectangle.ByWidthLength创建一个矩形,这个节点的第一个输入端plane需要一个平面作为矩形的定位平面,矩形的中心将位于所输入平面的中心。图中输入的平面是X轴与Y轴组成的平面。输入端width与length分别为矩形的宽度与长度,图中将它们都定义为100个单位。最后用节点Surface.ByPatch将矩形封闭形成曲面。
2、通过节点Surface.PointAtParameter获取曲面上的点。输入端surface输入一个曲面。输入端u和输入端v分别输入曲面上两个方向的坐标,该坐标值位于区间[0, 1]中。图中所输入的两个坐标都为0和1之间均分为50份的各个数值。最后将节点Surface.PointAtParameter的连缀方式改为叉积就获得图中的点阵。
3、建立一个CodeBlock。
3.1 第一行是创建一个列表,该列表的数值与数学中正弦函数有关。Math.Sin(x*360*cycles)中变量x是0至1之间均分为50份后的列表。变量cycles表示周期,乘以360之后就能控制函数的频率。变量amp表示幅度,数值越大,所获得的结果就越大。
3.2 第二行使用了列表处理中的函数Transpose,可以将输入的列表进行转置。
3.3 最后的变量eggShellList是前两个小步中数据的和,用于下一步中各个点移动的距离。
4、节点Geometry.Translate能够将输入的对象进行移动复制。在上一步中,一个数据经过正弦函数计算之后,会有50个数据合在一个子列表中。一共有50个数据,因此生成50x50=2500个新数据。刚好我们生成的点就是2500个,每个点对应一个移动的距离。节点Geometry.Translate的输入端geometry输入需要移动的几何图形。输入端direction输入移动的方向,图中为世界坐标系Z轴的正方向。输入端distance输入移动的距离。
5、节点NurbsSurface.ByPoints能够依据输入的点生成曲面,但是在输入点之前先通过一个代码块控制所输入的点。sineStrips表示所有点组合成的列表,随后的一对中括号表示提取列表中指定的索引项。索引项从0开始直到某个数值,这个数值是由列表的项数减去1之后乘以一个系数,该系数位于区间[0, 1]之间,相当于控制了该曲面所覆盖的点的范围。
本文版权归腿腿教学网及原创作者所有,未经授权,谢绝转载。
上一篇:Revit中老虎窗的绘制要点