Rhino(犀牛)中国技术支持&推广中心


Grasshpper&Kangaroo材料褶皱模拟

06.08.2014, Grasshopper, Kangaroo, by .

作者:@Dixon

0000.jpg
    在网站上看到国外朋友模拟的材料褶皱效果,觉得挺有趣,因此也用kangroo 做一个模拟效果的测试,如上图所示。以下简要叙述思考方法。希望对学习kangroo的朋友有有一定帮助。
    基本思路:我们设置一个基本球体作为收缩形体,收缩后的效果,可以想象一个足球没有打气的时候会是什么样子?
    因此我们先再gh中制作一个球形网格物体,注意他的结构是类正三角的。因为布料皱褶的方向是随意的任何角度都可能出现,这种结构的网格相对于矩形结构网格来说,其弯曲的方向比较没有明显的纹理走向的影响,因此效果比较自然,具体制作这个网格的方式在这里就不仔细说了,效果如下图所示。
000.jpg
材料分析:
    类似布料这样的材料产生皱褶,可以考虑几个基本的力:
    1.材料本身的伸缩力:这是kangroo力模拟材料最基本的一个力,如果我们要模拟类似布料这种材料,那么模拟过程中它的伸缩性并不明显(表面积变化不大),因此我们将球体网格的边提取出来,接入connection 和接入 rest length。这样可以保持材料在开始模拟后表面积基本保持不变。
001.jpg
    2.表面张力
    如果没有表面张力,那球体收缩的时候就容易自交和产生不光滑的表面。因此加入张力如下图:
002.jpg
    3.膨胀力
   足球里面因为有气体产生膨胀力吧足球鼓起来,因此我们需要加入膨胀力。需要注意的是新版本的kangroo加入了一种新的膨胀力,这种膨胀力的大小根据物体体积的大小随之变化,相对于之前的直接设置膨胀力比较(力的大小恒定)它更加合理,因为:物体内部的膨胀力跟他的体积是有换算的关系的。这也是我们这个例子中最关键的一个力,起到调整收缩程度的作用。,如下图所示。
003.jpg
    Volume(体积):这里设置希望物体膨胀后的体积数值,根据这个数值,会输出对应的膨胀力。因为我们只希望物体缩小(产生皱褶),因此先计算出当前球体网格的体积,成一个(0~1)之间的比例系数,比例值用slider控制。K是气体常数,这个值在这里我们不做细致的的解,从效果上来说, 值为0时没有任何效果,我们建议该范例中设置为0.05.
    将这三个主要的力设置好之后输入kangroo的物理核心,并将mesh输入geometry,如下图所示、
004.jpg
    解析来就可以开始kangroo的力学模拟来看效果了。注意的是,在打开模拟之前,请务必将气体体积比例值滑块设置为1,因为在开模模拟钱,必须保持球体体积更实际是一样的。在开启模拟之后,组建的将这个值减小,注意要逐步一点一点的减小。因为十几场中,球体内部的气体不可能一一下子全部漏掉,所以我们力学的模拟也要模拟一个过程,逐步减小体积,否则球体会一下子剧烈收缩,导致模拟不出正常的结果。
    另外为了模拟效果更好,我们还额外增加了一些力,例如:为了更好的避免网格自交,加入了SphereCollide 。为了避免球体过快收缩引起模拟失败,加入了AnchorSpring以减缓模拟速度。这些力的使用并不是必须的,可以在模拟调试过程中根据需要添加并测试效果。
    具体每个力的大小这位置为多少?这也并不是固定的,需要缝隙不同力的重要程度来做尝试性设置,一般来说并不是一次就能成功,需要根据结果缝隙调整来得到合适的效果。
    完整电路图如下所示:
006.jpg
以下为设置不同收缩体积时后得到的不同皱褶效果。在以下模拟中,比较难控制的是:如果皱褶比较多,那么就容易自交(打结),因此需要尝试不同的参数长测试得到细致的褶皱效果。
009.jpg
010.jpg
011.jpg
012.jpg
014.jpg
    本篇教学并不是系统教学,因此简要介绍过程中的思路重点部分,在2014年暑期开设的rhino原厂参数化设计课程中,对kangroo的使用有较为全面和细致的介绍,对此感兴趣的同学可以留意我们的网站 shaper3d.com ,谢谢!
    Gh文件在这里下载,请注意如果需要正常开启这个文件,您需要安装谁新版的kangroo和Weaverbird,这两个插件都是免费的,可以在 www.food4rhino.com 上下载使用。
    转载请注明出处,对本文的内容感兴趣或有任何问题,可以前往论坛参与讨论

2 则回应给 Grasshpper&Kangaroo材料褶皱模拟

  1. 請問zip檔密碼是什麼?

    回复
  2. 2015-12-12 at 14:47 孫揚淂

    您好~請問zip檔密碼是什麼?

    回复

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

click to changeSecurity Code

div class=div class=