Bezier curve和B-spline(三)
B样条曲线产生背景及定义
B样条产生的背景
Bezier 曲线曲面有很多优点,比如说可以用鼠标拖动控制顶点以改变曲线的形状,非常直观,给设计人员很大的自由度。
Bezier 曲线曲面是几何造型的主要方法和工具。
但是Bezier 曲线有几点不足:
(1)一旦确定了特征多边形的顶点数(n+1)个,也就决定了曲线的阶次(n次)
(2)Bezier 曲线或曲面的拼接比较复杂
(3)Bezier 曲线或曲面不能作局部修改
1972年,Gordon、Riesenfeld 等人提出了B样条方法,在保留 Bezier 方法全部优点的同时,克服了 Bezier 方法的缺点。
样条:分段连续多项式。
整条曲线有一个完整的表达形式,但内在的量是一端一段的,比如一堆的3次曲线拼过去,两条之间满足2次连续。这样既克服了波动现象,曲线又是低次的。既有统一的表达又有统一的算法。
如何进行分段呢?
B样条的递推定义和性质
B样条曲线的数字表达式为:
de Boor-Cox 递推定义
B样条基函数可以有各种各样的定义方式,但是公认的最容易理解的是 de Boor-Cox 递推定义。
它的原理是:只要是k阶(k-1次)的 B样条基函数,构造一种递推的公式,由0次构造1次,1次构造2次,2次构造3次,以此类推。
B样条基函数定义区间及节点向量
K阶B样条对应节点向量数
B样条函数定义区间
B样条曲线定义
B样条曲线性质及类型划分
B样条基函数的主要性质
局部支撑性
权性
连续性
分段参数多项式
B样条函数的主要性质
局部性
变差缩减性
设平面内 n+1 个控制顶点 构成B样条曲线 P(t)的特征多边形。在该平面内的任意一条直线与P(t)的交点个数不多于该直线和特征多边形的交点个数。
几何不变性
B样条曲线的形状和位置与坐标系的选择无关。
凸包性
B样条曲线类型的划分
均匀B样条曲线
准均匀B样条曲线
分段Bezier 曲线
B样条曲线用分段Bezier 曲线表示后,各个曲线段就具有了相对的独立性。另外,Bezier 曲线一整套简单有效的算法都可以原封不动地采用,缺点是增加了定义曲线的数据,控制顶点数及节点数。
非均匀B样条曲线
当节点沿参数轴的分布不等距时,表示非均匀B样条函数。
B样条曲面