标签: Curve_Spline

  • grasshopper随机在曲面上抽离结构线算法

    grasshopper随机在曲面上抽离结构线算法

    grasshopper随机在曲面上抽离结构线算法

    算法如上图

    [intense_hr type=”solid” size=”large” title=”实现的思路” title_tag=”h3″ title_background_color=”#ffffff” title_position=”left” icon_type=”pencil” icon_position=”left” icon_size=”1″ icon_color=”#1a8be2″ /]

    1. 选择出曲面的短的边界,并计算出边界的长度。
    2. 把计算得到的边界的长度输入到随机运算器中,得到一系列的随机数。
    3. 把随机数量输入到 Construct Point (点)中,会得到一系列的随机点。
    4. 最后用Iso Curve(结构线)算出随机的结构线。

    [intense_hr type=”solid” size=”large” title=”注意要点” title_tag=”h3″ title_background_color=”#ffffff” title_position=”left” icon_type=”pencil” icon_position=”left” icon_size=”1″ icon_color=”#1a8be2″ /]

    1. 被计算长度的边界一定要是短边,否则最后生成的结构线必然会超出曲面范围。
    2. 第二是注意边界线段的轴向和随机点排列的轴向一定要一致,否则也可能会出现上面的情况。
    3. 如果生成的结构还是超出曲面的范围,这个就属于不可避免的范围,暂时我也没有找到造成这种情况的原因,不过这种情况还是有应对方法的,方法就是把多出的线条删除掉。这个我在明天的文章再来讨论这个问题。

    随机结构线的效果

  • grasshopper水立方表皮建模算法

    grasshopper水立方表皮建模算法

    接着昨天发布的软包模型制作的教程,继续深化软包(水泡)的算法。,昨天那个软包的几个点我自己差点都看晕了,生成的那几个点很难看清楚之间什么关系,这次我改进了下这个软包的算法,再加上文字的标记,总算能看得清楚了。

    下图中不管是向量还是中轴线都必须用点来指定的,一定要搞清楚点的关系。相比至于昨天的算法,这次我把那些数据的拍平都在分组,这样的好处是他们的路径关系更加统一,这样利于数据之间的匹配。


    ​这个算法电池图:

    关键字:grasshopper 水立方表皮犀牛 voronoi

  • Grasshopper水泡表皮制作算法

    Grasshopper水泡表皮制作算法

    grasshopper软包(类似水立方表皮的效果)教程

    效果见下图这个


    方法:


    1. 创建闭合的平面曲线
    2. 寻找曲线图形的中心点
    3. 制作垂直于曲面的中轴线
    4. 绘制软包的截面曲线
    5. 截面曲线沿着中轴线旋转成型

    截面曲线


    截面曲线是用grasshopper的贝塞尔曲线运算器(BzSpan)生成的,这个运算器A和B两个端口输入曲线的两个端点,At和Bt两个端口输入相对应两个点的法线方向(点的指向方向),这里法线方向我用两点向量(Vector 2Pt)生成,注意At的方向要与中轴线垂直,而Bt的方向则要与平面曲线垂直。

    算法:


  • grasshopper寻找曲面的任何一个点第二种方法

    grasshopper寻找曲面的任何一个点第二种方法

    昨天使用一个简单的方法可以找到曲面上的一个点《grasshopper找到一个曲面上任意一个点并作这个点的法线方向》,不过这个方法有个弊端就是不大容易控制点的位置。特别是寻找接近边缘的点,控制不好,找到的点就偏离原有曲面了。这次我换了另一种思路来来实现这个功能。

    [intense_hr type=”solid” size=”large” title=”原理” title_tag=”h3″ title_background_color=”#ffffff” title_position=”left” icon_type=”arrow-right” icon_position=”left” icon_size=”1″ icon_color=”#1a8be2″ /]

    找出曲面的边界(上图①编号运算器器),把边界定位到原点坐标上(上图③,至于②的作用是找定位点),再找到这条边界的任意一个点(④号运算器),⑤号运算器的作用是算出改点所对应曲面位置的“结构线(ISO Curve)”,输出的结构线有两条,那我们这里只要与之前那边界垂直的一条再算出这段曲线的任意一个点即可。

    [intense_hr type=”solid” size=”large” title=”本期出现的运算器” title_tag=”h3″ title_background_color=”#ffffff” title_position=”left” icon_type=”arrow-right” icon_position=”left” icon_size=”1″ icon_color=”#1a8be2″ /]

    ①Brep edge:抽离曲面的边界。

    ②End Points:输出线段的端点,有一个起点,另一个是终结点

    ③Orient:对齐平面,关于orient这里有一篇以前的写的文章《grasshopper运算器-点坐标定向(orient)

    ④Point On urve:寻找曲线上的点。《grasshopper寻找曲线的中点

    ⑤ISO Curve:抽离结构线

  • 如何在grasshopper中截取曲线的任意一段曲线-sub-curve

    如何在grasshopper中截取曲线的任意一段曲线-sub-curve

    已知一条曲线的,那截取其中一段曲线可以使用Sub Curve运算器。

    Sub Curve运算器中的低端口要输入截取的“子曲线”的长度区间,比如[20,50]、[0,120]这样的区间段。

    [box] 使用方法:

    1.使用Length运算器计算出曲线的长度(length见如何在grasshopper中测量曲线的长度 (Length)

    2.输出的曲线的总长度乘以截取的子曲线段的百分比,这样得到子线段的长度区间(Domain)(两个参数)

    3.区间最后输入Sub Curve的D端口内,最终输出子线段

    [/box]