NCF参数化建筑论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 84915|回复: 70
打印 上一主题 下一主题

[在线教程] 寒假Rhino入门教程系列第四课

[复制链接]
跳转到指定楼层
1m
发表于 2010-2-11 16:00:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
LESSON4 绘制2D物体(下)

上节课我们知道了建立曲线的命令,使用这些命令我们可以建立任何形状的曲线,数学意义上的或者单纯视觉造型意义上的。
事实上,在犀牛中,很多时候的曲线造型不是第一次通过曲线工具生成的。很多时候是通过各种曲线编辑工具调整和修改出来。
今天我们来学习各种曲线编辑工具的运用,同时今天的重点在第二小节对于nurbs曲线的理解,理解到了nurbs曲线的内在原理,任何造型对您来说都将不成问题了。

4.1 曲线编辑
4.1.1 曲线的分割和修剪

                               
登录/注册后可看大图

分割和修剪工具位于主工具栏的如下位置。分割和修建工具不仅适用于曲线,而且适用于曲面。
注意它不适用于以下对象:多重曲面、实体和网格。
同时对于分割和修剪工具您在一开始也最好理解到下面一点:
分割和修剪对于曲线和曲面产生的意义是不一样的。
被分割和修剪的曲面其实质是被"隐藏"。
但被分割和修剪的曲线其实质是被"抹掉"。
理解到这点可以帮助您在日后建模中避免许多错误。

                               
登录/注册后可看大图

例如我们把一个曲面用一条直线分成两部分。
我们再分别重建这两个曲面。在重建时取消重新修剪。

                               
登录/注册后可看大图

然后我们看到,被分割的两部分最后都被重建成了原来的完整曲面。

                               
登录/注册后可看大图

现在可以理解到了吧,被分割的曲面实质上是被复制一份出来,然后隐藏掉另外那一部分。

您现在不必进行这些操作,关于曲面部分我们还没讲,但对于分割和修剪工具的实际意义您可以提前理解到这一点。
我们来看如何分割曲线:

                               
登录/注册后可看大图

我们只想保留圆内部的曲线部分,我们点击修剪工具

                               
登录/注册后可看大图
Split),然后选取被分割物件,两根曲线,按ENTER

                               
登录/注册后可看大图

再选取切割用物件,也就是圆,按ENTER,这样这根曲线就被分割开来了。

                               
登录/注册后可看大图

修剪工具

                               
登录/注册后可看大图
Trim)用法我就不讲一遍了,与分割不同的是,它是先选取切割用物件,再点击需要被修建的部分,您现在可以尝试一下。

4.1.2
编辑曲线上的点
昨天我们简单了解了下曲线上有两种点,控制点(CV点),编辑点(EP点)


                               
登录/注册后可看大图

工具栏上的这两个工具可以打开曲线的这些"点"


                               
登录/注册后可看大图

如图,我们看到CV点有些处于曲线上,有些处于曲线外。EP点则都处于曲线上。
我们只要拖动这些点就可以改变曲线的造型。
另外我们可以给曲线增加一个CV点或者EP点,相关命令集打开这里可以看到。
大家现在有了许多教程,这些操作也很简单,我就不多讲了。

                               
登录/注册后可看大图



4.1.3 曲线编辑工具
曲线编辑工具相关的命令在工具栏的如下位置:

                               
登录/注册后可看大图

其中比较常用到的命令有下面这些:

                               
登录/注册后可看大图
延伸曲线:
和我们一般见到的延伸曲线有些不同,Rhino的延伸出曲线可以有很多多样性,它能在曲线后画出曲线、直线、圆弧。

                               
登录/注册后可看大图

延伸部分是和原曲线结合在一起的。

②结合曲线
昨天我收到两份字母表作业,他们完成的字母表都花了100多根曲线才完成26个字母,实际上最简只需要34根。


                               
登录/注册后可看大图

评分

参与人数 1强度 +3 照度 +30 收起 理由
skywoolf + 3 + 30 精品文章

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏4 分享分享
2m
 楼主| 发表于 2010-2-11 16:01:14 | 只看该作者
