当前课程知识点:Grasshopper参数化设计与建模 > 第九章 Kangaroo物理模拟 > 9.2 悬链线 > 9.2.1
返回《Grasshopper参数化设计与建模》慕课在线视频课程列表
返回《Grasshopper参数化设计与建模》慕课在线视频列表
在这一节
我们将演示
Kangroo插件的使用方法
说明悬链线的力学原理
以及建模的方法
并且
介绍纯受压壳体的找形
大家好那么我们现在进入kangaroo
来给大家做一些介绍
大家看到这边是kangaroo的这个界面
有刚才我们介绍过的
所有这些运算器
我们在rhino里头画了一条直线
然后把这条直线
装载在了这个curve里头
下面我们拿到这个curve的endpoint
我们说过一条线
因为在kangaroo里头我们基本的
这个模型是说是一个
particle system
是一个点组成的系统
因此这个点你看到
这个线的两端就是我们的
两个particle而之间的这个连线
就是两点之间的
作用力的一个表示
所以我们在这里可以
在kangaroo里头找到
用来表示两点间联系的
一个类似弹簧的一个基本的模块
我们看到这个就是叫做length
但是它不是一般的length
它是kangaroo里头的length
我们把这条线给它
那么这样就形成了一个
两点之间的一个弹簧
这个弹簧那么知道一个弹簧的话
它是会有一个松弛长度
所以在这我们看到
它是说如果我们这个地方
没有任何值接入的时候
它就认为这个线本身自己的长度
就是这个弹簧的松弛长度
另外这儿有一个strength
它相当于是我们说
对于弹簧来讲弹簧的硬度
或者说胡克定理
胡克定理里头这个
它的这个弹性模量的值
现在这个系统
它是有两个点两个particle
和中间的一根
处于松弛状态的弹簧组成的
所以这个系统
它不会做任何的运动
那么我们现在给它
加入其他的因素
首先我们让左边这个点
就这个起点让它是一个anchor point
是一个被约束住的点
也就是说这个点是不能动的
我们看到作为一个anchor point
它在这里也可以输入一个strength
就是这个点到底我把它
固定在这的时候有多大的强度
但是这个strength
现在确认值是1万
是一个很大的值
好 那么另外一方面
我们在另外一个点
这里有另外一个点
在另外一个点上
我们给它加上一个力
这个力是什么呢
我们在跟点有关的这些
运算器里找到load
就是荷载
我们把这个load
把它挪到上面去交换一下
看的清楚一点
那我们现在有一个这个load
这个load它需要有一个vector,force vector
现在我们看到它是一个向上走的
像Z方向走的一个vector
也就是说在这边这个点上
会有一个向上的力
我们现在
给它一个Z方向的向量
但是我给它反一下向 set expression -x
为什么要这样做
其实我希望能够做一个
单摆的实验
大家知道单摆是说
一端固定
另外一端有一个重物
然后这个是一个绳子
或者一根杆线
那么它会在这里摆动起来
如果是运动起来的话
它会摆动起来
就在这把这个重力
就是把它的受到的这个重力
变成一个
有一个向下的Z方向向下的
这样一个load荷载来表示
好 现在我们有了这三样东西
一个是anchor point
左边的anchor point
一个是load在右边
一个是这根线本身我们是一个
它是一根硬的杆硬的弹簧
硬的弹簧或者硬的杆
好 我们把它
现在我们要用到kangaroo里头的
我们先用这个bouncy solver
我们看到其实在main
就是主程序里头有不同的solver
有不同的solver
我们先用这个bouncy solver
我们看一下它的说明
它是一个用动量来做求解的
这样一个运算器
好 我们现在把这几个
按住shift以后
把这几个量都给它接上去
然后大家看到
已经出现了刚才我们想要的
单摆的效果
已经出现我们想要的单摆的效果
那么现在我们可以在这里加上
大家看到这一个reset
所以我们用一个button
button按钮 把它接上去
这样我们就可以随时的让
这个物理模拟从头开始
好 这个就是button效果
当然我们在这还可以输入
一个叫做toggle的这个地方
我们可以再输入一个叫做toggle
就是这是一个开关
这个开关我们可以双击它
它就打开或者双击它
它就停止
所以我在这儿
如果选了reset
但是因为这里的
模拟的on是一个false的状态
所以它并没有掉下来
所以我们在这如果双击
变成true的话
那么这个模拟就开始
大家注意在这个运算器上
有些信息
比如说刚才如果我们
在一个false状态
它叫做paused就是暂停
那么如果我们双击它开始
那么这时候是running
然后过了一段时间
当这边的点不再运动的时候
这里显示converged就是已经收敛
收敛了以后
那么它这个模拟就停止
我们在右边这边用一个panel
我们看一下这边显示的
这个I是什么
是叫做iterations
意思是说在这个模拟当中
执行了多少次的循环
或者说它模拟了多少步
这个iterations就是步数
或者是循环数
如果我们再从头来一下
大家注意
这个数字是不断变大
然后 当它达到一定值
停止的时候
这里也显示converged
也就是说这个系统已经
处于平衡和静止的状态
所以那么kangaroo也就不再
做继续的计算就停在这里
好 那么另外一个输出是out
但是现在我们看到它这里
有一个line
是因为我们在这里输入一个line
所以它有输出的一个line
我们用一个curve
可以把这样一个line给它接受下来
那么当然有另外两个
它们一个是anchor
一个是unary
或者说这个是一个load unary out
是一个方向的一个load
处于一种方向的一个荷载
好 所以现在我们可以把结果
可以在这里拿到
我们再执行一下
大家看一下
那么对于这样一个系统来讲
现在这根线是一根硬的一根弹簧
或者是一根杆
如果我们想把它变成一个软的
有像绳子的效果可不可以
其实是有可能的
我们在这里把这根线做一个rebuild curve
那么大家还记得rebuild
是对这条曲线进行重建
在这里我们设定它的degree等于1
等于1的话就是相当于是折线
然后在这里它的count是N
所以我们不去做任何的调整
这样的话经过rebuild以后
变成了这条线是分成
十个点的九段的一个折线
好下面我们把这条线给它分解开
explode
把这条线炸开
这样就得到了刚才说的
九条线有十个顶点
那么我们现在可以说
我们把这个九条线
得到九条线都分别变成spring
都变成弹簧
大家看到刚才的那个效果没有
我们现在已经得到了一个类似
我们说是一个绳子的效果
这个时候我们的所有的核载
都加载在端点上
但这根绳子是由九段的弹簧
组成的小弹簧组成的
所以现在我们也可以再演示一下
当然在这个系统在平衡之前
这里大概到2500次会停下来
但在系统平衡之前
我们一样可以通过
把它暂停的方式
大家注意到我们可以把
这个系统暂停下来
把这个模拟暂停下来
这样的话对于右边输出的这个
这根线我们是可以把它bake出来的
好那么可能对于大家
这个如果有特别的
涉及要求的时侯
其实在这里我们是可以
对这样的形态
刚才因为删掉了一条
我们可以对这样的形态
作为一个设计的起点
好也就是说过程中
我们得到的这样一个基本形态
也是可以在设计中加以利用的
那么下面我们在
这个程序的基础上
把它发展成一个悬念线的程序
这是我们前面的一张PPT
大家看到这个就是
所谓的悬念线就是两端固定
中间有若干个质点
然后用弹簧连在一起
这些质点受到重力的作用
而悬垂下来
那么它就会像一条铁链
或者是项链的这样一个形状
我们回到rhino和grasshopper
那么其实很多的基本元素
在这里都有了我们只要稍作调整
怎么调整 我们看到首先anchor point
不光是这一点 另外一点也需要
所以我们把两个点都输入到
这里的anchor上面去
同时重力的核载
不是作用在端点上
而是作用在所有这些节点上
所以我们可以把这里的V
在这里把P的输入替换掉
那么这样的话呢
就是相当于每个点上都有荷载
但是因为起点和终点
我们是用安可约束住的
所以这两个点上的荷载
实际上并不起作用
好 我们重启一下这个模拟
大家看到
那么这个系统就自动找到了
一个悬链线的形态
那么这个时候如果我们
对这个程序我们给它增加一些
比如说这里线的刚度
现在是10我们把它加大一点
比如说我们给他一个100的slider
你看看这个效果
当这个线它的刚度
或者说弹性模量增加的时候
那么它下垂的就会少一些
如果我们这个线变得越来越软
那么它就会下垂的越来越多
那如果你调到零的话
实际上就出错了
这个线就没有刚度
所以它会不断地下垂
同样我们也可以去
调整一下荷载的大小
这里的荷仔现在是一个单位
我们如果给它一百个单位
当然这会是一个很大的荷载
所以这个线会变成这样
我们也可以改小一些
得到这样的悬垂的效果
如果这个时候我们把这里的
公式的负X把它去掉
也就是说我们允许
这个荷载它是向上走的
那我们就会得到这样一个
向上起来的一个拱的形状
这里说拱实际上是说
它的形状不仅仅是看起来像拱
而是它的这个形状
实际上是比较合理的
是一个拱的形态
为什么这么说呢
我们来到我们的point
-1.1 参数化设计简介
--1.1
--模型文件
-2.1 Grasshopper简介
--2.1
-2.2 Grasshopper界面与基本操作
--2.2
-2.3 Bake与Internalize Data操作
--2.3
-第二章习题--作业
-3.1 Math运算器
--3.1.1
-3.2 点与向量
--3.2.1
--3.2.2
-3.3 Grasshopper曲线运算器
--3.3.1
--3.3.2
-3.4 Grasshopper曲面运算器
--3.4.1
--3.4.2
-3.5 案例:水波
--3.5
-3.6 案例:螺旋曲面
--3.6
-第三章习题--作业
-4.1 Grasshopper数据结构基础
--4.1
-4.2 数据流匹配
--4.2
-4.3 Dispatch运算器
--4.3.1
--4.3.2
-4.4 案例:项链
--4.4.1
--4.4.2
--4.4.3
-第四章 Grasshopper数据结构(一)--第四章习题
-5.1 Nurbs原理简介
--5.1
-5.2 Nurbs建模演示
--5.2
-5.3 Evaluate操作
--5.3
-5.4 由点建立曲线
--5.4
-5.5 Nurbs与向量
--5.5.1
--5.5.2
-5.6 案例:凤凰中心曲线环廊
--5.6.1
--5.6.2
-5.7 案例:鸟巢表皮钢结构
--5.7.1
--5.7.2
-第五章习题(一)--作业
-第五章 Nurbs曲线与曲面建模-- 第五章习题(二)
-期中作业:工艺品设计
--期中作业
-6.1 Grasshopper树状数据结构(1)
--6.1.1
--6.1.2
--6.1.3
-6.2 案例:2016年BIG事务所蛇形画廊
--6.2.1
--6.2.2
-6.3 Grasshopper参数化表皮
--6.3.1
--6.3.2
-6.4 案例:凤凰中心表皮结构
--6.4.1
--6.4.2
-第六章 Grasshopper数据结构(二)--第六章习题
-7.1 Image Sampler
--7.1.1
--7.1.2
-7.2 案例:望京soho表皮
--7.2
-7.3 Vironoi运算器
--7.3
-7.4 Metaball运算器
--7.4
-7.5 参数化设计在大型项目中的应用案例-“红飘带”景观装置
--7.5
--第七章 Grasshopper建模技巧--第七章习题
-8.1 Mesh原理
--8.1
-8.2 SubDivision与银河Soho案例
--8.2
-8.3 地形建模
--8.3
-8.4 面板划分:以银河soho为例
--8.4.1
--8.4.2
-第八章 Mesh建模基础--第八章习题
-9.1 Kangaroo插件简介
--9.1
-9.2 悬链线
--9.2.1
--9.2.2
--9.2.3
--9.2.4
-9.3 张拉膜,充气膜与可受弯面
--9.3.1
--9.3.2
-9.4 CirclePacking
--9.4
-结语
--9.5
-第九章 Kangaroo物理模拟--第九章习题
-期末作业: 综合运用
--期末大作业