前言
这里是gh系列教程的第三节,我们开始学习那些最常用的那些运算器,真正的可以用gh做一些符合自己想法的事,末尾会有简单的案例,可以练习一下。
另外从本章起,思维导图不在本页面直接显示了(内容实在太长了,想要获取还是在公号内回复“gh导图"即可。
什么是高频容器?
高频的容器对应于我们常用的参数、往往是一段gh程序的起始变量与最终变量
点容器
[[ Point ]],由x、y、z三个数值定义的表示空间一个无限小而精确的位置的几何体
线容器
[[ Curve ]],动点运动时,方向连续变化所成的线。在犀牛这种建模软件中,曲线是非均匀有理 B 样条曲线(NURBS)。参考链接
边界表示Brep容器
[[ Brep ]],边界表达法(Boundary/Representation,简称Brep) 根据顶点、边和曲面构成的表面。
具有uv结构的单一曲面[[ Surface ]],多重曲面,由若干surface和边和端点组成。
平面容器
[[ Plane ]],由基点,X轴向量、y轴向量组成的无穷大平面空间,是定义几何体位置信息的基础
向量容器
[[ Vector]],原点(0,0,0)到一点的方向和距离,和该点的坐标表示等价
网格容器
[[ Mesh ]],入门暂时不讲,想了解的参见大鹿免费网格公开课MESH
布尔值容器
[[ Boolean]],具有true 与 false两个值,任何非零实数皆为true,0为false
整数容器
[[ Int]],就是数学上的整数
浮点数(小数)容器
[[Num]],就是数学上的小数
字符串(文字)容器
[[Text]],就是文字对象,可以包含任意数量的字符
容器如何拾取对象?
容器或运算器输入端参数,可以赋值为犀牛中已经存在的对象,这时要通过右键单击容器或运算器输入参数,在选单列表中通过select single/select mutiple选单来选择单个或多个对象。
点拾取的特别操作
在点击点容器(或者任何运算器输入端的点参数)右键时的select single/select mutiple选单后,rhino命令行会出现type选项,可以切换reference、coordinate、curve三种,常用前两种方式。
reference,选择犀牛界面中的点物件
coordinate,选择接下来在犀牛界面绘制的点(结合锁点功能可以很方便的选到想要的点位,而不必在犀牛里创建点)
高频数据运算器
高频数据运算器常用来解决建模过程中,选取、排序、配对、判断、归类、编号等需求。
List Item
列表按index(编号)取值
Sort List
将列表内元素按值从小到大规则排序
Graft
列表每个值升为单值列表
Flatten
把一切数据拍平为一个长列表
Unflatten
把长列表还原回拍平前的树结构
Item Index
获取任意数据结构的Index结构,常用于编号
Trim Tree
把N级Tree,变为N-1级Tree,常用来适配运算
Entwine
归类用。把同类归为一个大路径下,常用于整理
Flip Matrix
二级tree转置,反转矩阵,类似于线性代数中的矩阵转置
Dispatch
按布尔顺序分开为两组,分别从AB两端口输出。常用于筛选数据
案例
最后,本节提供了一个汇总了上述高频运算器知识的一个简单应用,gh文件请点击阅读原文下载。具体的使用有详细的备注。
“继衠”公众号内,原文下载gh文件