作者: LinkLi

  • 世界,您好!

    欢迎使用 WordPress。这是您的第一篇文章。编辑或删除它,然后开始写作吧!

  • 20根据图片生成多边形空洞纹理

    20根据图片生成多边形空洞纹理

    纹理特色


    • 正方形矩阵排列
    • 每一个点赋予正多边形
    • 正多边形半径随着载入的图片变化其半径大小
    • 可以自由调节正多边形的旋转方向

    算法步骤


    • 1️⃣ 用square运算器制作正方形点阵
    • 2️⃣ 导入背景图并输出灰阶值
    • 3️⃣ 灰阶值作为半径值输入给多边形
    • 4️⃣ 调整多边形的角度参数
    • 5️⃣ 生成网格曲面实体

    详细步骤


    1️⃣ 用square运算器制作正方形点阵

    正方形点阵算法用的时Square运算器,这次算法是主要是限定了图片的长宽比例,比如本案例中图片的长800,宽600的纵向3:4的比例,因此用已知的长度去除以网格横向的数量,得到格子的尺寸大小,再把这个尺寸载入到Square的Size端口,这样就可以了。

    等到网格之后,用Polygon Center运算器计算出格子的中心点,这里有个点药说明的是,本次案例涉及的点面数较多,计算图形的中心用Polygon Center会好用点,它的计算比Area运算器更快。

    Grasshopper算法如下图

    2️⃣ 导入背景图并输出灰阶值。

    导入背景图用运算器是图像采样器(Image Sampler)
    双击图像采用其进入采样器内部选择图片的地址,设置采样器的输出通道,在下图所示

    1. 导入图片地址
    2. 设置最大点阵的最大范围,注意的是这里的最大范围数据一定要跟上个步骤的图片长宽一致,这样图片才能完美的覆盖点阵
    3. 选择输出颜色通道为灰阶

    3️⃣ 灰阶值作为半径值输入给多边形

    灰阶值输出的时候是0-1之间的浮点数(小数),直接给多边形的话,多边形半径会显得很小,比例非常不合适,因此给灰阶值做数值映射。

    首先把灰阶值映射成1-0的数值,这只要是原本0-1的值会让输出的结果导致生成的图片有一种“负片”的效果,所以把图片的值翻转过来。

    第二是放大灰阶值,这里采用的方式乘以二分之一网格边长的方式,这样多边形半径则被限定在单位网格之内。

    第三是要再乘以一个缩放系数,这样可以后续可以变化网格点大小,不至于完全限定死参数。

    4️⃣ 调整多边形的角度参数

    最后还得调整多边形的参数,因为多边不是圆形,直接输出的多边形有可能是横着摆放或者斜着摆放,这样就得对参数进行校正,以达到设计的目的,不过这里没有对角度校正做完全的参数化设置,如果需要修改角度,需要自行计算其旋转的角度。

     

    5️⃣ 生成网格曲面实体

    如需要输出点阵着色图案,那就生成网格曲面实体。

     

    Grasshopper算法电池图下面购买下载

  • Brep Plane 计算物体和平面相交

    Brep Plane 计算物体和平面相交

    运算器作用:

    计算一个 Brep 和一个平面之间的相交事件(也称为截面)。该运算器可以生成截面曲线和截面点,用于分析几何体的截面特性。

    输入参数:

    B (Brep):
    基础 Brep:需要与平面进行相交计算的基础几何体。

    P (Plane):
    截面平面:用于与 Brep 相交的平面。

    输出参数:

    C (Curve):
    截面曲线:由 Brep 和平面相交生成的曲线。

    P (Point):
    截面点:由 Brep 和平面相交生成的点。

    应用范围:

    1. 建筑模型的截面分析
      输入:一个建筑模型的 Brep 和一个水平平面
      输出:建筑模型的水平截面曲线,用于分析楼层布局。

    2. 机械零件的加工路径
      输入:一个机械零件的 Brep 和一个垂直平面
      输出:零件的垂直截面曲线,用于生成加工路径。

    3. 复杂几何体的形状研究
      输入:一个复杂的自由曲面 Brep 和多个平行平面
      输出:一系列截面曲线,用于研究几何体的形状变化。

    通过该运算器,设计师和工程师可以高效地分析和操作几何体的截面特性,满足多种设计和工程需求。

  • 皮耶加托于设计的索阿韦椅子

    皮耶加托于设计的索阿韦椅子

    皮耶加托于 2018 年设计了索阿韦椅子(#soavechair),并在 2019 年完成注册。这把椅子于 2019 年在日本的一座寺庙中展出。
    这是一把富有情感的椅子,像是在挥手打招呼或道别,挥手的动作在索阿韦椅子的细节中得以体现。
    索阿韦椅子的线条 ,如同可调整的折叠线,恰似随风或在手中拨动的沙子一般。

    算法截图:

    建模思路:

    • 1️⃣ 创建基本截面曲线
    • 2️⃣ 将截面曲线移动到相应的位置
    • 3️⃣ 放样椅子的曲面造型
    • 4️⃣ 计算椅子的等距断面线
    • 5️⃣ 把等距断面线挤出成曲面
    • 6️⃣ 缩短整体造型到结构线范围之内。
    • 7️⃣ 在犀牛Rhino中生成曲面的厚度。

    算法步骤详解:

    1️⃣ 创建基本截面曲线

    基本曲线在XZ立面上绘制,绘制一个椅子中心截面,和椅子一端的截面线。

    2️⃣ 将截面曲线移动到相应的位置

    移动椅子端口的截面线到距离中心线450mm的位置,然后把这个线镜像复制到椅子的另外一端,本文用是移动到椅子的另一端,是因为用镜像的话,会让镜像的线方向变成相反方向,故不适用镜像的方式。

    3️⃣ 放样椅子的曲面造型

    按顺序把曲线的连入Loft运算器的端口上会生成椅子的基本曲面,但是曲面会因为曲线起点未对齐而发生曲面扭曲,这里解决的方法是在Loft的O端口(Option)点击右键,进入设置界面,勾选对齐曲线(Align )选项,这样生成的造型就正常了。

    4️⃣ 计算椅子的等距断面线

    把曲面连接如等距断面线运算器内,参数分别是椅子一端曲线上的中心点,方向Y,和间距,其中间距为椅子横向总宽度除以分片的数量。

    5️⃣ 把等距断面线挤出成曲面

    把生成的等距断面线挤出成曲面,挤出长度要刚好等于等距断面线的间距。

    6️⃣ 缩短整体造型到结构线范围之内。

    由于最后一个挤出后是超出其设定的范围的,所以要把生成的曲面整体单轴缩放回原来的结构线之内,缩放的比例=设定宽度/(设定宽度+单个等距断面线的间距)。

    7️⃣ 在犀牛Rhino中生成曲面的厚度。

    由于Grasshopper不擅长做有厚度的物体,一般我们都会把Grasshopper的对象Bake成犀牛曲面之后做厚度,厚度可以根据实际情况给定。

  • Flip Curve 翻转曲线方向

    Flip Curve 翻转曲线方向

    运算器作用:

    该运算器用于通过可选的参考曲线翻转目标曲线的方向。如果目标曲线中超过 50% 的方向与参考曲线的方向相反,则目标曲线会被翻转,并将“翻转操作”设置为 True。如果未提供参考曲线,则目标曲线始终会被翻转。

    输入参数:

    C (Curve) 端口:

    曲线:需要翻转方向的目标曲线。

    G (Curve) 端口:

    参考曲线:可选的参考曲线,用于判断目标曲线是否需要翻转。

    输出参数:

    C (Curve) 端口:

    翻转曲线:经过翻转操作后生成的曲线。

    F (Boolean) 端口:

    翻转操作:指示是否执行了翻转操作的布尔值。

    应用范围:

    Flip Curve 运算器在几何建模和参数化设计中具有重要作用。通过翻转曲线方向,可以确保曲线的方向与设计需求一致,特别是在路径规划、曲线匹配和复杂几何形状的构建中。

  • Simplify Curve 简化曲线

    Simplify Curve 简化曲线

    运算器作用:

    该运算器用于简化一条曲线,使其更易于处理,同时尽可能保留其原始形状。通过减少曲线的控制点数量,可以优化计算性能或简化几何形态。

    输入参数:

    C (Curve) 端口:

    曲线:需要进行简化操作的目标曲线。该曲线定义了简化的基础形状。

    t (Number) 端口:

    偏差容差:可选参数,表示允许的最大几何偏差。如果未提供,将使用当前文档的默认容差值。

    a (Number) 端口:

    角度容差:可选参数,表示允许的最大角度偏差(以弧度为单位)。如果未提供,将使用当前文档的默认容差值。

    输出参数:

    C (Curve) 端口:

    简化曲线:表示经过简化操作后生成的曲线。如果输入曲线已经满足简化条件,则输出与输入相同。

    S (Boolean) 端口:

    是否修改:一个布尔值,表示曲线是否被修改。如果曲线被简化,则返回 True;否则返回 False

    应用范围:

    Simplify Curve 运算器在几何建模、数据优化和参数化设计中具有广泛应用。通过对曲线进行简化操作,可以减少控制点数量,优化曲线的复杂度,同时保留其几何特性。设计师可以利用该工具提高计算效率,简化几何形态,或清理导入的几何数据。

    注意事项:

    • 如果输入曲线已经是最简化状态,输出曲线将与输入曲线相同,且布尔值 SFalse
    • 容差值的选择需要根据具体应用场景进行权衡,过大的容差可能会导致几何失真。

    示例:

    假设有一条复杂的曲线 C,我们希望在偏差容差为 0.01 和角度容差为 0.1 的条件下对其进行简化:

    输入:

    • C: 一条复杂的曲线
    • t: 0.01
    • a: 0.1

    输出:

    • C: 简化后的曲线
    • S: True (曲线被简化)

    通过调整 ta 的值,可以控制简化的程度。

  • 犀牛命令连连看小游戏,帮助记忆犀牛命令的好帮手。

    犀牛命令连连看小游戏,帮助记忆犀牛命令的好帮手。

     

    犀牛命令连连看



    游戏通关

    通关时间: 秒


  • Offset Curve 偏移曲线

    Offset Curve 偏移曲线

    运算器作用:

    该运算器用于以指定的距离对曲线进行偏移操作。通过输入曲线、偏移距离、参考平面以及角点类型,可以生成偏移后的曲线。

    输入参数:

    C (Curve) 端口:

    曲线:需要进行偏移操作的目标曲线。该曲线定义了偏移的基础形状。

    D (Number) 端口:

    偏移距离:曲线偏移的距离。正值表示向外偏移,负值表示向内偏移。

    P (Plane) 端口:

    参考平面:用于定义偏移操作的平面。偏移操作将在该平面内进行,确保结果曲线与参考平面一致。

    C (Integer) 端口:

    角点类型:用于定义偏移曲线的角点处理方式。可能的值包括:

    • 0 (none): 不处理角点。
    • 1 (sharp): 保持角点为尖锐形状。
    • 2 (round): 将角点处理为圆角。
    • 3 (smooth): 将角点处理为平滑过渡。
    • 4 (chamfer): 将角点处理为斜角。

    输出参数:

    C (Curve) 端口:

    偏移曲线:表示经过偏移操作后生成的曲线。该曲线根据输入参数的设置生成,可能包含平滑或尖锐的角点。

    应用范围:

    Offset Curve 运算器在几何建模、路径规划和参数化设计中具有广泛应用。通过对曲线进行偏移操作,可以生成平行曲线、调整曲线形状或创建复杂的几何图案。设计师可以利用该工具灵活控制偏移距离和角点处理方式,从而满足不同的设计需求。

  • Evaluate Curve 分析曲线

    Evaluate Curve 分析曲线

    运算器作用:

    该运算器用于在指定参数处对曲线进行分析。通过输入曲线和参数值,可以计算出曲线上对应点的坐标、切向量以及曲线在该点的内外角度。

    输入参数:

    C (Curve) 端口:

    曲线:需要进行分析的目标曲线。该曲线定义了参数化范围,运算器将在该范围内进行计算。

    t (Number) 端口:

    参数值:曲线域内的参数值,用于指定曲线上的位置。通过调整参数值,可以在曲线上选择不同的点进行分析。如果勾选Reparameterize选项,则曲线的长度参数会重映射为1,即参数值范围为0到1。

    输出参数:

    P (Point) 端口:

    曲线点:曲线在指定参数值处的点坐标。该点表示曲线在参数值 t 对应位置的空间位置。

    T (Vector) 端口:

    切向量:曲线在指定参数值处的切向量。切向量表示曲线在该点的方向性,常用于计算运动方向或曲线的局部特性。

    A (Number) 端口:

    角度:曲线在指定参数值处的内外角度(以弧度为单位)。该角度表示曲线在该点的进入方向与离开方向之间的夹角,常用于分析曲线的平滑性或转折特性。
    该值等于0表示曲线在该点的进入方向与离开方向相同,如果不为0,则表示曲线在该点有转折。

    应用范围:

    Evaluate Curve 运算器在曲线分析、几何建模和参数化设计中具有广泛应用。通过在曲线上指定参数值,该工具可以精确定位曲线上的点,并提供切向量和角度信息。这些数据对于路径规划、运动分析以及曲线优化设计至关重要。设计师可以利用这些信息评估曲线的局部特性,从而实现更精确的几何控制和设计优化。