当前课程知识点:Grasshopper参数化设计与建模 >  第三章 Grasshopper基本数据类型 >  3.6 案例:螺旋曲面 >  3.6

返回《Grasshopper参数化设计与建模》慕课在线视频课程列表

3.6在线视频

下一节:4.1

返回《Grasshopper参数化设计与建模》慕课在线视频列表

3.6课程教案、知识点、字幕

本节

我们将给大家介绍一个案例

以螺旋曲面为例

演示复杂自由曲面的建模方法

下面再给大家介绍一个案例

就是如何生成一个螺旋曲面

为了生成这个螺旋曲面

我们首先在top视图上

围绕原点画一条

差不多是螺旋线形态的一条线

我们希望它大概是从x轴出发

逆时针旋转又回到x轴

这一个渐开的螺旋线

我们还需要画一条线

就是当我们要做一个

旋转的螺旋曲面时候

其实想做的事情跟Revolve

我们前面讲到的Revolve差不多

所以我们还需要一个section line

就是一条截面线

所以在这里我们找一个

打开格点捕捉

抓住这个原点之后

在Front视图里画一条

这时可以把格点捕捉取消

然后画一条曲线

这样我们就做了基本的输入准备

这个输入是这样的

下面我们分别用两个curve模块

把两条曲线拿进来

那么我们看到这两条curve

是我们的基础的曲线

一条是轨迹一条是section line

就是截面线

下面我们要做的事情

实际上是希望把

这个section line能够均匀的分布到

这条轨迹上去

所以我们要做的事情是

对这条轨迹做一个切分

切分成均匀的若干块

我们用一个Divide curve

这样我们就得到了十个均匀的切分点

接下来我们可以把这样一条截面线

把它移动到各个切分点上去

move 移动

注意

当我们要把这样一条curve

给它移到各个切分点的时候
当我们要把这样一条curve

给它移到各个切分点的时候

是需要有一个vector

就translation vector

那么移动什么方向多大的距离

那么这个其实也比较好生成

我们其实就是从原点

移动到相应的这些点上去

我们首先有原点XYZ

然后接下来这些是移动的终点

所以我们用一个输入vector

这里有Vector2Pt

就是用两个点生成一个vector

起点是原点

然后终点是线上的这些点

这样我们就有了translation vector

我们直接把这个vector给T

这样就把基础的截面线移到了

这些线上的点上面去

但是为了要形成一个

我们说螺旋曲面

我们如果在这里直接用Loft

显然并不是一个螺旋曲面的形态

因为我们的sec tion line需要自身也需要做旋转

这样才能形成一个向外螺旋曲面

我们先把Loft删掉

现在我们对每一条

移动后的曲线做一个旋转

Rotate

用基本的这个Rotate

那么我们做这个旋转的时候

需要给它Geometry 没问题

我们需要给它一个plane

这个plane其实就是需要有一个

原点或者说旋转的中心点

我们也可以把这个点直接接上去

让它作为旋转的中心

接下来需要得到的是这个A

A就是angle 就是旋转的角度

我们看到现在我们这个螺旋曲线

它的旋转呢应该说

我们这个section line

其实应该让它一共旋转
我们这个section line

其实应该让它一共旋转

从这里到这边一共旋转2π的角度

我们生成一个Range

前面我们用过Range

如果它的缺省值是0到1

等分10段

这个段数正好跟这边的这个截面是对应的

就是曲线的分段数是对应的

那有了这个以后我们输入一个π

然后让我们生成的这些

0到1之间的这些旋转的基本参数

输入到π里头

我们就得到了从0到π的旋转角度

当然0到π的角度不能满足我们的需要

所以在这里

我们还需要对参数做一个调整

鼠标右键

我们可以在这里加入一个expression

就是一个公式

我们输入x*2

那么刚才从0到1的旋转参数就变成0到2

从0.2一直到2

我们把这个角度给它

这样就能看到

我们所有的线都做了0到2π的旋转

但是很不幸的是

这个旋转角度正好反了

大家看到这条线并不是我们想要的旋转方式

实际上我们需要对这条线上的

这些section line的旋转角度再做一个梳理

怎么梳理呢 其实很简单

就是在输出的旋转角度这里

鼠标右键

做一个Reverse

Reverse的结果是

原来这里是从0到2π

经过Reverse以后会变成2π到0

经过Reverse我们看看

现在这些section line是不是都向外了

这个就是我们想要的section line

有了这些曲线以后

我们就可以用Loft或者用Sweep

我们用Sweep来做这样一个螺旋曲面

