贝塞尔曲线——精选推荐

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2.2.3 Bezier曲线
在工程设计中,由给定型值点进行曲线设计往往由于型值点的误差而得不到满意的结果。

另一方面,在一些更注重外观的设计中,型值点的精度又不很重要。

从1962年起,法国雷诺汽车公司的Bezier开始构造他的以“逼近”为基础的参数曲线表示法。

以这种方法为基础,完成了一种自由型曲线和曲面的设计系统UNIS-URF,1972年在雷诺汽车公司正式使用。

Bezier曲线的形状是通过一组多边折线(称为特征多边形)的各顶点唯一地定义出来的。

在多边形的各顶点中,只有第一点和最后一点在曲线上,其余的顶点则使用控制曲线的导数、阶次和形式。

第一条和最后一条折线则表示出曲线在起点和终点处的切线方向。

曲线的形状趋向仿效多边折线的形状。

改变控制点与改变曲线形状有着形象生动的直接联系。

如图2.6所示。

1)Bezier曲线的定义
给定 n+ l个空间向量bi(i= 0,l,…,n),称 n次参数曲线段
为Bezier曲线。

式中使用了Bernstein多项式Bi,n(u)作为基函数:
u是局部参数,u∈[0,1]。

我们给出n=3的Bezier曲线的矩阵表示:
则有 P(u)=UMB
2)Bezier曲线的性质
Bezier曲线的基本数学表达式:
这说明Bezier曲线在始点和终点处的切线方向是与Bezier控制多边形的第一边及最后一边的走向一致。

这说明曲线在起点和终点处的二阶导数仅与相邻的二点位置有关,而与其余各点的位置关。

Bezier曲线的这一特性说明,只需适当移动控制点就能获得满意的曲线位置和形状。

利用这个特性,当采用分段Bezier 曲线时,只要保证曲线在接点处的折线共线,就可以得到C1连续性。

如图2.7所示的一个公共端点的二条Bezier曲线,当两段曲线的控制折线在接点处共线时,就保证了
它们连成的曲线在公共端点的一阶连续。

Bezier曲线还具有凸包性,即B6zier曲线均落在由它的控制
点形成的凸壳内。

所谓凸壳是指用橡皮图从外面去套所有控制点所
形成的凸多边形。

研究表明,分段Bezier曲线的凸包性体现更明显,
这对于曲线的分割求交将更为有利。

此外,Bezier曲线的形状仅与特征多边形各控制点bi有关,
它不依赖于坐标系的选择,因此具有几何不变性。

没有局部控制能
力是 Bezier曲线的一个缺点。

在工程中,产品的模型常常需要局
部修改。

缺乏局部控制的能力在工程中是难以接受的。

Bezier曲线另一缺点是随着控制点的增加,曲线的次数也增加,因而计算量增大。

下面介绍的B样条曲线可克服这两个缺点。

3)Bezier曲线的计算及分割作图法
Bezier曲线在工程中广泛接受的一个重要原因是其可以采用非常简单的方法制作。

下面推导Bezier 多项式的递归关系,这种关系可方便用计算机程序实现,而且便于用图形来解释。

重写Bezier曲线方程为
可以看到,第一个括号内的项形成对控制点b0,b1,…,bn-1的Bezier多项式,而第二个方括号内的项对b1,b2,…,bn形成多项式。

现在引人符号Pk,i(u)表示对bk,bk+l,…,b的Bezier多项式,那么上述
方程可以重写为
上式表明,Bezier多项式可以由另外两个这种多项式求得。

其求法为用一条线连接相应的点(即在同一参数U),并与u成比例地分那条线。

我们再用图2.8所示的例子来看一下Bezier曲线的分割作图法。

前例给出的由点b0,b1,b2,b3控制成的一条三次Bezier曲线可
在u=l/2处分段,分成b4的两段均为Bezier曲线,它们由各自
的四个控制点控制。

在图2.8中,点b0,b1,b2和b3控制形成一
条三次,Bezier曲线。

