Bezier surface in rectangular patches

de Castlejau Algorithm for Tensor product Bezier surface

Degree raising in rectangular patches

 


Idea behind Bezier surfaces in rectangular patches --

(*junk*)

Tensor product Bezier surface --

Following the previous example, we are going to use Bernstein polynomials and as basis functions to define a parametric surface A surface written in the above form is called the tensor-product Bezier surface of degree (m,n).

Remark: The coefficients are called Bezier points, and the set of Bezier points is referred to as the Bezier net. The Bezier points completely determine the Bezier surface. The sequences of Bezier points { } in a Bezier net corresponding to a fixed i or k will be called threads of the Bezier net. The points b00, bn0, b0m, bnm are corner points of the Bezier surface. The point sets are the Bezier points of the boundary curves lying on the Bezier surface. The points determine the tangent plane at b00, determine the tangent plane at bn0, determine the tangent plane at b0m, determine the tangent plane at bnm.

The coefficients in (*) can be either vector-valued or real valued. In the latter case we refer to them as Bezier ordinates . Inserting Bezier ordinates in (*) leads to a surface in described by a function defined over the unit square. Then, as is the case for curves, the Bezier ordinates are to be associated with points (abscissae) with the parameter values (i/n, k/m). The figure illustrates schematically the correspondence between Bezier ordinates and their abscissae for a Bezier function of degree (n,m). Along the parametric line u=u0, the surface reduces to a Bezier curve with Bezier points Then with respect to the variable v, (*) reduces to The lines on the surface in the figure are in fact a set of parametric lines.

de Castlejau algorithm for Bezier Surfaces --

The de Castlejau algorithm of a Bezier curve can be modified to get the de Castlejau algorithm for a Bezier surface by first using the curve algorithm for v = v0 to compute the Bezier points and then using the curve algorithm again for u = u0 with these Bezier points to produce the surface value The figure illustrates the de Castlejau algorithm for a Bezier surface of degree (4,2). Of course, the de Castlejau algorithm can also be applied first with u = u0 and then in the second step with v = v0.

In addition to carrying out the de Castlejau algorithm by performing interpolation in the u and then in the v-direction, it is also possible to work alternately in the two directions. The figure shows how this bilinear interpolation works for n=m=3.

Degree raising for rectangular Bezier surfaces --

As for Bezier curves, it is also possible to raise the polynomial degree of a Bezier surface. Analogous to the case of Bezier curves, the Bezier net converges to the surface (Weierstrass approximation theorem). Raising the degree from n to n+1 in the u-direction leads to the (new) Bezier points for j=0(1)m. An analogous assertion holds for raising the degree from m to m+1 in the v-direction. The figure illustrates the result of raising the degree from 2 to 3 in both the u-direction and the v-direction.