现在的位置: 首页 > 综合 > 正文

B样条曲线

2013年05月17日 ⁄ 综合 ⁄ 共 2619字 ⁄ 字号 评论关闭

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相邻控制点重合的影响一点。

 

抱歉!评论已关闭.