取线段bobl的中点b4,线段b1b2的中点
b5,线段 b2b3的中点 b6,线段 b4b5的中点 b7,线段 b5 b6的
中点b8,以及线段b7bs的中点bg,则可以证明,b9在由b。

,b1,b2,b3确定的三次Bezier曲线上,且为u=l/2时的点P(l/2)。

我们将u=l/2代人矩阵方程就可得到:
图2.8的分割,我们获得折线b0b4 b7b9b8b6b3,它比折线b0blb2b3更接近该BeZier曲线,且b9在曲线上。

继续分别对由b9分成的两段曲线作分割,除获得更接近曲线的折线外,还获得曲线上的两个点。

分割次数越多,新的折线越逼近曲线,当到达某种精度时,可将获得的折线近似的表达Bezier曲线。

由于分割操作仅涉及加法和移位操作,所以便于硬件实现,提高作图速度。

读者可根据送推式写出相应的计算机
程序,进一步从几何作图的角度,对计算式改进,以便使算法更为简单。

2.2.4 B样条曲线
1)B样条曲线的定义
B样条线不仅保留了Bezier曲线的优点,而且具有局部控制的能力,B样条曲线方程可写为:
其中di,i = 0,1,…,n为控制顶点。

顺序连成的折线称为B样条控制多边形,Nik(u),i= 0,1,…,n称为K次规范B样条基函数,其中每一个称为规范B样条,简称B样条。

它是由一个称为节点矢量的非递减的参数U的序列U0<U1<…<Ui+k+1所决定的光次分段多顶式。

B样条具有局部支承性质,B样条基是多顶式样条空间具有最小支承的一组基,故被称之为基本样条(Basic spline),简称B样条。

B样条与Bezier曲线比较有以下3点:
(l)Bezier曲线的阶次与控制顶点数有关,而B样条的基函数次数K与体制顶占于de·
(2)Bezier曲线所用的Bernstein基函数是多顶式函数.B样条曲线的基函数是多项式样条;
(3)Bezier曲线缺乏局部控制能力,而B样条曲线具有局部控制性质。

B样条的基函数可由下面的速推关系得到
上式中Ni,k(u)的次数由K确定.因此第i个K次B样条Ni,K(u)的节点为K+2个,即其支承区间为[ui,ui+K+1]。

在B样条曲线方程中共有n+1个控制顶点,即要用到 n+1个k次B样条基函数,因此这些基函数所用的主承区间的并集就定义了这一组样条基的节点矢量,u=[u0,U1 ,…,Un+k+1],可见B 样条Ni,k(u)定义在整个参数U轴上,、但由局部质可知,仅在支承区间[ui,ui+k+1]上有大于零的值,在支承区间以外均为零,即B样条Ni,k(U)由支承区间内节点,B样条曲线的这一特性决定了B样条的这一特性决定了B样条曲线与Bezier线的不同之处。

2)B样条曲线的特性
基函数Ni,k(U)有下列4个特性:
由于上述的基函数特性,使B样条曲线具备下列几何特性:
(1)几何不变性(即坐标系独立性)
对一条曲线的变换可通过对控制点的变换来实现。

假设控制点平移了△T,B(U)为由控制点{di}生成的几次B样条曲线,BT(U)为由控制点{di+△T}生成的k次B样条曲线,那么由于
(2)凸壳性
由基函数的特性②和③使B样条曲线局限于它的控制多边形和凸壳内。

(3)局部调整性
由Ni,k(u)的第③条特性决定了一个控制点的移动只会影响该曲线的K个节点区间。

K次B样条的支承区包含 K+ l个节点区间,因此在参数u轴上任一点u ∈[ui, ui+1]处至多只有九十三个非零的k次B样条Nj,k(u),j=i-k,i-k+1,…,i,其它k次B样条在该处均为零。

例如,k= 2,u∈ [ui,ui +1]处,只有Ni-2,2(u), Ni-1,2(u)与N,2(u)非零,如图2.9所示。

