1 / 40

3.1.2 B 样条曲线和曲面

3.1.2 B 样条曲线和曲面. 在我们工程中应用的拟合曲线,一般  地说可以分为两种类型:一种是最终  生成的曲线通过所有的给定型值点,  比如抛物样条曲线和三次参数样条曲  线等,这样的曲线适用于插值放样;  另一种曲线是,它的最终结果并不一  定通过给定的型值点,而只是比较好  地接近这些点,这类曲线(或曲面)  比较适合于外形设计。. 因为在外形设计中 ( 比如汽车、船舶 ) ,  初始给出的数据点往往并不精确;并  且有的地方在外观上考虑是主要的,  因为不是功能的要求,所以为了美观  而宁可放弃个别数据点。因此不须最

Download Presentation

3.1.2 B 样条曲线和曲面

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 3.1.2 B样条曲线和曲面

  2. 在我们工程中应用的拟合曲线,一般  地说可以分为两种类型:一种是最终  生成的曲线通过所有的给定型值点,  比如抛物样条曲线和三次参数样条曲  线等,这样的曲线适用于插值放样;  另一种曲线是,它的最终结果并不一  定通过给定的型值点,而只是比较好  地接近这些点,这类曲线(或曲面)  比较适合于外形设计。

  3. 因为在外形设计中(比如汽车、船舶),  初始给出的数据点往往并不精确;并  且有的地方在外观上考虑是主要的,  因为不是功能的要求,所以为了美观  而宁可放弃个别数据点。因此不须最  终生成的曲线都通过这些数据点。  另一方面,考虑到在进行外形设计时  应易于实时局部修改,反映直观,以  便于设计者交互操作。第一类曲线在  这方面就不能适应。

  4. 法国的Bezier 为此提出了一种新的  参数曲线表示方法,因此称为Bezier  曲线。后来又经过Gordon、Forrest  和Riesenfeld等人的拓广、发展, 提出了B样条曲线。   这两种曲线都因能较好地适用于 外形设计的特殊要求而获得了广泛的 应用。

  5. 一、Bezier曲线 Bezier曲线的形状是通过一组多边折  线(特征多边形)的各顶点唯一地定  义出来的。在这组顶点中: (1) 只有第一个顶点和最后一个顶点  在曲线上; (2) 其余的顶点则用于定义曲线的导  数、阶次和形状; (3) 第一条边和最后一条边则表示了  曲线在两端点处的切线方向。

  6. 1.Bezier曲线的数学表达式 Bezier曲线是由多项式混合函数推导  出来的,通常 n+1 个顶点定义一个n  次多项式。其数学表达式为: (0 ≤ t ≤ 1)  式中:Pi:为各顶点的位置向量     Bi,n(t):为伯恩斯坦基函数

  7. 伯恩斯坦基函数的表达式为:   假如规定:0=1,0!=1,则 t=0:i=0 ,Bi,n(t)=1 i0 ,Bi,n(t)=0 P(0)=P0

  8. t=1:i=n ,Bi,n(t)=1 in ,Bi,n(t)=0 P(1)=Pn 所以说,“只有第一个顶点和最后一个 顶点在曲线上”。即 Bezier曲线只通过多边折线的起点  和终点。

  9. 下面我们通过对基函数求导,来分析  两端切矢的情况。  得:

  10. 讨论: t=0: i=0: Bi-1,n-1(t)=0; Bi,n-1(t)=1。 i=1: Bi-1,n-1(t)=1; Bi,n-1(t)=0。 i2: Bi-1,n-1(t)=0;Bi,n-1(t)=0。  (均出现 0 的非 0 次幂)

  11. t=0  同理可得,当 t=1 时  这两个式子说明:Bezier曲线在两端  点处的切矢方向与特征多边形的第一  条边和最后一条边相一致。

  12. 2.二次和三次Bezier曲线 (1) 三个顶点:P0,P1,P2 可定义一条  二次(n=2) Bezier曲线:  其相应的混合函数为:

  13. 所以,根据式:  二次Bezier 曲线的表达形式为: P(t)=(1-t)2P0+2t(1-t)P1+t 2P2 (0≤t ≤ 1)

  14.  根据 Bezier 曲线的总体性质,可讨  论二次 Bezier 曲线的性质: P(t)=(1-t)2P0+2t(1-t)P1+t2P2 P’(t)=2(t-1)P0+2(1-2t)P1+2tP2 P(1/2)=1/2[P1+1/2(P0+P2)] P(0)=2(P1-P0) P(1)=2(P2-P1) P(1/2)=P2-P0 二次 Bezier 曲  线是一条抛物线

  15. (2) 四个顶点 P0、P1、P2、P3 可  定义一条三次 Bezier 曲线: ***

  16. 二、B样条曲线  1.从 Bezier 曲线到B样条曲线 (1) Bezier 曲线在应用中的不足: 缺乏灵活性 一旦确定了特征多  边形的顶点数(m个),也就决定了曲 线的阶次(m-1次),无法更改; 控制性差 当顶点数较多时,曲  线的阶次将较高,此时,特征多边形  对曲线形状的控制将明显减弱;

  17. 不易修改 由曲线的混合函数可  看出,其值在开区间 ( 0 , 1 ) 内均不为  零。因此,所定义之曲线在 ( 0 < t < 1)  的区间内的任何一点均要受到全部顶  点的影响,这使得对曲线进行局部修  改成为不可能。 (而在外形设计中,局部修改是随时要进行的)

  18. 为了克服 Bezier 曲线存在的问题, Gordon 等人拓展了Bezier曲线,就  外形设计的需求出发,希望新的曲线  要:易于进行局部修改; 更逼近特征多边形; 是低阶次曲线。  于是,用 n次B样条基函数替换了伯  恩斯坦基函数,构造了称之为B样条  曲线的新型曲线。

  19. 2.B样条曲线的数学表达式  B样条曲线的数学表达式为: 在上式中,0 ≤t ≤ 1; i= 0, 1, 2, …, m  所以可以看出:B样条曲线是分段定  义的。如果给定m+n+1 个顶点 Pi ( i= 0, 1, 2,…, m+n),则可定义 m+1 段n 次的参数曲线。

  20. 在以上表达式中: F k,n ( t ) 为 n 次B样条基函数,也称B  样条分段混合函数。其表达式为:  式中: 0 ≤ t ≤1 k = 0, 1, 2, …, n

  21. 连接全部曲线段所组成的整条曲线称  为 n 次B样条曲线。依次用线段连接  点Pi+k (k=0,1,…,n)所组成的多边折  线称为B样条曲线在第i段的B特征多  边形。

  22. 3.二次B样条曲线  在二次B样条曲线中,n=2,k=0,1,2  故其基函数形式为:

  23. 有了基函数,因此可写出二次B样条  曲线的分段表达式为: ( i= 0,1,2,…,m )m+1段

  24. 写成一般的矩阵形式为:  式中,Bk为分段曲线的B特征多边形  的顶点:B0,B1,B2。对于第i段曲线的 Bk 即为:Pi,Pi+1,Pi+2连续的三个顶  点。  (见下图) 

  25. n=2,二次B样条曲线 m+n+1个顶点,三 点一段,共m+1段。 i=1 P1,2(t) i=0 P0,2(t)

  26. 二次B样条曲线的性质  先对P(t)求导得: 然后分别将 t=0,t=0.5,t=1代入P(t)  和 P’(t),可得: P(0)=1/2(B0+B1), P(1)=1/2(B1+B2); P’(0)=B1-B0, P’(1)=B2-B1; P(1/2)=1/2{1/2[P(0)+P(1)]+B1} P’(1/2)=1/2(B2-B0)=P(1)- P(0)

  27. 与以上这些式子所表达的性质相符的  曲线是何种形状:(见下图) 是什么曲线? 与Bezier曲线有 何差别?

  28. 结论:分段二次B样条曲线是一条抛  物线;有n个顶点定义的二次B样条曲  线,其实质上是n-2段抛物线(相邻三  点定义)的连接,并在接点处达到一  阶连续。(见下图)

  29. 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样条曲  线在连接处达到二阶连续。 ***

  30. B样条曲线是一种非常灵活的曲线,  曲线的局部形状受相应顶点的控制很  直观。这些顶点控制技术如果运用得  好,可以使整个B样条曲线在某些部  位满足一些特殊的技术要求。如: 可以在曲线中构造一段直线; 使曲线与特征多边形相切;   使曲线通过指定点;   指定曲线的端点; 指定曲线端点的约束条件。

  31. 三、B样条曲面  在数学上,可以很容易将参数曲线段  拓张为参数曲面片。因为无论是前面  的 Bezier 曲线还是B样条曲线,它  们都是由特征多边形控制的。而曲面  是由两个方向(比如u 和 v)的特征  多边形来决定,这两个方向的特征多  边形构成特征网格。 双二次Bezier曲面和B样条曲面

  32. 1.Bezier 曲面  给定了(m+1)(n+1)个空间点列 bi,j (i=0, 1,2,…,n; j=0,1,2,…,m)后,可以定义m n次Bezier 曲面如下式所示:  式中:(0 ≤u,v ≤ 1);Bi,n(u) 为 n 次 Bernstein 基函数;连接点列 bi,j中相  邻两点组成特征网格。

  33. 在实际应用中,次数m 和 n 均不宜  超过 5,否则网格对于曲面的控制力  将会减弱,这同 Bezier曲线的情况  是相似的。其中最重要的应用是m=n =3,即双三次 Bezier曲面。 双三次 Bezier曲面的表达式为:

  34.  式中:

  35. 2.B样条曲面  从B样条曲线到B样条曲面的拓展完  全类似于从Bezier曲线到Bezier曲面的  拓展。  给定了(m+1)(n+1)个空间点列 bi,j (i=0, 1,2,…,n; j=0,1,2,…,m)后,可以定义m n次B样条曲面片如下式所示:

  36. 同样,式中的 Fi,n(u)称为n次B样条  基函数族,连结 bi,j组成的空间网格  称为B特征网格。  在实际应用中,最为重要的一种曲面  是双三次B样条曲面片,此时 m=n=3。  其表达式为:

  37. 式中:  其余的[U]、[V]和[b]同Bezier曲面。

  38. 表达式中的矩阵展开,其实就可以得  到如类似于在曲线中的混合函数。如  展开[U][N]可得:  上面介绍的 Bezier曲面与此相同。

  39. 整个B样条曲面是由B样条曲面片连  接而成的(这正如B样条曲线),并  且在连接处达到了C²连续,这一点是  由三次B样条基函数族 Fi,j(u) 的连续  性保证的。所以,双三次B样条曲面  的突出特点就在于相当轻松地解决了  曲面片之间的连接问题。                       ***

More Related