bezier曲线.ppt
4.2 Bzier曲线曲线 Bzier Curves1962年,法国雷诺汽车公司的年,法国雷诺汽车公司的P.E.Bezier构造了一种以逼近构造了一种以逼近为基础的参数曲线和曲面的设计方法,并用这种方法完成为基础的参数曲线和曲面的设计方法,并用这种方法完成了一种称为了一种称为UNISURF 的曲线和曲面设计系统,的曲线和曲面设计系统,1972年,该年,该系统被投入了应用。系统被投入了应用。Bezier方法将函数逼近同几何表示结合方法将函数逼近同几何表示结合起来,使得设计师在计算机上就象使用作图工具一样得心起来,使得设计师在计算机上就象使用作图工具一样得心应手。应手。通过通过Bezier可以画出复杂形状的曲线,只要给出表示曲线大可以画出复杂形状的曲线,只要给出表示曲线大体走向的点,就可由这些点画出一个多边形,然后通过体走向的点,就可由这些点画出一个多边形,然后通过Bezier公式逼近这个多边形画出所要的曲线。其中的给出的公式逼近这个多边形画出所要的曲线。其中的给出的描述曲线大体走向的点称为控制点,这些点连成的多边形描述曲线大体走向的点称为控制点,这些点连成的多边形称为控制多边形。称为控制多边形。4.2.1 Bzier曲线的定义和性质曲线的定义和性质1.定义定义 给定空间给定空间n+1个点的位置矢量个点的位置矢量Pi(i=0,1,2,n),则,则Bzier曲线可定曲线可定义为:义为:其中,其中,Pi(i=0,1,n)构成构成该该Bzier曲线的特征多曲线的特征多边边形,形,Bi,n(t)是是n次次Bernstein基函数:基函数:其中,其中,00=1,0!=1。控制顶点控制顶点 特征多边形特征多边形Bzier Curves4.2.1 Bzier曲线的定义和性质曲线的定义和性质2.Bernstein基函数的性质基函数的性质 (1)正性正性 (2)端点性质端点性质 Bi,n(0)=Bi,n(1)=1,i=00,i01,i=n0,in在在Bernstein基函数基函数 曲曲线线的的次次数数。由由排排列列组组合合和和导导数数运运算算规规律律可可以以推推导导出出Bernstein基基函函数数的如下性质:的如下性质:中,中,n n为基本为基本 4.2.1 Bzier曲线的定义和性质曲线的定义和性质2.Bernstein基函数的性质基函数的性质 (3)权性权性 由二项式定理可知:由二项式定理可知:(4)对称性:对称性:因为因为三次三次 Bzier 的的调调和函数和函数每个函数表示了每个控制点的权值每个函数表示了每个控制点的权值.正性:正性:B0,B1,B2,B3曲线都大于曲线都大于0。端性:端性:当当t=0时,时,B0=1,B1=B2=B3=0当当t=1时,时,B3=1,B1=B2=B0=0对称性:对称性:B0和和B3,B1和和B2对称对称权性:当权性:当t=i时,时,B0+B1+B2+B3=1B0B3B1B24.2.1 Bzier曲线的定义和性质曲线的定义和性质2.Bernstein基函数的性质基函数的性质 (5)递推性递推性 (6)导函数:导函数:(7)最大值最大值 即高一次的即高一次的Bernstein基函数可由两个低一次的基函数可由两个低一次的Bernstein调和函数调和函数线性组合而成。线性组合而成。Bi,n(t)在在 t=i/n 处达到最大值。处达到最大值。4.2.1 Bzier曲线的定义和性质曲线的定义和性质3.Bzier曲线曲线的性质的性质 (1)端点性质端点性质 曲线端点位置矢量曲线端点位置矢量 由由Bernstein基函数的端点性质可以推得:基函数的端点性质可以推得:当当t=0时,时,P(0)=P0;当当t=1时,时,P(1)=Pn;由此可见,由此可见,Bezier曲线的起点、终点与相应的特征多边形的起点、曲线的起点、终点与相应的特征多边形的起点、终点重合。终点重合。4.2.1 Bzier曲线的定义和性质曲线的定义和性质3.Bzier曲线曲线的性质的性质 (1)端点性质端点性质 切矢量切矢量 因为:因为:所以:当所以:当t=0时,时,P(0)=n(P1 P0);当当t=1时,时,P(1)=n(Pn Pn-1);说明,说明,Bezier曲线起点和终点处的切线方向和特征多边形的第一曲线起点和终点处的切线方向和特征多边形的第一条边及最后一条边的走向一致。条边及最后一条边的走向一致。4.2.1 Bzier曲线的定义和性质曲线的定义和性质3.Bzier曲线曲线的性质的性质 (1)端点性质端点性质 二阶导二阶导矢矢 因为:因为:所以:当所以:当t=0时,时,P”(0)=n(n-1)(P2 2P1+P P0 0);当当t=1时,时,P”(1)=n(n-1)(n-1)(Pn 2Pn-1+P+Pn-2n-2);说明,说明,Bezier曲线起点和终点处的二阶导矢曲线起点和终点处的二阶导矢只与相邻的只与相邻的3 3个顶点有个顶点有关。关。r r阶导矢只与阶导矢只与r+1r+1个相邻点有关。个相邻点有关。4.2.1 Bzier曲线的定义和性质曲线的定义和性质3.Bzier曲线曲线的性质的性质 (2)对称性对称性 由由控控制制顶顶点点 构构造造出出的的新新Bezier曲曲线线,与与原原Bezier曲线形状相同,走向相反。因为曲线形状相同,走向相反。因为:4.2.1 Bzier曲线的定义和性质曲线的定义和性质3.Bzier曲线曲线的性质的性质 (3)凸包凸包性性 由于由于 并且并且 说说明明当当t在在0,1区区间间变变化化时时,对对某某一一个个t值值,P(t)是是特特征征多多边边形形各各顶点的加权平均,权因子依次是顶点的加权平均,权因子依次是Bi,n(t)。在在几几何何图图形形上上,意意味味着着Bezier曲曲线线P(t)在在 中中各各点点是是控控制制点点Pi的凸线性组合,即曲线落在的凸线性组合,即曲线落在Pi构成的凸包之中。构成的凸包之中。(c)(c)4.2.1 Bzier曲线的定义和性质曲线的定义和性质3.Bzier曲线曲线的性质的性质 (4)几何不变性几何不变性 指指某某些些几几何何特特性性不不随随坐坐标标变变换换而而变变化化的的特特性性。Bezier曲曲线线位位置置与与形形状状与与其其特特征征多多边边形形顶顶点点Pi(i=0,1,n)的的位位置置有有关关,它它不不依依赖赖坐坐标标系的选择。系的选择。(参变量(参变量u是是t的置换)的置换)4.2.1 Bzier曲线的定义和性质曲线的定义和性质3.Bzier曲线曲线的性质的性质 (5)变差缩减性变差缩减性 若若Bezier曲曲线线的的特特征征多多边边形形P0 P1 Pn是是一一个个平平面面图图形形,则则平平面面内内任意直线与任意直线与P(t)的交点个数不多于该直线与其特征多边形的交点个数。的交点个数不多于该直线与其特征多边形的交点个数。此此性性质质反反映映了了Bezier曲曲线线比比其其特特征征多多边边形形的的波波动动还还小小,也也就就是是说说Bezier曲线比特征多边形的折线更光顺。曲线比特征多边形的折线更光顺。4.2.1 Bzier曲线的定义和性质曲线的定义和性质在一个位置上增加多个控制点将增加这个点的权值在一个位置上增加多个控制点将增加这个点的权值,将将Bzier 曲线推向这个点曲线推向这个点.4.2.1 Bzier曲线的定义和性质曲线的定义和性质4.Bzier曲线曲线及其控制多及其控制多边边形的几何形状形的几何形状 Bzier 曲线的性质曲线的性质如果只有一个控制点如果只有一个控制点 P0,例如,例如:n=0 那么,对于所有的那么,对于所有的t有有 P(t)=P0如果只有两个控制点如果只有两个控制点 P0 和和 P1,例如,例如:n=1 那么公式简化为在两个控制点之间的那么公式简化为在两个控制点之间的一条直线段一条直线段.调和函数总是比控制点个数少一次的多项调和函数总是比控制点个数少一次的多项式式.因而因而3个控制点形成一条抛物线个控制点形成一条抛物线,4个控个控制点是一条三次曲线制点是一条三次曲线,等等等等.4.2.2 Bzier曲线的矩阵表示曲线的矩阵表示对于对于 n+1 阶阶(n次次)多项式多项式,有有n+1个控制点个控制点,参数参数t为为n次次 tn:4.2.2 Bzier曲线的矩阵表示曲线的矩阵表示1.一次一次Bzier曲线的矩阵表示曲线的矩阵表示如果只有一个控制点如果只有一个控制点 P0,例如,例如 n=0 那么对于所有的那么对于所有的t,有,有 P(t)=P0如果有两个控制点如果有两个控制点 P0 和和 P1,例如,例如 n=1,那么公式简化为一,那么公式简化为一条两个控制点之间的直线段条两个控制点之间的直线段.矩阵形式:矩阵形式:4.2.2 Bzier曲线的矩阵表示曲线的矩阵表示2.二次二次Bzier曲线的矩阵表示曲线的矩阵表示 如如果果有有 3个个控控制制点点 P0,P1 和和P2,例例如如 n=2,那那么么公公式式为为一一条条抛抛物物线线,即即二二次次Bezier曲曲线线由由三三个个控控制制顶顶点点确确定定。容容易易算算出出,与与其其对对应应的的3个个Bernstein基函数为基函数为:相应的相应的Bezier 曲线为曲线为 P(t)=(1-t)2 P0+2t(1-t)P1+t 2 P2(t 1)4.2.2 Bzier曲线的矩阵表示曲线的矩阵表示2.二次二次Bzier曲线的矩阵表示曲线的矩阵表示 P(t)=(1-t)2 P0+2t(1-t)P1+t 2 P2(t 1)矩阵形式:矩阵形式:对应于一条抛物线。对应于一条抛物线。4.2.2 Bzier曲线的矩阵表示曲线的矩阵表示3.三次三次Bzier曲线的矩阵表示曲线的矩阵表示 常常用用的的三三次次Bezier曲曲线线由由4个个控控制制顶顶点点P0,P1,P2 和和 P3,即即 n=3确确定定。容易算出,与其对应的容易算出,与其对应的4个个Bernstein基函数为基函数为:相应的相应的Bezier 曲线为曲线为4.2.2 Bzier曲线的矩阵表示曲线的矩阵表示3.三次三次Bzier曲线的矩阵表示曲线的矩阵表示n三次形式最常用三次形式最常用 矩阵形式:矩阵形式:4.2.3 Bzier 曲线的递推公式曲线的递推公式除了用除了用Bzier 曲线方程另曲线方程另 一种计算曲线点的方法:一种计算曲线点的方法:抛物线三切线定理:抛物线三切线定理:设设P0,B,P2是抛物线上顺序三个不同的点,过是抛物线上顺序三个不同的点,过P0,P2的两条切的两条切线交于线交于P1,B点的切线交点的切线交P0P1和和P2P1于于Q0和和Q1,则有下式成立,则有下式成立设比例为:设比例为:t:(1-t)有有4.2.3 Bzier 曲线的递推公式曲线的递推公式得得它表示由三个顶点它表示由三个顶点P0,P1,P2定义的一条二次定义的一条二次Bzier 曲线,并且曲线,并且表明:这条二次表明:这条二次Bzier 曲线曲线B可以定义为分别由前两个顶点(可以定义为分别由前两个顶点(P0,P1)和后两个顶点()和后两个顶点(P1,P2)决定的一次)决定的一次Bzier 曲线的线性曲线的线性组合。组合。4.2.3 Bzier 曲线的递推公式曲线的递推公式以此类推,由以此类推,由4个控制点定义的三次个控制点定义的三次Bzier 曲线可被定义为分别由曲线可被定义为分别由(P0,P1,P2)和()和(P1,P2,P3)确定的两条二次)确定的两条二次Bzier 曲线的线性组合。曲线的线性组合。同理可推到同理可推到n次次Bzier 曲线。得到递推公式为:曲线。得到递推公式为:4.2.3 Bzier 曲线的递推公式曲线的递推公式4.2.4 Bzier曲线的拼接曲线的拼接Bzier曲线曲线的拼接的拼接 一一条条B Bzierzier曲曲线线往往往往难难以以描描述述复复杂杂的的曲曲线线形形状状。这这是是由由于于增增加加特特征征值值,会会引引起起B Bzierzier曲曲线线次次数数的的提提高高,而而对对计计算算带带来来困困难难,实实际使用中一般不超过际使用中一般不超过1010次。次。所所以以表表达达复复杂杂曲曲线线,采采用用分分段段设设计计,然然后后各各段段曲曲线线相相互互连连接接,在接合处保持一定的连续条件。在接合处保持一定的连续条件。4.2.4 Bzier曲线的拼接曲线的拼接Bzier曲线曲线的拼接的拼接 若若给给定定两两条条Bezier曲曲线线P(t)和和Q(t),相相应应控控制制点点为为Pi(i=0,1,.,n)和和Qj(j=0,1,.,m)P3Q0P2P1P0Q1Q2Q34.2.4 Bzier曲线的拼接曲线的拼接Bzier曲线曲线的拼接的拼接 若若给给定定两两条条Bezier曲曲线线P(t)和和Q(t),相相应应控控制制点点为为Pi(i=0,1,.,n)和和Qj(j=0,1,.,m)(1)使达到使达到G0 连续的充要条件是:连续的充要条件是:Pn=Q0(2)要使达到要使达到G1连续的充要条件是:连续的充要条件是:Pn-1,Pn=Q0,Q1三点共线三点共线(3)使达到使达到G2 连续的充要条件是:在连续的充要条件是:在 G1连续的条件下,满足:连续的条件下,满足:n闭合曲线能通过使最后一个控制点与第一个控制点重合获得闭合曲线能通过使最后一个控制点与第一个控制点重合获得.n 1阶连续可以通过保证前两个点和后两个点的切线相同来获得阶连续可以通过保证前两个点和后两个点的切线相同来获得.4.2.5 Bzier曲线的程序设计曲线的程序设计三次三次Bzier曲线的程序实现曲线的程序实现为为程序设计方便,改写曲线的表达式为:程序设计方便,改写曲线的表达式为:总结:在在3D 空间空间 n+1 个控制点个控制点 pi(i=0 to n).Bzier 参数曲线参数曲线函数形式是函数形式是:总结:曲线与控制边线有相同的端点曲线与控制边线有相同的端点:P(0)=P0 and P(1)=Pn.在端点在端点P0 和和Pn 处的切矢量的方向与控制边线的开始和结束处的切矢量的方向与控制边线的开始和结束段段P0 P1 和和Pn-1 Pn确定的矢量相同确定的矢量相同:P(0)=n(P1-P0);P(1)=n(Pn-Pn-1)曲线总是被包含在控制点组成的控制多边形的凸包内曲线总是被包含在控制点组成的控制多边形的凸包内.曲线适合于交互设计曲线适合于交互设计.总结总结:4点点 Bzier 曲曲线线公式公式