下载app免费领取会员
该样例文件主要是介绍Dynamo中节点Python Script的简单应用。
1、指定一个规则,让输入列表的索引项依次相加或者依次相减。
1.1 节点Integer Slider可以生成三个数字-1、0和1。
1.2 节点Code Block输入公式“0..10”,生成一个列表{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}。
1.3 调出节点Python Script,双击节点面板进入编辑模式。
1.4 第9行和第10行分别定义两个变量,一个是sign将会继承输入端IN[0]的值,另一个是nums将会继承输入端IN[1]的值。
1.5 第12行新建一个空的列表partials。
1.6 第13行新建一个变量result,并赋值为0。
1.7 第16行创建一个for循环,循环的次数是列表nums的索引项数量。
1.8 循环的过程中,第17行进行第一种判断。如果sign的值小于0,那么将result的值更新为result加上列表的索引项。该索引项取决于进入循环时index的值。最后将结果放进列表partials中。
1.9 循环的过程中,第20行进行第二种判断。如果sign的值等于0,那么列表partials中的值就添加一次0。然后通过continue命令回到循环的开头,直到循环结束。
1.10 循环的过程中,第23行进行第三种判断。如果sign的值大于0,那么将result的值更新为result减去列表的索引项。该索引项取决于进入循环时index的值。最后将结果放进列表partials中。
1.11 第29行将OUT定义为一个空列表。
1.12 第30行为列表OUT添加变量result的值。
1.13 第31行为列表OUT添加列表partials的值。
2、经过步骤1.12和1.13之后,列表OUT中有两个子列表,通过节点List.GetItemAtIndex提取出来。
2.1 节点List.GetItemAtIndex可以获取列表中指定的索引项,输入端index输入0时提取第一个子列表,输入端index输入1时提取第二个子列表。
3、通过Python Script导入ProtoGeometry库之后就可以想Code Block一样执行节点的命令。
3.1 第7行和第8行分别生成了两个点,坐标为(0, 0, 0)和(-10, -10, -10)。
3.2 第10行在第7、8行的基础上,通过两点创建了一条直线。
3.3 第12行新建了一个列表,列表中存放着五个点,分别为点(0, 0, 0)、点(10, 10, 0)、点(20, 0, 0)、点(30, 10, 0)和点(40, 0, 0)。
3.4 第19行创建一条样条曲线,构成样条曲线的点就是步骤3.3中的点。
3.5 第21行创建一个曲线,曲面是通过拉伸曲线来实现的,拉伸方向是向量(0, 0, 1),拉伸距离为10。
3.6 将输出的对象OUT定义为一个列表,这个列表由三个对象组成,第一个是直线,第二个是曲线,第三个是曲面。
3.7 节点Code Block分别提取列表的三个对象,并且每一个对象各连接一个Watch节点查看结果。
本文版权归腿腿教学网及原创作者所有,未经授权,谢绝转载。
上一篇:Dynamo样例文件解析之Core_PassingFunctions