介绍 1074年,Gordon和Riesenfeld用B样条基函数代替了Bernstein基函数,构造了B样条曲线。B样条曲线分段组成。每一段的参数t的区间为[0,1]。这样就克服了Bezier曲线的缺点:改变Berier曲线任意一个控制点,曲线上的所有点都变换。BSpline曲线的优点:修改某一控制点只引起与该控制点相邻的曲线形状发生变化,远处的曲线形状不受影响。这种优点使得B样条曲线广泛应用于交互式自由曲面设计。
二次Bezier曲线有三个控制点。n条二次Bezier曲线有3n个控制点。实际上,不需要这么多控制点。二个相接的曲线可减少一个点。可减少n-1点。设第1条二次Bezier的三个控制点为p1,p2,p3,第2条二次Bezier的三个控制点为p3,p4,p5,则控制点可减少为5个即p1 p2 p3 p4 p5。如果令p3为p2与p4点的中点,则又减少了一个控制点p3。这样,四个控制点p1 p2 p4 p5就可以确定二条二次Bezier曲线。5个控制点确定3条,6个控制点确定4条。n个控制点确定n-2条二次Bezier曲线。
B样条曲线的定义 B样条曲线分为均匀B样条曲线和非均匀B样条曲线,这里只讨论均匀B样条曲线。给定n+1个控制点Pi(i=0,1,2,...,n)的坐标Pi,n次B样条曲线段的参数表达式为 式中为n次B样条基函数,其形式为
其中
二次B样条曲线 二次B样曲线的n=2,i=0,1,2控制多边形有3个控制点P0,P1,P2。B样条曲线是二次多项式。 公式 待续 三次B样条曲线 公式待续 演示程序截图 三次B spline
参考书籍 《计算机图形学》 孔令德 |
|