当前课程知识点:Grasshopper参数化设计与建模 > 第四章 Grasshopper数据结构(一) > 4.4 案例:项链 > 4.4.2
返回《Grasshopper参数化设计与建模》慕课在线视频课程列表
返回《Grasshopper参数化设计与建模》慕课在线视频列表
下面我们在Rhino里画一条曲线
把格点锁定打开
比如说这条曲线
我们想把这些珠子串到
这条曲线上好像一条项链
那么这里我们对这个程序做一个改造
可以把它再复制一份出来
我们用一个Curve把曲线拿进来
Set one Curve
接下来我们对曲线做一些操作
会用到一些关于Nurbs曲线的操作
大家可以先照这个来做
后面会专门介绍这个原理
这个曲线我们要做的一个操作就是
鼠标右键在这里选择Reparameterize
把它的参数进行标准化
然后我们还会用到一个叫做Evaluate Curve
注意Evaluate有很多的选项
然后我们还会用到一个叫做Evaluate Curve
注意Evaluate有很多的选项
我们选择Evaluate Curve
注意Evaluate有很多的选项
我们选择Evaluate Curve
把Curve给它
然后我们把这里经过排序的点
经过排序以后的随机数
把这个随机数给t
这样我们就得到了一个
可以说一个新的点的序列
这里有了点之后
我们其实就可以把这里的点都替换掉
这里有了点之后
我们其实就可以把这里的点都替换掉
OK 然后把它删掉
这样我们得到了一个新的程序
这个程序可以以一条曲线作为输入
然后生成一个好像项链的效果
但是现在还没有那么完美
我们看一下这里
我们先把前面的预览都关掉
只看最后的结果
这里的预览大家看到它
并没有完全贴在一起
这个是因为我们在
Display里我们可以去设定
对于Preview Mesh Settings
我们可以选择High Quality
高质量
那么这里显示的效果就会改善
就会比较好看
我们看到这些球都是一个个相切
或者基本相切的形式串在一起的
但是这里还有一个问题
我们把它编到这的时候
仔细看这个程序它有一个问题就是
本来我们的项链是从这里开始
到这里结束的
我们说这个项链它并没有
到这里结束的
我们说这个项链它并没有
完全都串上珠子
端头和最后缺了点儿
完全都串上珠子
端头和最后缺了点儿
这是因为我们在这里生成的这些随机数
得到的这些点
这是因为我们在这里生成的这些随机数
得到的这些点
我们把它打开看一下
这些点并不包括起点和终点
我们把它打开看一下
这些点并不包括起点和终点
所以我们这里可以通过Insert
在List里面插入元素的方式
把一开始第一个点和最后一个点插进去
这个操作我们可以用End Points
一个Curve的End Points
它的Start Point和End Point
我们把这两个点
插入到这边的List里面去
这儿有一个List 然后把Start Point
就是它的Item
插入到它的位置这里我们设定是0
那么得到一个新的List
接下来我们把End Point也插入到
那么得到一个新的List
接下来我们把End Point也插入到
由这个List得到的
我们看到是由这个List
这是我们的随机数
经过Evaluate Curve得到的一系列点
首先在它的最前面插入这条曲线的起点
然后我们把这个List
再去插入一个终点
在这个List把曲线的End Point插进去
这里的End Point我们需要做一个操作
刚才做了类似的操作
这有个比较简便的方法
我们先把这个List进行Reverse
然后在0的位置上插入
插入完了以后再把它Reverse
就起到了在最后一个位置上
插入数据的作用
就起到了在最后一个位置上
插入数据的作用
然后我们有了这个结果以后
把刚才的这些从这里出来的输出替换掉
替换掉以后我们看看
这些球现在就比较完美
这里还是没有 查一下是什么原因
原因在于我们这边的List的长度
经过Insert第一个和最后一个点之后
List的长度已经发生了变化
所以我们直接在这里用24-1的方式
List的长度已经发生了变化
所以我们直接在这里用24-1的方式
去切掉最后一个点的方式就不合适了
实际上这地方因为List长度增加了2
所以我们在这里Expression要变成x+1
那么这样就可以完美地解决
这个数据的对应问题
现在我们现在对这个程序的格式
把它的编程稍作一些调整
让它看起来更清晰一些
那么下一步大家也许可以想一下
比如我们在做项链的时候
可以有不同的材料
比如说在这里比如说大珠子
我们用一种材料小珠子用一种材料
比如说在这里比如说大珠子
我们用一种材料小珠子用一种材料
我们把相关的预览先关掉
这样看起来清晰一些
我们把相关的预览先关掉
这样看起来清晰一些
那么在这里我们就可以用到Dispatch
我们对这些球做一个Dispatch
让它分到不同的路径上去
这个Pattern从哪里来呢
这个pattem就从
我们说larger than
就说 OK
这里求到的这个珠子的半径
我们根据这个珠子的半径
这里求到的这个珠子的半径
我们根据这个珠子的半径
用一个slider 0.2 或者0.02
一个0.02的一个slider
然后根据这里产生的pattem
把珠子分到不同的路径上去
那么有一种是
那么球在rhino里头呢
就是一种surface
我们可以把这个球拿到这儿来
然后把这些预览都关掉
看看它是不是能起到dispacth的作用
好 确实起到了这个作用
就是把一些球挑出来
那么我们说另外一些球呢就在这里
好 那么在grasshopper里面
其实我们可以用display底下的review
这里有一个叫做custom preview的方式
我们可以不用现在
就是我们已经熟悉的这种
红色或者绿色的方式
半透明的红色或者绿色的方式来显示
grasshopper里面的物体
我们可以用这样一种方式
grasshopper里面的物体
我们可以用这样一种方式
用这个preview呢我们可以给它一个材质
那么给下面的球呢也给它一个材质
那么最简单的办法是在material这里头
修改这两种不同的material
那么在这儿有一个叫做create material
在display里要用create material
分别给这两种球给它不同的 material
大家如果有兴趣的话
分别给这两种球给它不同的 material
大家如果有兴趣的话
可以去修改这里的diffuse
它的~~的材质
可以去修改这里的diffuse
它的~~的材质
比如说可以有一个在这个08:39 里面
它的~~的材质
比如说可以有一个在这个08:39 里面
我们看到这里有一个叫做colour picker
colour picker的这样一个~~
我们把这个08:50 给它
我们可以去改变它
比如说它是一个u 可以去改变
如果它是一个什么样的材质
比如说它是一个u 可以去改变
如果它是一个什么样的材质
什么样的颜色
大家都可以去做调整
-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物理模拟--第九章习题
-期末作业: 综合运用
--期末大作业