Bezier surface in triangular patches

de Castlejau Algorithm of triangular Bezier surfaces

Degree raising in triangular patches

Derivative of a triangular Bezier surface

Subdivision of a triangular Bezier surface


Bezier surfaces in triangular patches

The idea behind the Bezier surface in triangular patches is to polarize the variables u and v separately. This way if F is a bipolynomial surface of degree , we get a (p+q)- multiaffine map which is symmetric separately in its first p arguments and in its last q arguments, but not symmetric in all its arguments. We get what is traditionally called a tensor product Bezier surface. The advantage of this method is that it allows the use of many algorithms applying in the case of curves. Note that in this case, since the surface F is really a map However, since is isomorphic to , we can view F as a polynomial surface We can also polarize F in a different way: treating the coordinates of a point (u,v) in , and to polarize the polynomials in both variables simultaneously. This way, if m is such that F is a polynomial surface of total degree m, we get an m-multiaffine map which is symmetric in all of its m arguments. In some sense, this method is the immediate generalization of Bezier curves. Indeed, since the surface F is indeed a map The resulting surface in this case is traditionally called a triangular Bezier surface (or simply Bezier triangles).

Bernstein basis: Following the example, we are going to use the generalized Bernstein polynomials as a basis to define We call X(u) the parametric representation of a triangular Bezier surface of degree n. The coefficients in (**) are called Bezier points. They form the Bezier net or Bezier polyhedron associated with the surface. The coefficients can be vector-valued (in or ), or they can be real numbers ,which we then refer to as Bezier ordinates. In the latter case, the triangular Bezier surface is actually a function defined on the base triangle. As in the case of Bezier curves, we associate Bezier ordinates with points I/n on the base triangle according to the following scheme: with Bezier ordinates we associate the parameter values

de Castlejau algorithm of triangular Bezier surfaces

The de Castlejau Recurrence Relation The de Castlejau algorithm can also be extended to triangular Bezier surfaces. The classical de Castlejau algorithm is based on the following decomposition of Bernstein polynomials: Now since i+j+k=n, we have and it follows analogous to (*) that or equivalently In view of the basic idea of the algorithm that the desired surface point X(u) can be found stepwise by computing the Bernstein polynomials of lower degree, we can write where are triangular Bezier patches of degree r, and are generalized Bernstein polynomials of degree n-r. On the other hand, from (**) we have Comparing coefficients leads to the de Castlejau recursion relation

Geometric Interpretation In the recurrence relation, we set for r=0, and the step r=n-1 produces The recurrence formula asserts that geometrically, the new coefficient is computed as an average of the three coefficients , i=1,2,3, using the barycentric coordinates (u,v,w) with respect to the upright triangle

Degree Raising for triangular Bezier surfaces

Degree Raising Rule Suppose are the Bezier points of a triangular Bezier surface of degree n, and are the Bezier points of the same surface after transforming to a basis of degree n+1. Then with whenever any of the i,j,k is smaller than 0 or greater than n. Equivalently, we can write where To see why this is true please click here. Remark: 1. This says that can be obtained by computing the values at (i/(n+1)), (i/(n+1)), (i/(n+1)) of the linear function interpolating the values 2. On the boundary of the net, the degree raising formula reduces to one for curves. The figure illustrates the construction of new Bezier points by degree raising from n=2 to n=3.

Derivative of triangular Bezier surfaces

First Order Directional Derivatives: It will be convenient to work with the operator notation with and Since u+v+w=1, the first directional derivative is given by where we have used w=1-u-v. Alternately, we could have eliminated v=1-u-w, in which case the first directional derivative becomes Similarly, we also have The figure gives a geometric interpretation of the directional derivatives along the boundary curve correspoding to constant u. At the corner (0,0,1) of the triangular patch, the directional derivatives are i.e. the tangent plane at a vertex is determined by the Bezier point at the corner and its two neighbors.

Subdivision of a triangular Bezier surface --

As for tensor-product surfaces, the de Castlejau algorithm can also be used to subdivide a triangular Bezier surface into three spline patches touching at a given point (u0, v0, w0). The figure shows the boundaries of the three new nets in the case n=3. The Bezier points of the three new surface patches are again boundary points of the de Castlejau scheme (which we now organize as a tetrahedron). Patch I has Bezier points Patch II has Bezier points Patch III has Bezier points where r+j+k=n. By combining several steps of the de Castlejau algorithm,we can subdivide a traingular Bezier patch into an arbitrary number of subtriangles of degree n. The sequence of piecewise linear surfaces interpolating the Bezier nets converges to the Bezier surface.