标签: grasshopper教程

  • Grasshopper系列教程-网格整列点生成

    Grasshopper系列教程-网格整列点生成

    今天我们来讲解Grasshopper网格点阵列的内容。

    agond www.3dsc .com

    这5个运算器输出的是常见的多边形矩形阵列,除了输出多边形阵列之外,还输出多边形阵列的点。

    Hexagonal:蜂巢六边形网格阵列。

    Radial:环形矩阵的阵列。

    Rectangular:矩形矩阵阵列。

    Square:正四边形阵列。

    Triangular:三角形排列的阵列。

    L'.JWW. 3dscg.com

    这几个运算器都有些共同的参数设置,一般有以下几个。

    P:阵列的起点。

    Sx:阵列中单位格子的边长大小,这里指的是x轴的大小。

    Sy:阵列中单位格子的边长大小,这里指的是y轴的大小。

    Ex:X方向上格子的数量。

    Ey:Y方向上格子的数量。

    输出端口的参数。

    输出端口的参数。

    C端口输出网格多边形

    P端口输出网格多边形交叉点

    计算机生成了可选文字: opul02b Populate3D 卩0》10G•••trY 、N.3dSC.com

    Populate 2D:随机散步2d点

    Populate 3D:随机散步3d点

    Populate Geometry:几何体内随机云点。

    www dscg . com

    这几个运算器都是用来生成离散的点,它们也有几个共同的参数。

    R(G):生成离散点的有效范围。3d离散点是输入一个正方体。随机离散云点输入一个3d几何图形。

    N:输入生成离散点的数量。

    S:输入离散点随机因子。每输入一个不同的整数会输出一个新的离散点分布。

    P:清理P点范围内的点,这个可能不太好理解,那么请看下图的算法演示

    在上图中,我们曲线是输入了一个圆圈,然后把圆圈进行78份的等分点,把这些点输入p端口中,我们可以看到下面有一个奇妙的现象出现。

    效果图如下,在下图中随机点,中间出现一个空缺的圆圈,这个空缺就是圆圈的等分点所消除的。

    计算机生成了可选文字: 、00000〕

    [elementor-template id=”7418″]

  • Grasshopper-磁场力运算器的运用

    Grasshopper-磁场力运算器的运用

    今天我们来讲讲Grasshopper的电磁场的运用。

    使用磁场,我们可以创建出一些运动的曲线,比如直线运动,圆周运动或者扩散运动这类的运动状态。如果使用常规的做法,我们会非常的困难,但是用磁场的话就轻而易举了。

    今天的课程只是简单的列举一下他们的用法,同学们可以用今天所学到的内容自己去做一些实验。

    好。

    好了,我们来开始今天的Grasshopper课程吧。

    计算机生成了可选文字: www.3dscg.com

    Line Charge:条形磁场。

    这个运算器通过实取直线产生直线两侧的条形磁场。

    计算机生成了可选文字: www.3dscg.com

    在下图中我们看到直线的右侧的点都在做远离直线一侧的方向运动,而且点距离线的位置远近,力的大小也会有所不同。

    计算机生成了可选文字: stg .cam

    Point Charge:点电荷磁场。

    这个运算器用点来控制磁场力的方向,它有4个参数,C参数用来控制磁场力的大小,如果c的值是正值,它就是排斥力,如果是负值就是吸引力,低值用于控制它的衰减的力度,直值越大,衰减越小,如果衰减值等于0,则这个电荷的力没有衰减。

    计算机生成了可选文字: 36.10 0 0 1.980 www.3dscg.com

    在下图中我们可以看到,带箭头的点都受中心电荷的影响,往四周移动。

    计算机生成了可选文字: www. sc g.cam

    Spin Force:自转力

    这个运算器会给周围的点产生圆周运动的力。

    S值的大小是调节力的强度。

    R值的大小是调节磁场的半径。

    D值是调整磁场的衰减程度。

    计算机生成了可选文字: -3610 0 0 2826

    在下图中我们可以看到中心点周围的点,因为受到自转力的影响,产生了旋转偏转的运动。

    计算机生成了可选文字: .3dscg .cam

    Vector Force:矢量力,让点往一个方向运动的力。

    计算机生成了可选文字: .3dsc .cor

    在下图中我们可以看到所有的点都跟随直线的运动。

    计算机生成了可选文字: stg .cam

    计算机生成了可选文字: Yield FieldLl www3dsc℃om

    Break Field:分解磁场力,使合并的磁场力分解。

    Merge Fields:合并磁场力

    Evaluate Field:评估磁场,这个运算器用于计算磁场的方向。

    Field Line:创建磁场线。使磁场成为一种可见的形式,表现在画面上。这个运算器是我们使用磁场来做设计的最终目的。使用这个运算器,大家一定要注意保存文件,因为把磁场线创建出来,表现在画面中,往往会伴随大量的图形计算,如果数据控制不好的话,有可能会发生文件崩溃的情况。

    计算机生成了可选文字: 囗 韧 Directionlay Perpendicular盯1“ Scalar蘄I T色0or1生Y www.3dscg.c_Q_m_

    Direction Display:使用彩色图像来显示方向。

    Perpendicular Display:使用彩色图像来显示垂直方向。

    Scalar Display:使用彩色图像来显示标量。

    Tensor Display:使用彩色头像来显示张量。

    [elementor-template id=”7418″]

  • Grasshopper系列教程-反转矩阵,数据编组,数据合并运算器

    Grasshopper系列教程-反转矩阵,数据编组,数据合并运算器

    我们今天继续来学习Grasshoper的课程,这次学习是几个简单而且常用的运算器,他们是用于控制分组的合并与分解的。

    计算机生成了可选文字: 3 Flip Explode Tree www.3ds c .corn

    Entwine:把数据编入既定的分组内。

    在下图中我把第1分组的数据输入00的编号里面第2分组的输入01的编号里面。02编号的分组没有输入数据。

    r端口输出编号分组的树形数据,要注意,因为02端口没有输入数据,所以02分组了是空的。

    Flatten 2 3dscg_ 2 www.3dscg.com

    Explode Tree:分解树形数据。

    这个运算器比较简单啊,大家看一下下面的运算就可以了。

    S 3dgcg_con wvvw .3dsc .corn

    Flip Matrix:反转矩阵数据

    这个运算器在我们平时的grasshopper的设计里面都非常的常用,我们经常会把它用来翻转点阵的纵向和横向的排列。

    对于翻转点矩阵的排列的,在我以往的文章里面都有所提到啊,大家可以在我的网站里面搜索相关的内容。我这里就不展开讨论了,如果大家有什么疑问的话,可以在下面的语言窗口评论,这里只是简单的介绍翻转举证的它的原理跟用法。

    在下图中我们可以看到00分组里面的数据是AA,bb和零课刻学堂,01分组的数据是cc,dd和3dscg.com。

    这一个分组数据输入翻转举证之后,他被翻转为三个分组,每个分组里面有两个数据。

    这个翻转矩阵的运算器的原理就是说把每一个分组的编号按顺序提取,之后把它们组合成一个新的树形数据。

    比如00分组和01分组里面他们的序号0的数据分别是AA和cc,提取了这两组数据之后,再组成一个新的组。

    冫 学 堂 01 }

    Merge:合并分组数据。

    这个运算器的使用方法也非常简单,就是把把数据输入到相应的窗口,最终输出的是一个拍平的数据。

    S coz .3dsc _corr

    Streu P utar Stream Gate www.3dsc acorn

    Stream Filter:分组数据过滤器。

    在下图中我们可以看到g端口输入1,输出端口输出的数据就是1端口里面的数据。

    wwvu 3dsc .com

    Stream Gate:这个运算器的使用方法不明,这里也就不再展开讨论了,大家如果对这个运算器有什么看法的话,可以在下面的评论区留言。

    4 3dgcg_con 4 3dgCg.COm

    [elementor-template id=”7418″]

  • Gasshopper-系列课程-数据结构运算2

    Gasshopper-系列课程-数据结构运算2

    今天我们继续去讲解grasshopper数据结构的内容。

    www.3dscg.com

    Match Tree:匹配树形数据的路径,这个运算器跟我们之前讲过的那个匹配的运算器是一样的。

    在g端口输入要匹配的树形数据。

    езеО • мим зэкрие.щ ЧУМ езеО —

    Shift Patchs:偏移树形数据路径。这个运算器的作用是把树形数据的路径进行移动,移动之后把位数相同的合并起来。

    在下图中我们观察红框内的数据路径,偏移之前红框内路径的前三位是一样的,偏移之后把这些一样的路径合并成一个,这样它路径的位数也相应的减少了一位。

    brarches 16 ко;с;'}

    Splite Tree:分割出其中一段树形数据。这个运算器的作用就是用来提取某一段路径的数据。

    在下图的m端口,我们输入了两个数据的路径,输出的p端口输出这两个路径的数据。

    这里要注意的是,路径的写法一定要符合规则。规则就是用花括号包住编号,路径编号的位数用分号隔开,而且是最后一位不能有分号。

    | 0 ; 0 ; 0 0 0 ; 0 ; 0

    Path Mapper:路径映射器。这个运算允许我们任意的改变数据的结构。如果灵活应用的话,我们将会更加方便的更改数据结构。这个运上去的基础功能和我们之前学过的一些改变数据结构的运算器的作用类似,也有一些重复的类型。

    点击右键设置Mapper的类型

    Mapping Editor... Create Null Mapping Create Flatten Mapping Create Graft Mapping Create Trim Mapping Create Reverse Mapping Create Renumber Mapping Enabled Help...

    Create Null Mapping:创建一个普通类型。

    Create Flatten Mapping:创建一个拍平数据的映射类型。

    Create Graft Mapping:创建一个分组数据的映射类型。

    Create Trim Mapping:创建一个偏移路径的映射类型

    Create Reverse Mapping:创建一个反转编号的数据类型。

    Create Renumber Mapping:创建一个精简路径编号的数据类型。

    这个运算也有它的高级应用的方式,然后这部分内容我们在后面的是课程再进行展开讲解。

    [elementor-template id=”7418″]

  • Grasshopper系列教程-匹配数据结构

    Grasshopper系列教程-匹配数据结构

    Data With 8 branches 曲 面 等 分 点 数 据 结 构 Data With 8 branc hes 曲 面 分 割 0 2 最 终 输 出 的 2 数 据 结 构 曲 面 等 分 点 www.3dscg.com 零 刻 学 堂 Data With 8 branc N 己 5 囝 参 照 用 的 数 据 结 构 . 3dsc 嘰 C 0 0 〕

    接着我们上节Grasshopper课遗留下来的一个问题。

    我们怎么来理解这么一个运算器?

    这里我再重新重复一下这个运算器的作用:这个运算器的作用就是用来匹配一个作为参考的列表的路径。

    比如说原来的路径是两个0,而我们要把它的路径改为三个0。这样我们除了可以使用之前学过的方法来修改路径之外,我们也可以用一个现成的列表作为参考,然后把这个列表的路径直接搬运过来使用。

    在上图中我标记了三个标注。

    他们分别是:

    1. 原来的数据结构。
    2. 作为参照匹配用的数据结构。
    3. 最终输出的数据结构。

    从上图我们得知2和3的数据结构是完全一样的。通过这么一个简单的操作,我们就能够任意改变数据的结构。

    那么为什么我们要去改变数据的结构呢?

    以我个人的总结,我认为有以下几点原因要去改变数据结构的。

    1. 原始的数据结构过于复杂,过于复杂的数据结构是不利于我们操作数据列表的。
    2. 数据结构精简之后,便于我们做数据的匹配。

    改变匹配的数据结构,我们要注意以下的几个问题。

    1. 数据结构的分组必须一样。
    2. 数据结构每个分组里面的数据数量也必须一样

    好了,以上就是我对这个运算器的理解,

    如果大家有什么问题的话,可以在下方的留言窗口下评论。

    [elementor-template id=”7418″]

  • Grasshopper系列教程-树状数据结构得到操作(拍平和分组)

    Grasshopper系列教程-树状数据结构得到操作(拍平和分组)

    今天讲的grasshopper的内容是非常重要的,我们会分为三期的课程来讲。这一类的运算器是如何处理树状结构数据的。对于数据的处理Grasshopper里面是最为重要的。

    g.com ena _ - 1 10.1

    N端口代表null数据,X端口代表空的数据

    这个运算机的作用主要用来清除,我们在计算中产生一些无效的数据。这个比我们之前学习的那个要筛选之后再来清除,要高效的多。

    把数据列表拍平,这个在glass opera上面是非常常用的,在每个运算器端口点右键有个向下的箭头图标和这个是等效的。

    拍平电池在默认情况下把路径设置为一个0,如果要设置为两个人可以在p端口里面填入两个0。

    计算机生成了可选文字: • ÄeeÅng1e (

    把数据列表变为树状结构,这个操作和拍平是相反的。我们平时把这个运算器也称之为分组数据的运算器,因为它的功能就是把数据进行分组。

    我们要需要glasshopper,一定要注意数据什么时候要分组,什么时候要排停。

    因为用grasshopper做设计,最重要的就是对数据的排列与组合。用电脑计算出来的排列组合来组合出我们设计上的创意。

    om

    删除小数据的分支

    在下图当中,等差数列列表被分为三个一组和两个一组的分组数据,把这个分组数据输入到t端口中,N0和N1分别输入两个数据,如果这两个数据比分组数据的数量更多的话,他就会把这个数据清除掉。

    计算机生成了可选文字: . Icom

    精简树状数据的路径层级。

    在下图当中我们可以看到数据的结构是三层级别的,经过一个精简之后,它只变成了一层。

    With 10 branch— Data with 1m

    这个运算是用来统计树状列表的数据,在下图当中我们可以看到第1个输出端口,输出的是数据的具体内容,第2个参数输出的是每个分组的里面的数据数量,第3个参数是输出分组的数量。

    ο 10

    这个运算器是用来精简数据的路径的。

    下图中我们可以看到它是一个分组数据啊,经过精简之后,我们看到它输出的只有一层的路径级别。

    这样的用法,有点像拍平运算器。

    Data with1branches N = 10 τη

    Unflatten Tree :让数据跟随导入的数据的树状数据结构。

    计算机生成了可选文字: 0a0h的b「引跹h一 WWW.3dg.CO

    这个运算器比较难理解,我们这节课不张开讨论,我在下面贴一个应用的算法,在下一节课我将详细说明它的运算逻辑。

    with 8 branches Data Wlth 8 branches lData Wlth 8 branc

    [elementor-template id=”7418″]

  • Grasshopper系列课程-文本的操作

    Grasshopper系列课程-文本的操作

    ​我们今天来学习Grasshopper的文本编辑的内容。

    文本编辑在设计当中一般被用于材料的标识,编号排列等等。

    文本编辑工具使用侧重点在于对文字的增删改查拼接等操作,这部分操作大都不难,只要认真学习今天这节课的内容就可以很容易掌握了。

    好的那么久开始今天的Grasshopper课程吧。

    计算机生成了可选文字: i t Join T Lengeh Split www.3dscg.conJ

    characters:把字符串分解成单子

    image.png

    concatenate:链接字符

    image.png

    Text Length:计算出文本的长度

    image.png

    Text Join:使用连字符链接文本

    在下图中使用了句点连接了文本。

    image.png

    计算机生成了可选文字: wwvv.3dsc@.com

    Format:文本格式化

    F端口数据序号格,格式规则是按{n}的格式书写,其排列顺序不做要求,0 1端口数据文本数据,T端口输出的按照格式规则排列数数据输出。

    下图中我们可以看到“零刻学堂”被编入{0}的位置里,“跟着Link学参数化”被编入{1}的位置里。

    image.png

    Text Case:转化字符的大小写,U端口输出大写,L端口输出小写字母

    image.png

    ​Text Fragment:截短文本,从第一个字符算起,按设定的数量截短文本,一般用于去掉文本开头一些无效字符

    image.png

    Text Trim:这个也是截短文本,但是只对开头的空格有效,具体看下图文本的变化吧

    image.png

    计算机生成了可选文字: sort .com

    Match Text:匹配文本,如果匹配到输出Ture,否则输出False

    image.png

    Replace:替换文本,替换设定的文本,大家看下的算法吧

    image.png

    Sort Text:按字母顺序重新排列文本

    image.png

    Text Distance:计算两个文本片段之间的Levenshtein距离。

    image.png

    [elementor-template id=”7418″]

  • Grasshopper系列教程-数据列表项目的修改与查找

    Grasshopper系列教程-数据列表项目的修改与查找

    我们这节课学习关于Grasshopper成员搜索的相关知识,这部分知识在我们设计当中并不是特别重要,同学们只要做一些了解就可以了。

    计算机生成了可选文字: www.3dscg.com

    Carthesian Product:Ab两个序列按编号分组,要求两个组的数据个数一样。

    image.png

    Disjoint:检测a列表的数据是否在b列表中存在,如果存在输出false,不存在输出true.

    在下图中4已经包含在b列表中了,所以输出了false。

    image.png

    Member Index:计算出项目的编号。

    在下图中我们要计算的项目是3,最终计算出它的编号是1

    image.png

    Replace Member:替换集合中的项目。

    在下图中第1个参数输入列表,第2个才是输入序列号,第3个

    image.png

    SubSet:判断a列表是否包含b列表。

    在下图中a不在这个等差数列之内,所以输出了false。下图第2个等差数列是0~3,这个数量是包含在a数列里面的,所以输出ture

    image.png
    member  Key/vaue search  www.3dsc .corn

    Delete Consecutive:删除列表中类似的项目。

    在下图中的列表有两个a,w值输入ture就把列表中的a给删除掉了。

    image.png

    Find similar member:查找列表类似的成员。

    在下图中要找到的主要是a,说出了结果它的序列号是1。

    image.png

    Key/Value Search :根据数据键值对来搜索。

    在下图中,第1个参数输入列表的序列号,第2个参数输入要搜索的列表,第3个参数输入要搜索的序列号,最终输出该序列号的所对应的参数。

    image.png

    [elementor-template id=”7418″]

  • grasshopper系列文章-集合的运算

    grasshopper系列文章-集合的运算

    这节课我们来学习一下关于集合的Grasshopper的算法。在grasshopper中关于集合的概念的我在前面的几节课已经有提示提及过了,呃,大家可以去到这篇文章里面去看一下,《grasshopper数据结构的几个基础概念》

    计算集合的作用就是找到一些共有的元素或者找到一些有差异性的元素。

    image.png

    Create Set:创建集合,这个基本上用不上的,就算不接这个运算器也可以创建集合,我们来看下面的算法,一个等差数列输入到一个集合的运算器里面之后它输出了又是一个集合。

    image.png

    Set Difference:集合的差集运算。

    在下面的算法中,A的列表和b进行比较,最终输出的列表是减掉b共同拥有的项目。在B列表中和A列表共有的元素是0和1,所以在结果中他们都被减了。

    image.png

    Set Difference(s):集合的差集运算,这个差距运算和上一个不太一样的地方,就是它输出是多个列表的集合。

    我们从下面的算法可以看出来,输出端口输出的值是包含了a和b里面的元素的,列表里面是减掉了共有元素的。

    image.png

    Set Intersection:计算交集。

    在下面的算法中,我们可以看到a和b这两个列表输入到计算交集运算器中,最终输出的值是0和1。

    image.png

    Set Majority:Ab计算交集和c计算并集,最终输出的是ab的交集,加上c。

    在下面算法中,我们看到abb计算出来交集是0和1,c是4,最终结果是0 1 4

    image.png

    ​Set Union:计算列表的并集。

    image.png

    [elementor-template id=”7418″]

  • Grasshopper系列教程-数据列表的相关操作运算器

    Grasshopper系列教程-数据列表的相关操作运算器

    我们今天来说说Grasshopper的数据列表的知识点,数据列表就是包含多个数据的列表了,当然也可以只有一个数据,我们平时所说处理往往是多个数据的列表。数据列表在Grasshopper的使用过程当中是占有相当大的比重的,其实我们也可以这么说,我们用Grasshopper做设计,80%以上是在做数据的组合排列,就是在堆砌组合删除各式各样的数据,所以要会用Grasshopper就必须学会怎么灵活的操作数据列表了。

    不过我们今天的课程不太难,大家跟着我的节奏,这节课先把Grasshopper这些数据列表的运算器的名称和大致用法搞清楚。

    image.png

    Insert Items:插入列表,这个运算器的作用是当我们想要一把一个或几个元素加入到一个大的数列里去的时候使用的。

    image.png

    在上图当中,数列aa,bb,cc插入1,2,3,4,5,6的数列当中,插入的起始位置为序号(Index)3,结果输出的数列为1,2,3,aa,bb,cc,4,5,6

    Item Index:搜索Item的序号,如果搜索不到输出-1,但是下面的实验不管怎么做的都是输出-1,不知道是方法问题还是软件BUG,如果有找到问题解决方法的同学可以在下方给我留个言。

    image.png

    List Item:筛选指定项,这个运算器是我们Grasshopper设计过程中最常用的运算器之一了,参数化设计过程只要是选择物件的话,基本都要用这个,其用法也非常简单,只要输入指定的整数就可以了。

    image.png

    上图中输入1,输出序号为1的项目bb,List Item放大只有可以加增加或减少端口。

    image.png

    List Length:清单的长度,计算输入的列表的数据个数,这个也是非常之常用的。

    image.png

    Partition List:把数据列表分组,这里涉及到分组的概念,我这里先简单的说明一下,在grasshopper中如果没有分支的的数据,我们称之为线型数据,也就是不分组的数据,但如果数据一旦有了分支,我们则称分支(或者分组)数据为“树形数据”,其路径的表现形式为{0;0},{0;1}…..,我们在Panel中也能明显看出分组和不分组的表现样式。

    image.png

    就上图的算法,Partition List的S端口可以输入一个数据或者多个数据。当输入2时,一个List被分为每两个数据为一组,当输入1,3时,则被分为1个数据1组,3个数据3组,然后重复这样的规律分组,知道List被分割干净为止。

    Replace Items:替换数据,当我们要用新的数据去替换原来列表的某些元素的时候,就要用到Replace Items,其用法和插入Item类似

    image.png

    上图的算法中,i端口输入2,则在原数列的序号2开始替换。

    Reverse:反转数列,这个没什么好说的,大家看下面的算法吧。

    image.png

    Shift List:偏移数列的编号,这个运算器是运用好Grasshopper的重点工具,我们要让建筑表面发生错位,偏转等效果一般都会用到这个运算器。

    image.png

    就上图的算法,原数列是3 1 bb aa,当S端口(偏移位数)输入1时,整个列表就偏移了一位,成为新的数列(1 bb aa 3).

    Sort List:重新排列数据,让杂乱的数据(特指数值)安装从小到大的顺序排列,算法看下图。

    image.png

    Split List:分割数据列表,把一个长数据列表分割为短的列表,使用方法如下

    image.png

    Sub List:获取列表中的子列表,这怎么理解呢?打个比方吧,一个班有60人,一天老师要分配个任务,他说我们班里20-40座位号的同学去打扫操场,大概就怎么一个意思了。

    image.png

    上图的算法中,D(区间)端口输入2(就是指区间【0,2】),那么获取序号在0-2范围内的元素,得到子列表aa bb cc

    [elementor-template id=”7418″]