b样条曲线曲面
B样条曲线曲面和NURBS曲线曲1

B 样条曲线曲面和NURBS 曲线曲面(学习笔记和上机练习)非均匀有理B 样条,通常简称为NURBS(Non-Uniform Rational B-Splines)。
NURBS 是非有理B 样条、有理以及非有理B ézier 曲线曲面的推广。
一、要对B 样条曲线曲面和NURBS 曲线曲面有所了解应先了解B 样条基函数 B 样条基函数的定义和性质令{}m u u u U ,...,,10=是一个实数列,即i u ≤1+i u ,i=0,1,…,m-1。
其中,i u 称为节点,U 称为节点矢量,用)(,u N p i 表示第i 个p 次(p +1阶)B 样条基函数,其定义为⎩⎨⎧=,0,1)(0,u N i 若i u ≤u <1+i u 值为1,其他值为0 )()()(1,11111,,u N u u u u u N u u u u u N p i i p i p i p i i p i ip i -++++++-+--+--= (2)由(2)式可知:(1))(0,u N i 是一个阶梯函数,它在半开区间),[1+∈i i u u u 外都为零; (2)当p >0时,)(,u N p i 是两个p -1次基函数的线性组合;(3)计算一组基函数时需要事先指定节点矢量U 和次数p ; (4)(2)式中可能出现0/0,我们规定0/0=0;(5))(,u N p i 是定义在整个实数轴上的分段多项式函数,只在区间][,0m u u 上有意义; (6)半开区间),[1+i i u u 称为第i 个节点区间,长度可以为零,因相邻节点可以相同; B 样条基函数的一些重要性质:1 如果),[1++∉p i i u u u ,则)(,u N p i =0。
2 对于所有的p i ,和u ,有)(,u N p i ≥0.3 对于任意的节点区间),[1+i i u u ,当),[1+∈i i u u u 时,∑-==ipi j pj u N1)(,。
B样条曲线

P4 P2
P0
F282.c 二次 B-样条曲线
4.三次B样条曲线 分段三次B样条曲线由相邻四个顶点 定义,其表达式为: P(t)=F0,3(t)•B0+F1,3(t)•B1+F2,3(t)•B2
+F3,3(t)•B3 (0≤t≤1) 可见,由 n 个顶点定义的完整的三次 B样条曲线是由 n-3 段分段曲线连接 而成的。很容易证明,三次B样条曲
角点共线的方法。
Q4
Q1
P1
。
P0
Q2
Q0
P2 Q3
• 四角点共线
若要使B样条曲线段之间切接入一段直线,可运用四
角点共线的方法。 Q5
Q1
Q2 。P1
P0
Q0
P2
P3
。
Q3 Q4
6.5 Bézier曲面和B样条曲面
6.5.1 Bézier曲面
Bézier曲面及控制网格演示动画
曲面的形状、位置由边界上的四个角点决定。中间角点只 反映曲面的凹凸程度。
三段曲线的形状。
角点重叠和角点共线(*)
• 二重角点
若要使B样条曲线与特征多边形相切,可运用二重角
点的方法。 P0
Q0 Q(0-1)
P1
Q1
Q2
P2
Q3
Q4
• 三重角点
若要使B样条曲线产生一个尖点1
P2 P3
Q1
P0
P4
Q5
Q0
Q6
• 三角点共线
若要使B样条曲线产生反向弧切接的效果,可运用三
✓用di1、di2、di3、di4(i=1,2,3,4 )构建四条V向曲线C1、C2、C3和C4(图中虚线);
✓参数v在[0,1] 之间取
B样条曲线曲面1

ε
d = f ( x0 , x1 , x2 , x) dx
3.3 B样条的递推定义
de Boor-Cox递推定义
⎧1 xi < x < xi +1 Bi , 0 ( x) = ⎨ ⎩0 Otherwise
Bi ,k ( x) = −x x − xi x Bi ,k −1 ( x) + i + k +1 Bi +1,k −1 ( x) xi + k − xi xi + k +1 − xi +1
由(3.11): ( xi + 2 − x) + − ( xi +1 − x) + ( xi +1 − x) + − ( xi − x) + − xi + 2 − xi +1 xi +1 − xi M i ,1 ( x) = xi + 2 − xi 可得: M i ,1 ( x) = 0, M i ,1 ( x) = xi + 2 − x , ( xi + 2 − xi )( xi + 2 − xi +1 ) x > xi+2 x ∈ [ xi +1 , xi + 2 ]
(3.15)
并约定
0 =0 0
3.3.1 B样条基的推导 1. 0次B样条
⎧1 xi < x < xi +1 Bi , 0 ( x) = ⎨ ⎩0 Otherwise
称之,0 ( x) “移位”可得: B
⎧ x − xi ⎪ x −x ⎪ i +1 i ⎪ xi + 2 − x Bi ,1 ( x) = ⎨ ⎪ xi + 2 − xi +1 ⎪ ⎪ 0 ⎩ xi < x < xi +1 xi +1 < x < xi + 2 Otherwise
第七章 B样条曲线

V2k、V3k和V4k四个点, 该四点构成u向的一个特
d1
征多边形,定义一条新 2
的曲线P(u,vk);
d11
v
d14
d13
C1 d22
d23
C2 d32
d21
d31
u
d24 d33 C3 d4
2
d41
d34
d44 d43
C4
v
C1
C2 C3
V1k
V2k V3k
u
C4
V4k
✓当参数vk在[0,1] 之间取不同值时, P(u,vk)沿箭头方向扫描,即得到由 给定特征网格dij(i=1,2,3,4 j=1,2,3,4) 定义的双三次均匀B样条曲面片 P(u,v)。
t [0,1]
1
2
3
4
5
t
四段二次(三阶)均匀B样条基函数
曲线的起点和终点值:
pi
(0)
1 2
(Pi
Pi 1 ),
pi
(1)
1 2
(Pi1
Pi2 )
均匀二次B样条曲线起点和终点处的导数:
pi(0) Pi1 Pi , pi(1) Pi2 Pi1
P1
P2
P0
P3
四个控制点的二次周期性B样条曲线
第七章 B样条曲线曲面
Bezier曲线有许多优越性,但有几点不足: 一、控制多边形的顶点个数决定了Bezier曲线的
阶次; 二、不能作局部修改; 三 、Bezier曲线的拼接比较复杂。
• 1972年,Gordon、Riesenfeld等人发展了 1946年Schoenberg提出的样条方法 , 提出 了B样条方法,在保留Bezier方法的优点, 克服了Bezier方法的弱点。
B样条曲线曲面

第二章三维形态基本建模方法第一节形体的空间定位及表示方法一、空间、物体和结构我们每天的生活发生在三维环境中,而且充满着三维物体,我们总是看到、感到三维。
当设计实体模型时,我们通常认为许多事情理所当然。
但在用计算机对三维场景模型化时,那么我们不得不熟悉大量的计算机软件工具,这些工具可用于模型化物体和环境。
在描述三维场景的三维模型化软件中使用的许多基本约定是基于各种行业中使用的传统约定。
例如,建筑师为了用一个简明的方法表达他们设计的空间,使用各种涉及测量、构图和定序的约定。
即使简单的矩形房间设计也要测量多次,以便于房间的所有构件放在被设计放置的地方。
此外,为了准确地按照设计师的图纸来建造,泥瓦工需要进行测量。
多年来泥瓦工和建筑师已形成约定,如何测量空间、建造物体、在结构中安装,它们的约定是精确、简洁的。
我们用类似的约定来描述用一个计算机程序模拟的三维空间中物体的尺寸、位置和次序。
让我们从定义空间或场景的边界开始三维空间的定义,最简单的方法是想象我们是在一个大立方体内工作。
可以将这个立方体当作我们的空间或环境。
在这个立方体中的物体是可见的,在其外部的物体是不可见的。
在这个空间中的主参考点称为主空间原点。
这个原点通常位于这个空间的中心。
根据模型需要和方案,该点也可放在或重新放在其他点上。
所有三维空间都有3个基本的维:宽度、高度和深度。
表达三维空间中这些维的普遍方法是使用箭头或轴。
通常用字母X表示标记三维空间宽度的轴;用Y表示标记三维空间高度的轴;用Z表示标记三维空间深度的轴。
这三个轴交叉的空间点就是主坐标原点。
直角坐标系可以用来定义三维空间中特定的位置,精确定位三维空间中物体的点。
René Descartes是一位18世纪法国的哲学家和数学家,他正式使用标记为X、Y、Z的3个轴表示三维空间中维的思想。
他推导出的坐标系称为笛卡尔坐标系,在该系统中每个轴被分成许多测量单位。
原理上,这些单位是抽象的值,它可表示不同的测量单位和维刻度。
08_B样条曲线曲面

1 2 F ( t ) ( 1 t ) 0, 2 2 将 代入 P ( t ) 1 2 F1, 2 ( t ) ( 2t 2t 1) 2 F (t ) 1 t 2 2, 2 2
重要
PF
为了使P(t)能过P(i)点,只要使
Pi ,Pi 1 ,Pi 2 重合
尖点也可通过三重节点的方法得到 Pi ,Pi 1 ,Pi 2 为了使曲线和某一直线L相切,只要取
位于L上及
ti 3
的重数不大于2。
三次B样条曲线的一些特例
节点矢量:分为三种类型:均匀的,准均匀/开放均匀的和 非均匀的;
P ( t ) Pi Fi ,n ( t )
n
t [0,1]
i 0,1,, n
叫做n次B样条曲线段。
i 0
P ( t ) Pi Fi ,n ( t )
i 0
n
t [0,1]
i 0,1,, n
1 n i j j n 其中: Fi ,n ( t ) ( 1 ) C ( t n i j ) n1 n! j 0
B样条(Spline)曲线
在实际应用中,以Bernstein基函数构造的Bezier曲线有 许多优越性,但同时也存在一些缺点,主要有两点不足 之处: (1)其一是Bezier曲线不能作局部修改,即改变某一个 控制点,对整个曲线都有影响; (2)其二是当n较大,控制点较多时,Bezier曲线使用 起来不方便,即对曲线的控制减弱。若使用分段三次 Bezier曲线代替n阶Bezier曲线,则对控制点必须附加某 些条件,拼接比较复杂,也不便于使用。其原因是调和 函数在(0,1)的整个区间内均不为零。
第11-12讲 非均匀有理B样条曲线与曲面

上课内容
区间非零
次数p=2
顶点数n+1=4+1 M=n+p+1=4+2+1节点数m+1=8次数p=3
顶点数n+1=6+1
M=n+p+1=6+3+1
节点数m+1=11
9/17
11/17
例题:
三、NURBS 曲线形状的修改
(1)NURBS 曲线形状是由那些因素决定的?实际应用中,若要对NURBS 曲线作局部修改,一般可采取什么办法?
(2)如题图所示,由顶点V 0、V 1、V 2、V 3、V 4、V 5构造NURBS 曲线,改变顶点V 3所对应的权因子ω3得到的三条不同形状的曲线,B ,N ,B i 分别是ωi =0,ωi =1,ωi ≠{0,1}的对应曲线上的点。
1) 请写出ω3与点B ,N ,B i 及V 3四点之间的关系。
2) 定性分析ωi 对曲线形状的影响。
12/17圆锥曲线、圆弧及圆的NURBS 表示
CSF=ω2/ωω,
优弧、半圆可以利用重节点将两段、三段劣弧拼接组成。
内部重节点的一种给法:采用二重节点(端点仍为三重)
18/17。
第十二章 B样条曲面