这个局部性质表明,在曲线定义域内,定义在非零节点区间u∈[ui,ui+1?]上的那个k次B样条曲线段,由k+1个控制顶点,di-k,di-k+1,…,di及相应的B样条基函数决定,而与其它顶点无关。

当起始顶点变为di-k-1时,则由顶点di-k-1,di-k,…,di;就定义了上一曲线段。

如果起始顶点为di-k+1,则相应的 k+1顶点又定义了下一段曲线,如图2.10所示。

由此增加或减少一个控制顶点,在不含重节点情况下,样条曲线相应增加或减少了一段曲线。

(4)变差缩减性
任一平面和曲线的交点数不超过它与控制多边形的交点数,即控制多边形的顶点越多则曲线越接近多边形。

(5)k-r次可导性
Ni,k(U)的第④条特性说明,如果内部没有相同的节点,那么k阶的B样条曲线在每一点上都是k-r 次可导的。

3)B样条曲线的类型
B样条曲线按节点矢量中节点的分布情况不同,可划分为以下四种类型:
(1)均匀B样条曲线(Uniform B- Spline Curve)
所谓均匀B样条曲线指其节点矢量中节点沿参数轴均匀或等距分布,即面i=ui+1-ui= Const
(2)准均匀B样条曲线(Quasi-unifirm B-spline curve)
此时节点矢量中两端点具有重复度k+1,而内节点均匀分布,即具有重复度1。

因此准均匀B样条曲线的节点分布与均匀B样条曲线的节点分布差别在两端点。

(3)分段Bezier曲线(Piecewise Bizier Curve)
在端点处其节点的重复度为K+1,即与第二种类型相同,但所有内节点的重复度为K,选用该类型有个限制条件,控制顶点数减1必须等于次数的正整数倍,即n/k二正整数,这样的节点矢量定义了分段Bernstein。

分段Bezier曲线有着广泛的应用,并作为B样条曲线的一种特殊类型在STEP标准中被定义。

分段Bezier曲线采用局部参数时,无需用到B样条的节点矢量,即使采用整体参数,给出其参数分割,也有别于B样条里的节点矢量。

在CAD系统的曲线设计中,一般不直接采用具有整体参数的分段Bezier曲线定义,因为如果直接用控制顶点来构造曲线,必须满足其限制条件,且所构造的分段Bezier曲线连接处往往只能是零阶连续或者达到 G1连续。

故实用中多数采用间接地定义分段 Bezier曲线的方法,即在组合几何连续的多段Bezier曲线中,采用B样条统一表示,以便实现统一的数据管理、数据传递和交换。

B样条曲线转换为分段Bezier 曲线的缺点是其定义曲线的数马指增加约大k-1倍。

(4)一般非均匀 B样条曲线(General non- uniform B-spline Curve)
如果节点矢量在参数u轴是非等长的,可定义为均非。

如果节点矢量在参数U轴上是非等长的.则可定义一般非均匀B样条。

根据曲线首末端点是否相重可以有封闭曲线与开放曲线之分。

对封闭曲线又可以根据其端点连接情况分为周期与非周期曲图2·11封闭B样条曲线线。

图2.11给出了 n=5,k=4的封闭B样条曲线。

一般地说,非周期性均匀B样条曲线适用于作非封闭曲线,而周期性均匀B样条曲线适用于作封闭曲线。

我们还可以通过让几个顶点重合在一点来使曲线靠近某点。

例如图2.12所示在点山位置仅定义d4一个点和定义d4,d5 二个点两种情况的两条曲线,后者形成一个尖角,它是重节点B样条曲的一个例子。

重节点B样条技术在模型设计中有较重要的应用。

这也可直观地把曲线想像成一条磁化了的弹性带,磁铁位于所有顶点上,因此带子被吸向每一点。

磁场强度越强的地方(即重数越高的地方),带子就越被吸得靠近那图2·12相邻控制点重合的影响一点。

相关文档
最新文档