有关nurbs曲线的一些资料

上传人:kms****20 文档编号:40982501 上传时间:2018-05-27 格式:DOC 页数:4 大小:27KB
返回 下载 相关 举报
有关nurbs曲线的一些资料_第1页
第1页 / 共4页
有关nurbs曲线的一些资料_第2页
第2页 / 共4页
有关nurbs曲线的一些资料_第3页
第3页 / 共4页
有关nurbs曲线的一些资料_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《有关nurbs曲线的一些资料》由会员分享,可在线阅读,更多相关《有关nurbs曲线的一些资料(4页珍藏版)》请在金锄头文库上搜索。

1、有关有关 nurbsnurbs 曲线的一些资料曲线的一些资料有关 nurbs 曲线的一些资料.txt有关 nurbs 曲线的一些资料(2005-12-19 08:14:36) 分类:设计软件使用技巧 转帖自夸夸奇坛 CG 软件技术区 Rhino 专区发帖者:ayongo关于 NURBS 曲线NURBS 是 Non-Uniform Rational B-Splines(非均匀有理 B 样条)的缩写。一条 NURBS 曲线中有四个重要的定义项目:degree 值,Control points 控制点,knots 节点和 evaluation rule 评定的规则。degree 值degree 的值

2、是一个正整数。这个值通常为 1,2,3 或 5。在 Rhino3.0 中,一般情况下,它最高可以设置到 11。RHINO 的 Line 和 Polyline 的 degree 的值为1。Circle 的 degree 的值为 2,而大部分 RHINO 的自由曲线的degree 的值为 3 或。RHINO 所使用的 NURBS 曲线的 degree 的值可以设置从 1 到 32。在对曲线或曲面进行匹配时,我们通常根据不同的degree 的值,将其称之为 Linear,Quadratic, Cubic, Quintic。 Linear 代表着 degree 的值为 1,Quadratic 代表着

3、degree 的值为2, Cubic 代表着 degree 的值为 3 ,Quintic 代表着 degree 的值为 5。NURBS 曲线的 order 是个正整数,且等于 degree+1。所以 degree 的值等于 order 1。在改变 NURBS 曲线的 degree 的值的过程中,增加曲线的 degree 值对曲线的形状不会有什么影响,但是要减小曲线的 degree 时,就很难保证曲线的形状不发生改变。Control points 控制点Control points 最少是 degree+1 个点。移动控制点,是改变 NURBS 曲线最简单的方法。RHINO 提供了很多方法来移动

4、控制点。如果需要有较大弹性的自由曲面,你可以只使用鼠标来快速的移动和改变控制点,以绘制你的模型。Control points 有一个相关的值-Weight。除了少数例子外,weight 的值通常是正数。Control points 是一串至少是 degree+1 个点,此曲线状况称之为non-rational;而如果 weight 的值并不完全相同时,此曲线状况称之为 rational。NURBS 曲线中的 R 为 rational 的缩写。但这只是代表这条曲线有可能是 rational。在范例里,有大部分的 NURBS 曲线都是 non-rational。只有一些 NURBS 曲线是 rat

5、ional,如:圆,椭圆等明显的案例。RHINO 提供一些工具来检测和更改 Control points 的 weight 值。knots 节点knots 节点是一串 degree+N-1 的数字,其中 N 为 Control points的数字编号。在这里的 vector 并不是指 3-D 向量或方向性。这串节点数字必须符合一些技术上的条件。这里列出了几项符合knot 技术上所需要的条件值。基本的条件为:这连串的数字必须相同,或顺序越后的数字越大,而且如果数字重复了,重复的次数不可以超过 degree 的值。例如一 degree 的值为 3 的 NURBS 曲线,其Control point

6、s 的数量为 11,而这串数字为0,0,0,1,2,2,2,3,7,7,9,9,9,符合 knot 数字串的要求。但假如 knot 数字值为0,0,0,1,2,2,2,2,7,7,9,9,9,这就不符合技术上所需要的条件值了。因为有 4 个 2,已超出了 degree 的值 3 的数量。相同的 knot 数字值的数量,我们称之为 multiplicity.在上一个范例中,符合了 knot 技术上所需要的条件值,其 knot 值为 0 的有multiplicity 3,其 knot 值为 1 的有 multiplicity 1,其 knot 值为 2 的有 multiplicity 3,其 kn

7、ot 值为 7 的有 multiplicity 2,其 knot 值为 9 的有 multiplicity 3。当 knot 的 multiplicity 值与其 degree 的值一样时,我们将之称为 Full multiplicity。在上一个范例中,knot 的值为 0,2,9,都是 Full multiplicity。当 knot 的 multiplicity 值为 1 时,我们将之称为Simple multiplicity。在上一个范例中,knot 的值为 1,3,都是 Simple multiplicity。假如一曲线其 knot 的值开始于 Full multiplicity,然

8、后接着Simple multiplicity,结尾又是 Full multiplicity,而且其值之间的间隔相同,那这个 knot 称之为 uniform。例如一 NURBS曲线,其 degree 的值为 3,Control points 的数量为 7,knot 的值为 0,0,0,1,2,3,4,4,4,那此曲线就可称之为 uniform 曲线。而假如 knot 的值为 0,0,0,1,2,5,6,6,6,那此曲线就不是 uniform 曲线,我们称之为 non-uniform。NURBS 里的 NU 字母就是 non-uniform 的缩写。表示 knots 节点在 NURBS 曲线中是

9、允许non-uniform 的情形。相同的 knot 数字值的数量,如果集中在值的中央部位,那这一NURBS 曲线是较不圆滑的。例如有一曲线其 knot 值的中央有一 Full multiplicity,那就是表示此 NURBS 曲线会被弯成一锐角。因此,有些人会想要以增加或减少 knots 的数量,然后调整 Control points 使得曲线变得更加平顺或更锐利。RHINO 提供了工具让你自由的增加或减少 knots 的数量。之前有提到过 knots 的值为degree+N-1,其 N 为 Control points 的值。所以当你增加 knots 的数量,同时也增加了 Control

10、 points 的数量;减少 knots 的数量,同时也减少了 Control points 的数量。knots 的数量可以被增加,而不会影响到 NURBS 曲线的外形。而在一般情况下,减少数量会影响到 NURBS 曲线的外形。RHINO 提供了一个减少 knots 的进阶工具,当你删除 Control points 时,它会自动调整 knots 的位置到最适当的位置。Knots 和 control points一般人常会误解,在 NURBS 曲线里的一个 Control points 会对应一个 knot。而这种情况通常只会发生在 degree 的值为 1 的 NURBS 曲线上(通常是 p

11、olylines) 。在 degree 的值较高的 NURBS 曲线上,是由 degree+1 个 Control points 群组对应 2 倍 degree 值的 knots群组。例如:假设我们有一个 degree 值为 3 的 NURBS 曲线,其Control points 为 7 和 knots 为 0,0,0,1,2,5,8,8,8。这时,前四个 Control points 和前六个 knots 为一组。而第二到第五个 Control points 和 knots 0,0,1,2,5,8,为一组。而第三到第六个 Control points 和 knots 0,1,2,5,8,8 为一组。最后四个 Control points 和最后六个 knots 为一组。NURBS 的评定工具RHINO 提供评定工具,你可以选取一条 NURBS 曲线,键入parameter 的值,从而产生其相对应点。观念上,knots 的值决定了 B-spline 的基本函数。而 B-spline 的函数在 parameter 中决定了如何平均 Control points 和 weights 来产生点。关于 Evaluation rule(评定的规则)和 B-spline 函数更详细的讨论和说明,你可以在许多的文献和其它的网页中找到。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号