Grasshopper数据管理(Data Management)

数据类型(Types of Data)

参数(Patameters)用来储存信息,参数可以大致分为两类:可变数据(Volatile data)和不可变数据(Persistent data). 可变数据是从一个或者多个源参数(source parameters)继承的,并且在每次新答案(new solution)开始时被销毁和重新采集.不可变数据是由用户设定的某些固定值,在计算过程中不发生改变.如果参数和某个源物体连接,不可变参数将被忽略,但是不会被销毁.

不可变数据通过组件(Component)的菜单进行设置,不同类型的数据有各自相应的菜单.

 

数据继承(Data Inheritance)

如果参数不包含固定记录,它必须从别处获得继承. 除输出参数(output parameters)外的所有参数定义它从何处获得数据,大部分Grasshopper参数并不指明类型,也就是说类型之间的转换将自动完成,比如你可以将双精度类型参数(double parameter)连接到整数类型参数(integer source). 如果两种数据类型之间不存在预定义的转换方法,那么接收数据的参数将产生一个转换错误(conversion error). 比如你将一个面(Surface)指定给一个点(Point), 点参数会给出一个错误信息 (具体信息将在菜单中现实)并且标示为红色. 与此组件相连的下游组建也将被标示为错误(显示为红色),因为它们无法得到正确的值,即使他们本身不存在错误.

连接管理(Connection management)

在Grasshopper中,通过拖拽的方式将参数相连,从某个参数按住鼠标左键拖拽出一根连接线的动作被称为“grip”,此时连接线为虚线,当鼠标到达某个目标参数时,连接线变实,将鼠标左键松开,连接过程完成.从反方向同样可以完成这个过程.默认情况下,新的连接会取代原来存在的连接.但在按住Shift键的同时进行连接,那意味着给参数增加一个连接,按下Control键的同时进行操作将取消一个连接.取消某个连接可以通过菜单操作.

 

Reference:

Grasshopper Data Persistent Data Management

Grasshopper Volatile Data Inheritance

Grasshopper Data Stream Matching

New Data Matching in 0.9+

Comment from David Rutten