《B样条曲线与曲面.doc》由会员分享,可在线阅读,更多相关《B样条曲线与曲面.doc(12页珍藏版)》请在金锄头文库上搜索。
1、四、B样条曲线与曲面Bezier曲线具有很多优越性,但有二点不足:1)特征多边形顶点数决定了它的阶次数,当n较大时,不仅计算量增大,稳定性降低,且控制顶点对曲线的形状控制减弱;2)不具有局部性,即修改一控制点对曲线产生全局性影响。1972年Gordon等用B样条基代替Bernstein基函数,从而改进上述缺点。样条曲线的数学表达式为:在上式中,0 u 1; i= 0, 1, 2, , m所以可以看出:样条曲线是分段定义的。如果给定 m+n+1 个顶点 Pi ( i=0, 1, 2, m+n),则可定义 m+1 段 n 次的参数曲线。 在以上表达式中:Nk,n(u) 为 n 次B样条基函数,也称
2、样条分段混合函数。其表达式为:式中:0 u 1 k = 0, 1, 2, , n 1均匀B样条曲线1 一次均匀B样条曲线的矩阵表示空间n+1个顶点(i = 0,1,n)定义n段一次(k0,1,n=1)均匀B样条曲线,即每相邻两个点可构造一曲线段Pi(u),其定义表达为: (1u)Pi1 u Pi N0,1(u)Pi1 N1,1(u)Pi第i段曲线端点位置矢量:,且一次均匀B样条曲线就是控制多边形。2 二次均匀B样条曲线的空间n+1个顶点的位置矢量(i=0,1,n)定义n1段二次(k0,1,2, n=2)均匀B样条曲线,每相邻三个点可构造一曲线段Pi(u)(i=1,n1),其定义表达为: (1
3、2 u u 2)Pi1 (1 2 u 2u2)Pi u 2 Pi1 N0,2(u)Pi1 N1,2(u)Pi N2,2(u)Pi1端点位置矢量:,即曲线的起点和终点分别位于控制多边形Pi-1Pi和PiPi+1的中点。若、三个顶点位于同一条直线上,蜕化成直线边上的一段直线。端点一阶导数矢量:,即曲线的起点切矢和终点切矢分别和二边重合,且相邻两曲线段在节点处具有一阶导数连续。二阶导数矢量:,即曲线段内任何点处二阶导数相等,且相邻两曲线段在节点处二阶导数不连续。3 三次均匀B样条曲线空间n+1个顶点的位置矢量(i=0,1,。,n)构造n2段三次(k0,1,2,3,四阶n=3)均匀B样条曲线段,每相邻
4、四个点可定义一曲线段Pi(u)(i=1,。,n2),其定义表达为: (1u)3 Pi1(46u23u3)Pi(13u3u23u3)Pi1u 3 Pi2 N0,3(u)Pi1 N1,3(u)Pi N2,3(u)Pi1 N3,3(u)Pi2端点位置矢量:,即起点位于三角形DPi-1PiPi+1中线PiM1的1/3处,终点位于三角形DPiPi1Pi+2中线Pi1M2的1/3处。可见B样条曲线的端点并不通过控制点。端点一阶导数矢量:,即曲线起点的切矢平行于DPi-1PiPi+1的底边Pi-1Pi+1,其模长为底边Pi-1Pi+1长的1/2,同样曲线终点的切矢平行于DPiPi+1Pi+2的底边PiPi+
5、2,其模长也为底边PiPi+2长的1/2。且相邻两曲线段具有一阶导数连续(因)。二阶导数矢量:,即曲线段在端点处的二阶导数矢量等于相邻两直线边所形成的平行四边形的对角线,且两曲线段在节点处具有二阶导数连续(因)。若、三个顶点位于同一条直线上,三次均匀B样条曲线将产生拐点;若、四点共线,则变成一段直线;若、三点重合,则过点。思考:用作图法绘制下图均匀三次B样条曲线。B样条曲线段与段之间具有天然的连续性,具有整体的光滑特性,而Bezier曲线段与段之间必须光滑拼接。因此在商用系统中B样条方法应用更为广泛。2B样条曲线的性质1 局部性空间n+1个控制顶点(i=0,1,n)构造(nk1)段k次(k1阶
6、)B样条曲线段,且每一曲线段(u)(i = 1,nk1)由、等k1个控制顶点确定,与其它控制点无关。2 整体性和连续性一般情况下(即无重节点、重顶点),n+1个控制顶点所构造的(nk1)段k次(k1阶)B样条曲线段组成一完整的B样条曲线,曲线段与段之间具有C k1阶函数连续性(或G k1阶几何连续性),当有K重顶点时,将可能产生尖点(前面已介绍),虽然仍满足函数连续,但不满足几何连续。4 几何不变性 改变坐标系不改变曲线形状。5 变差缩减性 与Bezier曲线性质相同。(5)造型的灵活性由于其良好的局部特性,可以方便构造低次的复杂曲线,且编辑顶点对曲线形状的改变是局部的;由于其整体性和连续性,
7、曲线具有整体的光滑性。正因如此,B样条曲线比Bezier应用更为广泛,为商用系统普遍采用。缺点:首末两端点不通过控制顶点,与其优点比较微不足道。3均匀双二次B样条曲面已知曲面的控制点,参数,且,构造步骤是:a、沿向构造均匀二次B样条曲线,即有: 经转置后:同上可得:,。b、再沿向构造均匀二次B样条曲线,即可得到均匀二次B样条曲面: 简记为:。4均匀双三次B样条曲面已知曲面的控制点,参数,且,构造双三次B样条曲面的步骤同上述。a、沿向构造均匀三次B样条曲线,有:,b、再沿向构造均匀三次B样条曲线,此时可认为顶点沿滑动,每组顶点对应相同的,当值由0到1连续变化,即形成均匀双三次B样条曲面。此时表达
8、式为: , , 上式也可表达为:S(u,w)= N0,3(u) N1,3(u) N0,3(u) N0,3(u) Pi j 4x4 N0,3(w) N1,3(w) N2,3(w) N3,3(w) T对于由控制点组成的均匀双三次B样条曲面其定义如下:即任意单张均匀双三次B样条曲面片Si,j(u,w)是由Pk,l(k = i, . , i+3, l = j, , j+3)等16个控制点定义而成。B样条曲面具有B样条曲线的多种性质,曲面片与片之间具有天然的连续性。仍以均匀双三次曲面为例的说明B样条曲面的性质。(1)均匀双三次B样条曲面的顶点不经过任何特征网格顶点,且仅与各角点对应的9个特征网格顶点有关
9、,如:Si j(0,0) 1/36 (Pi, j +Pi, j+2 +Pi+2, j +Pi+2, j+2) + 1/9 (Pi, j+1 +Pi+1, j +Pi+2, j+1 +Pi+1, j+2) + 4/9 Pi +1,j+1,同理可得Si j(0,1)、Si j(1,0)、Si j(1,1)。(2)均匀双三次B样条曲面的边界曲线仍为B样条曲线,该边界B样条曲线由对应的三条边界特征网格顶点确定,由B样条曲面得定义可得:同理可得Si j(u,1)、Si j(0,w)、Si j(1,w)。推广之:沿B样条曲面任何等参数的截线均为一B样条曲线(读者证明)。(3)均匀双三次B样条曲面边界的跨界
10、一阶切矢只与定义该边界的顶点及相邻二排顶点(共三排顶点)有关, 依次可得。可见均匀三次B样条曲面具有一阶函数连续性。同理可得,其跨界二阶导矢只与定义该边界的及相邻两排顶点(共三排顶点)有关,且均匀三次B样条曲面具有二阶函数连续性。(4)几何不变性。(5)对称性。(6)凸包性。B样条曲面的线框图绘制方法:先沿等参数方向离散成网格点,然后依次连线绘制。由此可见,B样条方法能够很方便绘制复杂曲面,显然比Bezier方法更灵活,因此应用更广泛。5B样条曲线与曲面的递推表达1)B样条曲线的定义定义:由前面的内容得知,三次均匀B样条曲线的基函数为: N0,3(u) (1u)3 N1,3(u) (46u23
11、u3) N2,3(u) (13u3u23u3) N3,3(u) u 3上述基函数图形如下图所示:已知n+1个控制点(i=0,1,。,n),也称为特征多边形的顶点,K次(k1阶)B样条曲线的表达式是: k = n其中是调和函数,也称为基函数,按照递归公式可定义为: 式中是节点值,且为非减序列,构成了K次(k1阶)B样条基函数的节点矢量,每一基函数由对应的K2个节点决定;上式也表明,高次B样条函数可用低次的B样条函数来表示,由此式可得其递推计算方法。由基函数的示意图可知B样条基函数具有局部支撑特性,即节点矢量所含节点数目由控制顶点P i(i0,1,。,n)和曲线次数k所确定(节点数nk2),显然,
12、基函数个数 控制点数。当节点沿参数轴是均匀等距分布的,则表示均匀B样条函数,其节点值titi1 常数;例如:当k 3,titi1 1,则上述基函数可表示为均匀三次B样条函数,并通过变换可得如下表达: Ni,3(u) (1u)3 Ni+1,3(u) (46u23u3) Ni+2,3(u) (13u3u23u3)Ni+3,3(u) u 3 当节点沿参数轴的分布是不等距的,则表示非均匀B样条函数,即节点值titi1 常数。均匀B样条和非均匀B样条曲线一般不通过控制多边形首末两点。若需B样条曲线具有较好的端点性质(即通过端点),实际应用中常引入准均匀B样条,即在节点矢量中两端节点具有k1个重复度:t0
13、 t1 = t k, t n+1 = t n+2 = = t n+k+1 。这样构造的准均匀B样条曲线将通过控制多边形首末两点。下图为例:构造n 5,k 2的准均匀B样条曲线的节点矢量为u 0,0,0,1,2,3,4,4,4 。 当n 7,k 3的准均匀三次B样条曲线的节点矢量可定义为u 0,0,0,0,1,2,3,4,5,5,5,5。若n 3,k 3的节点矢量u 0,0,0,0,1,1,1,1 ,此时三次B样条曲线转化为三次Bezier曲线。推而广之,若n k ,节点矢量为,此时K次B样条曲线为K次Bezier曲线。性质:局部性:K次B样条曲线仅在K1个区间内非0。换句话说,每段k次B样条曲
14、线只涉及k1个基函数,并由k1个顶点所定义。第i段K次B样条曲线仅由Pi,Pi1,。,Pik共k1个顶点所控制,与其它点无关;反之,修改一个控制顶点,其影响范围为与该顶点有关的k1段。凸组合性质(凸包性)连续性:在无重节点的情况下,K次B样条在节点处具有k1次连续性,如三次B样条具有二阶连续;若在某节点处具有m重节点,则K次B样条在该节点处连续性K1阶。利用重节点技巧,可获得一些特殊的几何特性。递推特性2)B样条曲面的定义基于B样条曲线的定义和性质,可以得到B样条曲面的定义。给定个空间点列,则 定义了次(k1)x(l1)阶)B样条曲面, 和是k次(k1阶)和l次(l1阶)的B样条基函数,u和w为B样条基函数和的节点参数,由组成的空间网格称为B样条曲面的特征网格。上式也可以写成如下的矩阵形式: 上式中(r1),(s