多项式曲线——搞清楚贝塞尔曲线、B样条曲线、nurbs曲线的区别
贝塞尔曲线
Bezier曲线定义
贝塞尔曲线由一组控制点
P
i
∈
R
2
,
0
≤
i
≤
n
P_i∈R^2,0≤i≤n
Pi∈R2,0≤i≤n构成,其方程为:
多项式
B
i
(
t
)
B_i (t)
Bi(t)称为伯恩斯坦
(
B
e
r
n
s
t
e
i
n
)
(Bernstein)
(Bernstein)基函数。Bezier曲线是控制多边形的控制点关于伯恩斯坦基函数的加权和,Bezier曲线的次数都为n,需要
n
+
1
n+1
n+1个控制点来定义。
Bernstein基函数的性质
- 非负性
- 端点性质
- 权性
- 对称性
- 导函数
Bezier曲线的性质
- 端点性质
- 一阶导数
- 二阶导数
- 对称性
- 凸包性质
- 几何不变性
- 仿射不变性
- 变差缩减性
B样条曲线
B样条曲线定义
为了能描述复杂形状具有局部性质。改用特殊的基函数即B样条基函数代替Bernstein基函数。一条次数为j的平面B样条曲线,由一组控制点
P
i
∈
R
2
P_i∈R^2
Pi∈R2和一组节点矢量
t
i
t_i
ti组成,其方程为:
由考克斯德布尔递归公式定义的基函数为:
其中,
- 约定0/0=0;
- 控制点的个数为n+1;
- 节点个数为n+k+2;
- 基函数的阶次为j+1,次数为j;
B样条基函数的性质
- 递推性
- 规范性;
- 局部支撑性
- 连续性;
B样条曲线的分类
- 均匀B样条曲线;
- 准均匀B样条曲线;
- 分段Bezier曲线;
- 非均匀B样条曲线;
Nurbs曲线
Nurbs方法在有理Bezier方法与非有理B样条方法的基础上,引入了权因子和分母。主要优点如下:
- 将初等曲线曲面与自由曲线曲面的表达方式统一起来;
- 增加了权因子,有利于对曲线曲面的形状控制和修改;
- 非有理B样条、有理、非有理Bezier方法是Nurbs的特例;
- 在比例、旋转、平移、错切以及平行和透视投影变化下是不变的;
Nurbs曲线的定义
平面非均匀有理B样条曲线(Non-Uniform Rational B-Splines,简称NURBS)曲线为:
其中,
ω
i
,
i
=
0
,
1
,
…
,
n
ω_i,i=0,1,…,n
ωi,i=0,1,…,n为权因子,分别于控制点
P
i
,
i
=
0
,
1
,
…
,
n
P_i,i=0,1,…,n
Pi,i=0,1,…,n相联系。
Nurbs曲线的性质
- 曲线过两端点;
- 局部修改性质;
- 变差减小性质;
- 强凸包性;
- 仿射和透视变换不变性;
- 参数连续性;
- 某一个权因子为0,则相应的控制点对曲线没有影响;
- 某一个权因子为无穷大,则在相应的参数范围内该点为控制点;
- 不包含内节点的Nurbs曲线是有理Beizer曲线。