Tensor Product Bezier Patches • Earlier work by de Casteljau (1959-63) • Later work by Bezier made them popular for CAGD • The simplest tensor product patch is a bilinear patch, based on the concept of bilinear interpolation (fitting simplest surface among 4 points) à • Bilinear Patch: Given 4 points, b00, b01 ,b10 ,b11, the patch is defined as: Pà(u; w) = P 1 P 1 1 1 b B (u)B j (w) i= 0 j = 0 ij i or in matrix form, it can be expressed as: â b 00 b 01 ã â 1 à w ã [1 à u u] b 10 b 11 w 09/23/02 Dinesh Manocha, COMP258 Bilinear Tensor Product Bezier Patches They are called a hyperbolic paraboloid • Consider the surface, z = xy. It is the bilinear interpolant of 4 points • àâ 0 ã â 1 ã â 0 ã â 1 ã 0 ; 0 ; 1 ; 1 0 0 0 1 à • If we intersect with a plane parallel to the x,y plane, the resulting curve is a hyperbola. If we intersect it with a plane containing the zaxis, the resulting curve is a parabola. 09/23/02 Dinesh Manocha, COMP258 Direct de Casteljau Algorithm • Extension of linear interpolation (or convex combination) algorithm for curves to surfaces • Given a rectangular array of points, bij, 0 i,j n and parameter value (u,w). Compute a point on a surface determined by this array of points by setting: à r ;r b i ;j = à [1 à u r = 1,….,n i,j = 0,….,n-r and â b ri ;jà 1;r à 1 b ri ;jà +1;r1 à 1 ã â 1 à w ã u] r à 1;r à 1 r à 1;r à 1 w b i + 1;j b i + 1;j + 1 0;0 b i ;j = b i ;j n;n b 0;0 is the point with parameter values (u,w) on the surface 09/23/02 Dinesh Manocha, COMP258 Direct de Casteljau Algorithm The net of bij, is called the Bezier net or the control net. • Tensor product formulation: A surface is the locus of a curve that is moving thru space and thereby changing its shape • The sameàsurface can also be represented using Bernstein basis as: P n P n n n P (u; w) = b B (u)B i j i j (w) i= 0 j=0 à • • de Casteljau’s be easily extended when the control points along u and w directions are different (say m X n) – Apply the recursive formulation till b k;k is computed, where i ;j k = min(m,n) – After that use the univariate de Casteljau’s algorithm 09/23/02 Dinesh Manocha, COMP258 Properties of Bezier Patches Affine invariance • Convex hull property • Boundary curves: are Bezier curves • Variation àdimishing property: Not clear whether it holds for surfaces – Easy to come with an counter example à • 09/23/02 Dinesh Manocha, COMP258 Degree Elevation Goal: To raise the degree from (m,n) to (m+1,n) • Compute new coefficients, b 1;0 , such that the surface can be i ;j expressed as: • à P n j=0 âP ã n m + 1 (1;0) m + 1 B i (u) B j (w) i= 0 bij P (u; w) = à in square brackets represent n+1 univariate degree • The n+1 terms elevation • The new control points can be computed, by using the univariate formula: i i è 1;0 i = 0; :::; m + 1 à (1 )b + b à i ;j i 1;j b i ;j = m+ 1 m+ 1 j = 0; :::n 09/23/02 Dinesh Manocha, COMP258 Derivatives Goal: To compute partials along u or w directions • A partial derivative is the tangent vector of an isoparametric curve: • P @ P (u; w) = @u à • It can be expressed as: n j=0 â@ P @u m m b B i j i (u) i= 0 ã n B j (w) à @P (u; w) = m P @u where 09/23/02 n P mà 1 j=0 i= 0 à1 n É (1;0) b i j B m (u)B i j (w), É 1;0b i ;j = b i + 1;j à b i ;j Dinesh Manocha, COMP258
© Copyright 2026 Paperzz