师徒云职工技能在线教育平台

Dynamo软件是如何处理数据的?

日期:2022-04-29  |  作者:肖洒  |  来源:本网站

  1、快速筛选出一组物体中,有哪些物体与另一组物体相交

  这里,一般都会直接想到利用List.FilterByBoolMask,用步布尔值进行过滤,既方便又准确。

  

腿腿教学网-Dynamo技巧:Dynamo数据处理技巧,不学就亏大了!


  我们利用两个物体的BoundingBox,进行Intersects,就能得到哪些相交,注意这里,要把连缀方式改成叉积,不然并不能逐个比对。然后就是构造出和这组布尔值格式相同的原数据列表,方法如下:

  

腿腿教学网-Dynamo技巧:Dynamo数据处理技巧,不学就亏大了!


  通过获取原列表的长度,将另一组数据重复为相同长度,然后对列表进行转置,就可以匹配格式了,最后利用List.FilterByBoolMask就能把每组数据中心我们需要的那组数据提取出来了。

  2、获取族类型参数

  用过Dynamo的都知道,正常情况下,我们利用Element.GetParameterValueByName是无法获取族类型参数的,那么需要类型参数的时候该怎么做呢?

  其实很简单,只需要在中间添加两个节点,对图元进行转换,得到对应的族名称和族类别,就可以提取族类型参数,如下图:

  

腿腿教学网-Dynamo技巧:Dynamo数据处理技巧,不学就亏大了!


  之后通过Element.GetParameterValueByName就可读取族类型参数了。当然了,现在有很多节点包可以帮我们解决这个问题,现在只需要下载一个Rhythm节点包,就能利用下面这个节点,直接读取族的类型参数:

  

腿腿教学网-Dynamo技巧:Dynamo数据处理技巧,不学就亏大了!


  3、如何简单的,将列表中相同的数据进行分组呢?

  这个其实也很简单,和第一条里面的方法差不多,利用List.FilterByBoolMask进行过滤。我们先利用List.UniqueItems获取列表中的唯一项的新列表,然后通过“=="进行比对得到一组布尔值,然后在过滤就可以了,如下图:

  

1.jpg


  4、创建指定位数的编号

  这个在车位编号之类的操作时候,很常用,将模型排好序以后,我们创建对应长度的编号,写入参数就行,这里就不多解释了,直接上节点:

  

2.png


  上面List.Count的级别设置为2,是因为我多列表里有多个子列表,要分别排序,如果你是单个列表,直接取消级别即可。


微信公众号

手机扫码听课

知己测评

人社部推荐优质线上职业技能培训平台

咨询电话:010-68324829

增值电信业务经营许可证:京B2-20191670 京ICP备19020478号

版权所有©2022-2024 北京百高数据管理集团有限责任公司(jzr8.com)

违法及不良信息举报热线:010-68315846 举报/反馈/投诉邮箱:feedbak@mybaigao.com

京公网安备11010802039158号