把最基本的这条曲线作为它的rail

然后把我们生成的这些旋转的面

作为它的section输入进去

这样得到了我们的基本的螺旋曲面

当然大家会说这样的一个螺旋曲面

看起来没有什么意思
当然大家会说这样的一个螺旋曲面

看起来没有什么意思

好 那我们给它一个高度的变化

比如说让这条曲线在中间比较高

转到外面后比较低

所以我们可以用一个Scale

这个Scale对我们旋转得到的这个

section line进行scale

它Scale的中心点

是在这些曲线的等分点上

那么还有一个factor

这个factor怎么确定呢

其实我们可以就用这里生成的range

直接把它接上去

但是这里又会出现一个问题

其实和前面我们遇到的问题是一样的

是因为有一个scale factor是0

所以这样的缩放方式

导致有一条曲线变成了长度是0

也就是不存在了

所以这里我们要做一点小的调整

在domain这边

我们用一个Construct domain

在Math底下

我们用这个运算器来

construct一个domain

它需要一个起点的scale

和一个终点的scale

我们把这个数值放大一点

便于后面调整

我们把起点变小

终点呢可以大一些

经过scale以后的曲线在这里

我们把这条曲线接到section line上面去

这样我们就得到了

一边大一边小的scale过后的曲线

但是这条曲线看起来

跟我们想要的中间高边上低不一致

所以很简单

我们还是在这里对生成的factor
所以很简单

我们还是在这里对生成的factor

鼠标右键做一个Reverse

这样就得到了中间高边上低的一个螺旋曲面

我们把不想看到的这些曲线预览都关掉

有了这条曲线以后

大家注意这里跟我刚才

一开始做的有点出入

因为我调整了初始的旋转角度

那么这个初始的旋转角度

导致这边的第一个section line

有一个不小的旋转

不是向外凸的了

所以在这里重新需要一个Range的运算器

把它替换掉

就是我们分别用两个range

生成不同的旋转角度和scale的比例

两个数据列

这样就生成了一个旋转的曲面

那么有了这个旋转曲面

大家就可以在这个的基础上
那么有了这个旋转曲面

大家就可以在这个的基础上

比如说我们对曲面的输入的基本参考线

做一个调整

对曲线的形状可以有一些

按照自己想法的改变

包括对于这一条section line

我们是不是可以让顶部收的更紧一点呢

或者放的更开一点呢

那么是不是可以让边上更高一点呢

或者让中间更低一点

这个大家可以回去

按照自己的设计的想法来进行调整

我们说这样一种螺旋线的形态

是一个基本的起点

其实大家可以在这个螺旋形态上

再做一些发展

比如说
再做一些发展

比如说

这条螺旋线是不是可以用程序来生成

我是不是可以让它是可调的

我们生成这个曲面的时候

一定要用Sweep这种方式吗
我们生成这个曲面的时候

一定要用Sweep这种方式吗

用截面线来sweep吗

是不是可以在不同高度上

生成不同的螺旋线
是不是可以在不同高度上

生成不同的螺旋线

然后再把它们loft在一起呢

我们是不是可以用这样的方式做出海螺

或者甚至做出花的形态呢

这些是我们今天的作业

在第三步

使用grasshopper

将截面线移动到均匀切分点

并且调整截面线的旋转角度参数

第四步

生成基本的螺旋曲面

第五步呢

回到
第五步呢

回到

调准输入的螺旋曲面的轨迹线和截面线

得到不同的曲面形态

Grasshopper参数化设计与建模课程列表:

第一章 参数化设计简介

-1.1 参数化设计简介

--1.1

--模型文件

第二章 Grasshopper简介

-2.1 Grasshopper简介

--2.1

-2.2 Grasshopper界面与基本操作

--2.2

-2.3 Bake与Internalize Data操作

--2.3

-第二章习题--作业

第三章 Grasshopper基本数据类型

-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

-第三章习题--作业

第四章 Grasshopper数据结构(一)

-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数据结构(一)--第四章习题

第五章 Nurbs曲线与曲面建模

-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曲线与曲面建模-- 第五章习题(二)

期中大作业

-期中作业:工艺品设计

--期中作业

第六章 Grasshopper数据结构(二)

-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数据结构(二)--第六章习题

第七章 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建模技巧--第七章习题

第八章 Mesh建模基础

-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建模基础--第八章习题

第九章 Kangaroo物理模拟

-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物理模拟--第九章习题

期末作业

-期末作业: 综合运用

--期末大作业

3.6笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。