Grasshopper的数据列表工具与传统编程【翻译】

列表编辑

与编程环境相反,Grasshopper使用没有对象名称来定义对象,这在传统编程中会感到些许奇怪,但它是与传统的编程思维最根本的区别之一。在Grasshopper中,元素被放置在列表中。不同的数据列表在数据树结构中组织,其中分支的每个分支和数据内容具有索引号(index)。因此,在传统编程环境中访问对象是更成问题的,而Grasshopper有各种各样的工具来解决这个问题。这些工具支持编辑和选择列表的内容。这些技术的知识对于Grasshopper的有效利用是必不可少的。这些技能将在Wiki中得到解释。为了保持示例简单,使用带有数字的面板。这些数字可以代表很多不同的东西。例如:点、曲线或表面。

列表项

单输出列表项

具有多个输出的列表项

与减法结合使用的列表项

列表项从列表中选择项或多个项。注意输入列表中的索引(值前面的数字)。指数从0开始,而不是在1。

列表长度

List length1.jpg

列表长度组件返回列表中的项目数。在第二示例中,使用列表长度来获取列表中的最后一个项目,而不考虑值的数目。这使得这个定义参数化。请注意,您需要从列表长度减去1,因为索引从0开始!

反向列表

Reverse List1.jpg

反向列表的目的是显而易见的。此组件还可用于通过反转列表并获得第一项(索引0)来获取列表的最后一项。

偏移列表

Shift List1.jpg

Shift列表通过移位值移动列表中的项。一个肯定的(s)将项目在列表中移动,一个否定(s)向下移动。环绕(W)防止物品通过移动到另一端而从列表中“掉下来”。

重排列表

Sorting List1.jpg

排序列表和子列表

排序列表组件可以是一个非常强大的组件。它的默认功能是对列表(k)进行排序。除了输入之外,还有可能附加更多的列表(A,B,Enz)。这些列表将按照与第一个列表相同的顺序排序。次要列表的内容不必像第一个列表(k)那样是可排序的。第二个列表可以是几何、文本等。

分割列表

Split List1.jpg

分割列表将列表拆分为两个单独的列表。第二个列表从索引(i)开始。

子列表

Sub List1.jpg

使用子列表,您可以使用域选择列表的一部分。指定域之外的元素将从输出中删除。

分组列表

Partition List1.jpg

分区列表是“拆分列表”和“子列表”组件的组合。输入(s)根据每个列表所包含的项的数量来设置拆分模式。这个模式将被重复,直到所有的项目被放置。

零刻学堂是专注建筑设计建模技术研究的网站,站长本人也在犀牛领域担任高级讲师多年,精通犀牛建模、建筑参数化和工业建模。
本站文章除了注明【转载】的,均为本人和本站用户原创,如需转载无需通过本人同意,但务必在转载文章内部添加本文链接和作者署名,违者追究其责任。
零刻学堂 » Grasshopper的数据列表工具与传统编程【翻译】

发表评论