有理曲线和齐次坐标的概念,有理Bezier曲线是有理B样条曲线的特殊情况。
尽管多项式具有很多优点,但是有很多重要的曲线、曲面类型,如圆、椭圆、双曲线、圆柱面、圆锥面、球面等,无法精确地用多项式表达。例如, x y xy xy平面上圆心在原点的单位圆周无法用多项式坐标函数精确地表示。由经典数学可知,包括圆在内的所有二次曲线,都可以用有理函数(即两个多项式相除)来表示,事实上,他们可以用如下形式的有理函数来表示。
x ( u ) = X ( u ) W ( u ) , y ( u ) = Y ( u ) W ( u ) ( 1.13 ) x(u)=\frac{X(u)}{W(u)},\quad y(u)=\frac{Y(u)}{W(u)}\quad(1.13) x(u)=W(u)X(u),y(u)=W(u)Y(u)(1.13)
其中, X ( u ) X(u) X(u), Y ( u ) Y(u) Y(u)和 W ( u ) W(u) W(u)为多项式,由(1.13)式可见,每个坐标函数都具有相同的分母。
圆心在原点、半径为1的圆可以表示为
x ( u ) = 1 − u 2 1 + u 2 , y ( u ) = 2 u 1 + u 2 x(u)=\frac{1-u^2}{1+u^2},\quad y(u)=\frac{2u}{1+u^2} x(u)=1+u21−u2,y(u)=1+u22u
中心在原点,长轴为 y y y周、短轴为 x x x轴,长、短半径分别为2和1的椭圆为
x ( u ) = 1 − u 2 1 + u 2 , y ( u ) = 4 u 1 + u 2 x(u)=\frac{1-u^{2}}{1+u^{2}},\quad y(u)=\frac{4u}{1+u^{2}} x(u)=1+u21−u2,y(u)=1+u24u
中心在 P = ( 0 , 4 / 3 ) P=(0, 4/3) P=(0,4/3),横截轴(transverse axis)为 y y y轴的双曲线可表示为
x ( u ) = − 1 + 2 u 1 + 2 u − 2 u 2 , y ( u ) = 4 u ( 1 − u ) 1 + 2 u − 2 u 2 x(u)=\frac{-1+2u}{1+2u-2u^2},\quad y(u)=\frac{4u(1-u)}{1+2u-2u^2}\quad x(u)=1+2u−2u2−1+2u,y(u)=1+2u−2u24u(1−u)
其中,下面的那个分支(顶点为 P = ( 0 , 2 / 3 ) P=(0,2/3) P=(0,2/3))对应于 u ∈ ( 1 − 3 2 , 1 + 3 2 ) u\in\left(\frac{1-\sqrt{3}}{2},\frac{1+\sqrt{3}}{2}\right) u∈(21−3,21+3)。
顶点在原点,对称轴为y轴的抛物线可表示为
x ( u ) = u y ( u ) = u 2 x(u)=u\quad y(u)=u^2 x(u)=uy(u)=u2
n n n次有理Bezier曲线的定义为
C ( u ) = ∑ i = 0 n B i , n ( u ) w i P i ∑ i = 0 n B i , n ( u ) w i , 0 ⩽ u ⩽ 1 ( 1.14 ) \mathbf{C}(u)=\frac{\sum\limits_{i=0}^n B_{i,n}(u)w_i\mathbf{P_i}}{\sum\limits_{i=0}^n B_{i,n}(u)w_i},\quad0\leqslant u\leqslant1 \quad (1.14) C(u)=i=0∑nBi,n(u)wii=0∑nBi,n(u)wiPi,0⩽u⩽1(1.14)
其中, P i = ( x i , y i , z i ) P_i=(x_i,y_i,z_i) Pi=(xi,yi,zi)和 B i , n ( u ) B_{i,n}(u) Bi,n(u)同前, w i w_i wi