完善主体资料,免费赠送VIP会员!
* 主体类型
* 企业名称
* 信用代码
* 所在行业
* 企业规模
* 所在职位
* 姓名
* 所在行业
* 学历
* 工作性质
请先选择行业
您还可以选择以下福利:
行业福利,领完即止!

下载app免费领取会员

NULL

5cdd2dc095060.jpg

DynamoPrimer解析之Designing with Lists(三)

发布于:2019-11-25 11:13:12
首页/技术分享/Dynamo
收藏
4948

朱光旺

更多

DynamoPrimer解析之Designing with Lists(三)List.Count

1、首先创建一个圆形,该圆形的创建方式是指定圆形所在的平面和半径,节点是Circle.ByPlaneRadius。输入端plane需要一个平面,该平面是由节点Plane.ByOriginNormal生成,平面的原点为点(500, 0, 0),平面的法向量为世界坐标系的Z轴正方向。输入端radius的值为50mm。

01_生成圆形.png

2、接着使用节点Geometry.Translate将上一步中的圆形进行移动,移动的方向是世界坐标系的Z轴正方向,移动的距离为100mm。

02_移动复制圆形.png

3、节点Curve.PointAtParameter能过够获取曲线上指定参数位置的点,参数是从0开始到1结束均分为10个数据之后的列表,因此获取到10个点,起点与终点重合。上面圆形的10个点与下面圆形的10个点一一对应,并通过节点Line.ByStartPointEndPoint连接为十条直线。

03_获取曲线上的点.png

4、最后通过节点List.Count能够获取所输入列表的索引项数量,输入的列表中一共有10条直线,所以最终的结果为10。

04_获取列表的索引项数量.png

List.FilterByBoolMask

1、与上一部分的节点List.Count一样,首先准备两个圆形,然后获取圆形上的100个点。

05_生成圆形并获取100个点.png

2、建立一个过滤的条件。通过节点Code Block输入公式“0..List.Count(list)”,表示将会建立一个列表,该列表的起始值为0,终止值为列表“list”的索引项数量,数据之间的间距默认为1。节点%表示输入端x的值除以输入端y的值,然后取余数。节点==能够判断输入端x的值与输入端y的值是否相等。整个过程就是,列表中各个索引项变为数字之后除以4,并判断余数是否为0。

06_建立过滤的条件.png

3、节点List.FilterByBoolMask能够通过布尔值过滤指定的列表。两个输入端数据的数量是一样的,输入端list可以是任意的列表,输入mask只能是由true和false组成的列表,两个列表的数据根据索引项一一对应。输出端in将会输出与true相对应的数据,输出端out将会输出与false相对应的数据。最终的结果就是将可以被4整除的位置连接生成直线。

07_通过过滤条件生成直线.png

本文版权归腿腿教学网及原创作者所有,未经授权,谢绝转载。

未标题-1.jpg

上一篇:C4D视觉效果制作

下一篇:DynamoPrimer解析之Designing with Lists(四)