Grasshopper最常用的15个电池,看看你都用过没有。

在 Grasshopper 的核心几何体系中,Point(点)、Curve(曲线)、Surface(曲面) 和 Brep(边界表示) 共同构成了从零维到三维的建模基础。浓缩成一句话: Point(点):零维,只有位置。 Curve(曲线):一维,线(直线、弧、NURBS都算)。 Surface(曲面):二维,单张没厚度的“皮”。 Brep(边界表示):三维,复杂实体或多重曲面(“盒子”或“拼接皮”)。简单理解就是:点连成线,线围成面,面缝合出体 (Brep)。其中 Surface 是“一张皮”,而 Brep 则是“一个盒子”或更复杂的“拼接皮”结构。

Move是最基础的移动电池,作用就是把几何体沿指定方向平移。它的核心逻辑就两个输入端:要移动的几何体(点、线、面、体都行);移动的方向和距离(配合XYZ轴实现);把多个向量连入T端,可以一次生成多个副本(线性阵列效果)。

Rotate(旋转)的作用:绕指定中心旋转物体。· 输入端:G(物体)、A(角度,默认弧度)、P(旋转中心,默认原点)。其中角度默认是弧度,连Degrees电池可转成度数。连上物体和角度,找好圆心,转就完了。

这个命令用封闭的平面曲线生成一张平面曲面。是在GH中最常用到的一个命令。

这个命令是把平面曲线沿直线方向拉出实体面或体,曲线必须共面,且方向向量垂直于曲线平面才能拉出实体(否则是扭曲面)。 若曲线封闭,且方向垂直,输出的是封闭实体。

意思是在多条曲线之间生成平滑过渡的曲面。曲线方向必须一致(起点对齐),否则会扭曲(可用Flip翻转)。曲线顺序决定曲面走向,连错会交叉。首尾封闭时,可生成闭合实体。

提供一个可拖拽的数字滑块,控制参数值(如长度、角度、数量),输出可整数或小数。双击数字或右键调出设置,可改范围、精度和类型。

数据面板的作用是显示和存储数据,相当于GH的“记事本”和“监视器”。 输入:连上任何数据(数字、文字、点坐标等);输出:原样输出输入的数据。 双击可手动输入文字或数字,用作常量。右键可切换显示模式(如树形结构、JSON格式); 连上Number Slider可实时查看当前值。

这个命令是指将物体从平面空间“掰弯”贴合到曲面空间,类似给曲面“贴图”或“印花”。 几何体:要映射的几何体(点、线、面、文字等),它会被“掰弯”贴到曲面上去。参考(可选):定义几何体本身的局部坐标系,用于控制映射时的朝向(不连则默认世界XY平面)。曲面:要贴附的目标曲面,曲面UV结构必须规整,建议先用Rebuild(重建)统一控制点,否则图案容易扭曲。U / V域:几何体在曲面UV空间里的定位参考。通常用Evaluate Surface(评估曲面)或Divide Surface(分割曲面)取点来定位。其中这个V域代表的是流动的范围,W区间代表的是流动的高度。

Linear Array 在 Grasshopper 里就是沿直线复 制东西的组件。把你做的一个方块或形状,沿一条直线一排复 制出来。

是一个用于生成一组等差数列的基础组件,它非常实用,常用于生成一排等距的点、控制圆的大小等等。常用场景: 连到点的X坐标 → 生成一排等距点;连到圆的半径 → 生成渐变大小的圆;用两个Series分别控制X和Y,再配Cross Reference组合,就能排成网格(点阵墙)。

意思是:从列表里“抽一个”出来。L(列表):数据清单; i(索引):要第几个(从0开始数,0=第一个,1=第二个...);输出:抽出来的那个值。例: 列表 [5, 8, 11, 14],i=2 → 输出 11。常用场景:从一堆点里单独取一个点出来操作,配合Series生成的数列,逐个提取做不同处理。

把列表“平移”一下(轮换位置)。L(List):要处理的列表;S(Shift):平移几步(正数=向下移,负数=向上移);输出:平移后的新列表。例: 列表 [A, B, C, D],S=1 → 输出 [D, A, B, C](整体往下挪1位)S=-1 → 输出 [B, C, D, A](整体往上挪1位)。常用场景:连线成面:把一排点平移后,上下配对生成四边形网格;处理数据错位:让第i个数据和第i+1个数据配对(比如算两点距离)。

把树“拍平”成列表。作用:去掉所有分支结构,把数据全部塞进一个列表里。例: 树形数据:{0;0} [A,B]、{0;1} [C,D] → 拍平后 → [A,B,C,D]。常用场景:不同分支的数据要混在一起做统一处理(比如多个曲线全丢进一个生成器);数据不匹配时强制对齐(但慎用,容易打乱配对关系)。

按“是非题”分流数据。L(List):要分流的数据列表;P(Pattern):分流规则(True/False 列表);输出:A端 = 所有 True 的数据;B端 = 所有 False 的数据。例: 列表 [5,8,11,14],规则 [True, False, True, False]→ A输出 [5,11],B输出 [8,14]。常用场景:1. 筛选大小:用Larger Than组件生成判断(>10的为True),把列表中的大数和小数分开;2. 奇偶分离:用Even判断序号,把点分成奇偶两组,分别处理;3. 按条件分流:比如长度>5的曲线放A组(保留),≤5的放B组(删除)。