第十二章B样条曲面B样条曲面在CAD/CAM中具有非常重要的地位,它可由B样条曲线通过直积推广而得,正如由Bézier曲线经由直积推广而得Bézier曲面一样。
本章主要讨论B样条曲面的性质及其相关的配套技术。
12.1 B样条曲面的定义及性质给定三维空间个点,参数和的节点矢量、,参数曲面:(12.1.1)称为次B样条曲面。
式中称为曲面的控制顶点或de Boor点,逐次用线段连接点列中相邻两点组成的空间网格叫做曲面的控制网格或de Boor网格,分别是由节点矢量定义的规范B样条基函数,次数分别为和。
由式(12.1.1)可以看出,次B样条曲面是由片次参数多项式曲面组合而成的多项式样条曲面。
其性质可由B样条曲线的性质推广而得。
1. 局部性。
次B样条曲面上参数为的点至多与个控制顶点有关,与其他控制顶点无关。
移动控制顶点至多影响到定义在区域上的那一部分曲面形状,对曲面的其余部分不产生影响。
2. 参数连性。
B样条曲面的每一片在其内部连续,而在节点处则是连续,其中分别是节点的重数。
3. 凸包性。
B样条曲面的每一片都位于定义该片曲面的控制顶点,的凸包之中,整个B样条曲面位于定义各片曲面的控制顶点的凸包的并集之中。
这样以来,B样条曲面的凸包区域就比同一组顶点定义的Bézier曲面的凸包区域要小,至多相同。
由凸包性质可以导出以下结果:•若控制顶点重合时,由这个控制顶点定义的次B样条曲面片便退化为这个重合点;•若上述的个控制顶点共面,那么所定义的曲面片便是平面片。
4. 磨光性质等。
同一组控制顶点定义的B样条曲面,随着次数的升高越来越光滑。
5. 仿射不变性。
B样条曲面在仿射变换下不便。
6. 对Bézier曲面的包含性。
若,且参数节点矢量选择如下:则由此确定的B样条曲面就是次Bézier曲面。
7. 等参数线。
固定,那么曲线是一条次B样条曲线,其控制顶点为同理,固定,其参数曲线为一条次B样条曲线,相应的控制顶点为然而,与Bézier曲面一样,变差缩减性对B样条曲面将不再成立。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
B样条曲线的性质具体分析
• 1. 局部支柱性 B样条曲线与Bezier曲线的主要差别在于它 们的基函数。Bezier曲线的基函数在整个参 数变化区间内,只有一个点或者两个点处 函数值为零。而B样条的基函数是一个分段 函数,在参数变化范围内,每个基函数在tk 到tk+m的子区间内函数值不为0,在其余区 间为0,这一重要的特征称为局部支柱性。
• B样条的局部支柱性对曲线和曲面的设计有 两个方面的影响:一是第k段曲线段(p(t) 在两个相邻节点值[tk,tk+1)(m-1≤k≤n) 上的曲线段)仅仅由m个控制顶点Pk-m+ 1,Pk-m+2,…Pk控制。若要修改该段 曲线,仅修改这m个控制顶点即可。二是修 改控制顶点Pk对B样条曲线的影响是局部的。 对于均匀m次B样条曲线,调整一个顶点Pk 的位置只影响B样条曲线p(t)在区间[tk, tk+m)的部分,即最多只影响与该顶点有 关的m段曲线。局部支柱性是B样条最具魅 力的性质。
由于Bk,m(t)的各项分母可能为0,所以这里规定 0/0=0。m是曲线的阶参数,(m-1)是B样条曲 线的次数,曲线在连接点处具有(m-2)阶连续 性。tk是节点值,T=(t0,t1,…tn+m)构成了 m-1次B样条函数的节点矢量,其中的节点是非减 序列,所生成的B样条曲线定义在从节点值tm-1 到节点值tn+1的区间上,而每个基函数定义在t的 取值范围内的tk到tk+m的子区间上。从公式可以 看出,仅仅给定控制点和参数m不足以完全表达B 样条曲线,还需要给定节点矢量来获得基函数。
4. 导数
• B样条曲线的导数可以用其低阶的B样条基 函数和顶点矢量的差商序列的线性组合表 示,由此不难证明m阶B样条曲线段之间达 到m-2次的连续性。
5. 几何不变性 B样条曲线p(t)的形状和位置与坐 标系的选择无关。 6.差变减少性 如果B样条曲线p(t) 的控制多边形位于一个平面之内,则 该平面内的任意直线与p(t)的交点个 数不多于该直线与控制多边形的交点 个数。如果控制多边形不是平面图形, 则任意平面与p(t)的交点数不会超过 它与控制多边形的交点数。
2. B样条的凸组合性质
• B样条的凸组合性和B样条基函数 的数值均大于或等于0,保证了B 样条曲线的凸包性,即B样条曲线 必处在控制多边形所形成的凸包之 内。B样条方法的凸包性使曲线更 加逼近特征多边形,比Bezier方法 优越。
3.连续性
• 若一节点矢量中节点均不相同,则m阶(m -1次)B样条曲线在节点处为m-2阶连续, 比如三次B样条曲线段在各节点处可达到二 阶导数的连续性。由于B样条曲线基函数的 次数与控制顶点个数无关,这样,如果增 加一个控制点,就可以在保证B样条次数不 变的情况下相应地增加一段B样条曲线,且 新增的曲线段与原曲线的连接处天然地具 有m-2阶连续性。
B样条曲面
• B样条曲面是B样条曲线的二维扩 展,其表达式为:
• 其中,Pk1,k2称为控制顶点,所有的
(n1+1)×(n2+1)个控制顶点组成 的空间网格称为控制网格,也称特征 网格。Bk1,m1(u) 和Bk2,m2(v)是定义 在u,v参数轴上的节点矢量U=(u0, u1,…,un1+m1)和V=(v0,v1,…, vn2+m2)的B样条基函数。与B样条曲 线类似,当节点矢量U,V沿u,v轴均 匀等距分布时,称p(u,v)为均匀B样 条曲面。否则称为非均匀B样条曲面。
B样条曲线的数学定义为:
• 其中,Pk(k=0,1,…,n)为n+1个 控制顶点,又称为de Boor点。由控制 顶点顺序连成的折线称为B样条控制多 边形,简称控制多边形。m是一个阶参 数,可以取2到控制顶点个数n+1之间 的任一整数。实际上,m也可以取为1, 此时的“曲线”恰好是控制点本身。 参数t的选取取决于B样条节点矢量的 选取。 • Bk,m(t)是B样条基函数,由Cox-de Boor递归公式定义为:
从公式可以看出,仅仅给定控制点 和参数m不足以完全表达B样条曲线,还 需要给定节点矢量来获得基函数。 • B样条通常可以按照节点矢量分为三种 类型: 1)均匀的B样条曲线 2)开放均匀的B样条曲线 3)非均匀的B样条曲线。
B样条曲线的性质
• • • • • • 1. 局部支柱性 2. B样条的凸组合性质 3.连续性 4. 导数 5. 几何不变性 6.差变减少性
• B样条曲面具有与B样条曲线相同的局 部支柱性、凸包性、连续性和几何不 变性等性质。与Bezier曲面相比,B样 条曲面极为自然地解决了曲面片之间 的连接问题。