很多时候我们需要将很多曲线合并成一根曲线,譬如使用拉伸、sweep等命令时,我们只能追踪一根曲线
A 端点相接的曲线可以直接使用

                               
登录/注册后可看大图
结合(join)命令衔接。

                               
登录/注册后可看大图


B

                               
登录/注册后可看大图
衔接曲线(blendcrv:可以结合端点不相接的两根曲线,接合据鼠标点击位置最佳的两个端点。衔接方法需要自己定义,通常会改变某根曲线的位置。



                               
登录/注册后可看大图

                               
登录/注册后可看大图

C

                               
登录/注册后可看大图
混接曲线(match):混接曲线在两个端点未相接的曲线中间生成第三根曲线与它们都相切。再配合join可以获得一根曲线,注意它和衔接得到的效果是不一样的。

                               
登录/注册后可看大图



                               
登录/注册后可看大图
曲线倒角:前者是导圆角,后者导斜角,在命令行里设置参数。这个命令我们在
AUTOCAD里太熟悉太常用。不同的是,Rhino中的导圆角只能针对两根曲线,不能针对一根曲线(AUTOCAD有些情况下就可以)。而且Rhino中的倒角可以组合曲线,使用任何一个命令时,您都该注意它的参数。

                               
登录/注册后可看大图



                               
登录/注册后可看大图
偏移曲线(Offset):Rhino中的偏移工具非常直观,譬如它可以动态的给您显示最终效果。

                               
登录/注册后可看大图

使用
offset时,输入T参数,就可以手动控制偏移量,而且它会自动修剪多余部分。

曲线工具中还有其他一些比较常用的工具,例如

                               
登录/注册后可看大图
截断曲线(DeleteSubCrv)、

                               
登录/注册后可看大图
重建曲线(
Rebuild)、

                               
登录/注册后可看大图
(简化曲线)等,它们的使用方法非常简单。这里就不多讲了。

小节一下:在上面这些命令中,混接(
blend)和衔接(match)在曲面您也会遇到,是Rhino中非常重要的两个概念,这需要您在使用中注意理解。毫不夸张的说:到了后期复杂建模时,关于两者如何使用的博弈直接关系到您模型的好坏。

3m
 楼主| 发表于 2010-2-11 16:02:05 | 只看该作者
4.2 nurbs曲线的深入理解好了,到了今天的重点小节,本节比较难而且比较理论,请做好笔记以便复习。
4.2.1 何谓nurbs
Nurbs的中文全名叫:非均匀有理B样条曲线
前面提到过Photo中的钢笔工具就是B样条曲线,B样条曲线属于nurbs曲线。
不要奇怪上面那句话,B样条曲线实际上是非均匀有理B样条曲线的子集,"非均匀"和"有理"是附加在原始B样条曲线上的两个扩展属性,而不是对其限定。
那么什么是非均匀有理?反之则是均匀无理。Rhino实际上可以表示"非均匀""均匀"和"有理""无理"搭配的任意一种组合的曲线。例如"均匀有理""非均匀无理".....
Rhino中的NURBS有四个控制属性CV(控制点),EP(内插点),knot(节),degree(阶)
4.2.2"有理"和"无理"
从昨天看到的那个奇怪的三阶圆开始:

                               
登录/注册后可看大图

看上面的图,左边的圆是用第一圆建立工具得到的,右边的圆是昨天看到的三阶圆。我们打开它们的CV控制点,发现它们的CV点分布明显有区别。
昨天我说了右边这个圆是一个假圆,我们如何来证明:

                               
登录/注册后可看大图


我们先打开
rhino的分析工具集。我们高中学过圆的任意一点曲率半径都等于半径。
我们选取分析工具中的这个工具:

                               
登录/注册后可看大图
(曲率半径),我们在左边和右边那个圆上分别试一下,发现左边那个每个点上曲率半径始终不变,右边那个圆曲率半径发生改变。如图。

                               
登录/注册后可看大图

我们还可以使用另一个工具更加一目了然。

                               
登录/注册后可看大图
(开启曲率图形),这个工具的含义表示:通过白色曲线距离原始曲线的距离差来标示曲率变化。

                               
登录/注册后可看大图


左边这个曲率图形无论放到多大,它都是一根光滑的曲线,右边则在某些位置发生了突变。
因此,右边这个圆它只是一个近似圆,而不是真正的圆。

我们再来深入检查一下这两个圆的区别。

我们保持两个圆的CV点开启

                               
登录/注册后可看大图


                               
登录/注册后可看大图

我们使用这个工具来检查,每个点的"权重"值,权重是何物,先不要管。


第一个圆:

                               
登录/注册后可看大图

                               
登录/注册后可看大图

第一个圆,圆外的CV点权重为0.707107,圆上的CV点权重为1.0,别管这个数是啥意思,我们和它八竿子打不着关系。

我们再来检查第二个圆


                               
登录/注册后可看大图


我们发现每个点的权重都是1.0

我们再在命令行输入what命令检查一下右边那个个圆的属性

                               
登录/注册后可看大图

控制点:非有理,那么"有理"这个定义是相对于CV点而言。我们再用

                               
登录/注册后可看大图
这个工具更改第二个圆某个点的权值。


                               
登录/注册后可看大图

再次what检查其属性。

                               
登录/注册后可看大图

这个"圆"变成了有理曲线。

OK,我现在可以下定义了:
对于NURBS而言,CV点权重不同的曲线就是有理曲线,CV点权重相同的曲线就是无理曲线。
4m
 楼主| 发表于 2010-2-11 16:02:41 | 只看该作者
现在我们回头来看看什么是"权重"

                               
登录/注册后可看大图

很好理解,"权重"就像
CV点对曲线的引力,当CV点的权重越大时,那它对曲线的吸引能力也越大,通过这个属性来改变曲线的形状。(CV点权重的作用实质是在Knot节点上,我们后面会讲到。)
有理性实际上是对无理的一种扩展,通过附加CV点的权重值,让nurbs曲线有更丰富的造型能力。

4.2.3" 均匀"和"非均匀"
再来看何谓非均匀。我们使用建立曲线的第一个命令和第二个命令分别建立一根曲线。


                               
登录/注册后可看大图

what命令看看他们的属性:

第一根曲线:

                               
登录/注册后可看大图

第二根曲线:

                               
登录/注册后可看大图


第一根曲线是均匀的,而第二根曲线是非均匀的。
这里先要提到前面的一个概念,Knotknot中文翻译为"节",是个数据而不是点。Knot赋值于Knot点之间。下文我们就简称Knot为节点。
注意节点并不是EP(内插)点,在Rhino中我们无法打开节点进行拖动,但可以捕捉到它的位置,而且Rhino可以增加和减少节点。

                               
登录/注册后可看大图

我们使用

                               
登录/注册后可看大图
分割工具的P参数捕捉两条曲线节点,将他们分割。

                               
登录/注册后可看大图


我们的第一根曲线和第二根曲线都由三节构成,我们分别使用what命令检查每根小曲线。


上面的曲线:

                               
登录/注册后可看大图

                               
登录/注册后可看大图

                               
登录/注册后可看大图

下面的曲线:

                               
登录/注册后可看大图

                               
登录/注册后可看大图

                               
登录/注册后可看大图


大家看看红色框里面的曲线定义域,knot赋值的实际含义就是节点之间的定义域赋值。
Kont不是一个数,比如说01就是它的值。
上面的曲线有四个节点,分成三段,每个节点之间的kont赋值是均匀的,因此它是均匀曲线,下面的直线knot赋值是不均匀的,因此它是不均匀曲线。

OK,我又下定义了,nurbs中,一条曲线在其定义域内,knot赋值是均匀的,那么这根曲线是均匀直线;kont赋值若是不均匀的,那么这根曲线是不均匀曲线。

再次提醒下前面提到的一点,CV点的权重是影响节点的位置从而影响曲线的造型,现在您能理解了吧。

同理,不均匀是对均匀的一种扩展,可以看做它的父集。


4.2.4 曲线的"阶"
前面提到了nurbs曲线有四种属性"CV"、"EP"、"knot"和"degree"
前三种都讲了,我们来看看什么是曲线的degree
Degree很好理解,它就是曲线方程的指数。我们在Rhino中建立圆、抛物线、双曲线等,我们在中学几何学过它们的函数方程,例如圆是r²=x²+y²。那么圆曲线就是二阶的。
如图我们可以通过重建曲线命令得到该曲线的"阶"

                               
登录/注册后可看大图

一般来说,"阶"越高,那么得到的曲线就越光滑。

                               
登录/注册后可看大图




5m
 楼主| 发表于 2010-2-11 16:02:58 | 只看该作者
如图,黑线、紫线和红线分别是CV点分布相同的一阶、三阶、五阶曲线。
我们使用的Rhino默认建立的CVEP曲线都是是三阶的。对于建筑学的造型我们完全不需要更改,工业建模譬如汽车A级曲面建模它要求曲面的连续性,使用的曲线要达到五阶、七阶甚至更高。
Rhino现在的版本最高支持11阶,据说Rhino核心支持42阶,解42次方程那是什么概念,恐怕要到个人计算机256核时代才敢发放出来。

刚才我们讲了CV权重和knot赋值的属性,早期的3D建模程序没有这两个值,描述一个N+1 CV点的曲线需要N阶。
据此推算那么描述一个有30CV点的曲线,需要将曲线的"阶"调到29,解29次方程,早期的计算机根本没法解决。

nurbs技术由于CV权重和knot赋值的存在,低阶曲线也可以进行任何丰富的造型,我建议您在一般情况下就使用3阶曲线,通过扩展CV点来进行细致造型。

Rhino的确是一个非常好的建模工具,只要您理解到了它。

今天的课就讲到这里,我上传了一些nurbs资料到今天的课内附件中,有英文论文,还有关于nurbs算法的,有兴趣就看,没兴趣就不纠结了。今天的课比较理论,对您建模也不见得马上又很大的帮助,若是没有很好理解,您可以记下今天的内容,以后再慢慢理解。

今天的作业:
我给大家发了一个exercise.3dm文件,请拖动这个红色线的CV点去适合被锁定的曲线。(不要打开捕捉点,CV点不够可增加CV点)。

                               
登录/注册后可看大图
6m
发表于 2010-2-11 17:56:46 | 只看该作者
哈哈   又是沙发哈哈····{:3_64:}   辛苦LZ啦····
7m
发表于 2010-2-11 21:08:12 | 只看该作者
这贴非常之好,基础往往很重要呢
8m
发表于 2010-2-12 12:53:52 | 只看该作者
辛苦了,一早起来就来听今天的新课了
9m
发表于 2010-2-22 15:54:29 | 只看该作者
有些图挂啦
10m
发表于 2010-2-22 16:06:15 | 只看该作者
另外弱弱地问附近再那里下?
11m
发表于 2010-2-24 01:15:52 | 只看该作者
好晕。。。。。。。看不懂
12m
发表于 2010-2-24 14:42:01 | 只看该作者
过节后,坚决学习中,感谢楼主!!!!!
13m
 楼主| 发表于 2010-2-24 18:29:58 | 只看该作者
补充:这是比较清晰的pdf班,城市空间设计上也有
thunder0626 发表于 2010-2-24 12:19

你看到哪儿有?这是原创的。
14m
发表于 2010-2-25 10:47:28 | 只看该作者
楼主强人,工作量很大吧。。谢!
15m
发表于 2010-3-1 11:26:27 | 只看该作者
我这图片全都挂了,郁闷
16m
发表于 2010-3-1 23:48:32 | 只看该作者
幸苦啦 感谢啊~~~~~~~~
17m
发表于 2010-3-2 23:31:47 | 只看该作者
好啊 感谢啊非常
18m
发表于 2010-3-4 01:28:39 | 只看该作者
图全是叉叉,我哭!
19m
发表于 2010-3-4 16:55:59 | 只看该作者
wdc63 老兄 不知我把你的教程转换成pdf的传上来可以不 放你这里也行
20m
发表于 2010-3-7 23:11:06 | 只看该作者
对nurbs的解释真是到位 LZ太强了  太感谢LZ了

小黑屋|手机版|NCF参数化建筑论坛 ( 浙ICP备2020044100号-2 )    辽公网安备21021102000973号

GMT+8, 2024-11-27 11:24 , Processed in 0.117242 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表