《(3.3.3)--图形学高级计算机图形学原理与实践.ppt》由会员分享,可在线阅读,更多相关《(3.3.3)--图形学高级计算机图形学原理与实践.ppt(38页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第*章自由曲线与曲面第*小节 B样条曲线曲面一、B样条曲线定义Gordon和Riesenfeld于1974年用B样条基函数,构造了B样条曲线,B样条曲线特点:1、B样条曲线比Bezier曲线更贴近控制多边形;2、曲线更光滑(很容易产生C2连续性);3、曲线的次数可根据需要指定,不像Bezier曲线的次数是由控制点的个数来确定。4、除此之外,B样条曲线的突出优点是增加了对曲线的局部修改功能,因为B样条曲线是分段组成的,所以控制多边形的顶点对曲线的控制灵活而直观。给定m+n+1个控制点Pi(i0,1,2,m+n),可以定义m+1段n次的参数曲线 B样条曲线的定义(3-1)为n次B样条基函数,其形式
2、为(0t1,k=0,1,2,,n)(3-2)其中,在工程实际中,二次B样条曲线和三次B样条曲线应用得较为广泛 二次B样条曲线的n2,k0,1,2。控制多边形有三个控制点P0、P1和P2,二次B样条曲线是二次多项式。二、二次B样条曲线 1.矩阵表示(3-3)因此,二次B样条曲线的分段参数表达式为(i0,1,2,m)对于i0段曲线,写成矩阵形式为 t0,1(3-4)2.几何性质起点p(0)位于P0P1边的中点处,且其切矢量P1P0沿P0P1边的走向;终点p(1)位于P1P2边的中点处,且其切矢量P2P1沿P1P2边的走向;P(1/2)正是P(0)、P1、P(1)这三点所构成的三角形的中线P1Pm的
3、中点,而且p(1/2)处的切线平行于两个端点的连线p(0)p(1)。第i段二次B样条曲线段及其控制多边形 这样,三个顶点P0P1P2确定一段二次B样条曲线,该段曲线是一段抛物线。一般情况下,B样条曲线不经过控制点,曲线起点只与前二个控制点有关,终点只与后二个控制点有关。第i段二次B样条曲线段及其控制多边形 三、三次三、三次B B样条曲线样条曲线 1.1.1.1.矩阵表示矩阵表示矩阵表示矩阵表示 三次B样条曲线的n3,k0,1,2,3。控制多边形有四个控制点P0、P1、P2和P3,三次B样条曲线是三次多项式。因此,三次B样条曲线的分段参数表达式为(i0,1,2,m)对于i0段曲线,写成矩阵形式为
4、(3-6)t0,1 2.2.几何性质几何性质曲线的起点p(0):u位于P0P1P2底边P0P2的中线上,且距P1点三分之一处。u切矢量p(0)平行于P0P1P2的底边P0P2,且长度为其二分之一。u二阶导数p”(0)沿着中线P1Pm方向,长度等于中线的两倍。曲线终点p(1):(与起点类似可知)这样,四个顶点P0P1P2P3确定一段三次B样条曲线。从图中还可以看出:一般情况下,B样条曲线不经过控制点,曲线起点只与前三个控制点有关,终点只与后三个控制点有关。实际上,B样条曲线都具有这种控制点的邻近影响性,这正是B样条曲线局部可调整性好的原因。第i段三次B样条曲线控制多边形 第*章自由曲线与曲面第*
5、小节 B样条曲线曲面主讲:符立梅一、B样条曲线的性质 1.1.1.1.连续性连续性连续性连续性 控制点PiPi+1Pi+2确定第i段二次B样条曲线,Pi+1Pi+2Pi+3确定第i1段二次B样条曲线,第i1段曲线的起点切矢量Pi+2Pi+1沿Pi+1Pi+2边的走向,和第i段二次B样条曲线的终点切矢量相等,两段B样条曲线实现自然连接,但二次B样条曲线只能达到C1连续性。二次B样条曲线的连续性 三次B样条曲线的连续性 控制点PiPi+1Pi+2Pi+3确定第i段三次B样条曲线,如果再添加一个顶点Pi+4,则Pi+1Pi+2Pi+3Pi+4可以确定第i+1段三次B样条曲线,而且第i+1段三次B样条
6、曲线的起点切矢量、二阶导数和第i段三次B样条曲线的终点切矢量和二阶导数相等,两段B样条曲线实现自然连接,三次B样条曲线可以达到C2连续性。一般而言,n次B样条曲线具有n-1阶导数的连续性。结论:B样条曲线不同于Bezier曲线整体生成,它是分段生成的,B样条曲线各段之间自然连接。给定m+n+1个控制点,可以定义m+1段n次的B样条曲线。对于如下图所示二次(n2)B样条曲线,由7段曲线组成,需要9个控制点:对于如下图所示三次(n3)B样条曲线,由6段组成,需要9个控制点:二次B样条曲线能达到C1连续性 三次B样条曲线可达到C2连续性 2.局部性质 在B样条曲线中,每段B样条曲线受n+1个控制点影
7、响,改变一个控制点的位置,最多影响n+1个曲线段,其它部分曲线形状保持不变。在工程设计中经常需要对曲线进行局部修改,B样条曲线能很好地满足这一要求,这就是B样条曲线受欢迎的原因之一。三次B样条曲线局部顶点修改二、构造特殊的三次B样条曲线的技巧 1.1.1.1.二重顶点二重顶点二重顶点二重顶点2.2.2.2.三重顶点三重顶点三重顶点三重顶点3.3.3.3.三顶点共线三顶点共线三顶点共线三顶点共线4.4.4.4.四顶点共线四顶点共线四顶点共线四顶点共线 三次B样条曲线绘制树叶 三、三、B B样条曲面样条曲面 B样条曲面是B样条曲线的二维推广,给定(m1)(n+1)个控制点Pi,j(i=0,1,m;
8、j=0,1,n),张量积形式的B样条曲面的表达式为(u,v)0,10,1(3-9)式中,Pi,j(i0,1,m;j0,1,n)是(m+1)(n+1)个控制点。是B样条基函数。1.B1.B1.B1.B样条曲面的定义样条曲面的定义样条曲面的定义样条曲面的定义 7.5.2 7.5.2 7.5.2 7.5.2 双三次双三次双三次双三次B B B B样条曲面的定义样条曲面的定义样条曲面的定义样条曲面的定义(u,v)0,10,1(3-10)展开式有(3-11)将式(3-11)代入式(3-10)得到令 则有 双三次B样条曲面是由三次B样条曲线交织而成。曲面生成时可以先固定u,变化v得到一簇三次B样条曲线;然
9、后固定v,变化u得到另一簇三次B样条曲线。与三次B样条曲线相似,双三次B样条曲面一般情况下不通过控制网格的任何顶点。16个控制点的双三次B样条曲面 给定次数的Bezier曲面的控制点个数是确定的。如果要描述复杂的曲面形状,只能升高曲面的次数或者用多张Bezier曲面片拼接起来表示,这在实际应用中会增大计算量并且使算法变得复杂。B样条曲面可以较好地解决这个问题,对于给定的曲面次数,B样条曲面的控制点数目可以根据曲面的形状来自由决定,而且可以保持曲面处处光滑,因此B样条曲面在曲面造型方面具有更大的灵活性。双三次B样条曲面的优点是极为自然地解决了曲面片之间地连接问题,例如,只要将控制网格沿某一个方向延伸一排,就可以决定另一个曲面片,此时曲面片理所当然地保证二者之间达到了C2连续性。四、双三次B样条曲面的连续性 给定空间控制网格顶点Pi,j(i0,p;j0,q;p4,q4),构造双三次B样条曲面。控制点矩阵为 因为双三次B样条曲面的控制顶点矩阵是44的,所以需要将Pi,j控制顶点矩阵进行分块。双三次B样条曲面的分块顶点矩阵为(3-12)式中,r=0,p+1-4;s=0,q+1-4。例例3-1 3-1 已知pq5,空间控制网格Pi,j共有36个顶点,请计算其分块矩阵。分块矩阵共有9个 36个控制点的双三次B样条曲面双三次B样条曲面绘制的花瓶