80 likes | 117 Views
Parametric Patches. Tensor product or rectangular patches are of the form: P (u,w) = u,w [0,1]. The number of control points is (m+1)(n+1) Triangular patches have triangular domain. They are of the form: P (r,s,t) = r,s,t 0 It has (n+1)(n+2)/2 control points.
E N D
Parametric Patches • Tensor product or rectangular patches are of the form: P(u,w) = u,w[0,1]. The number of control points is (m+1)(n+1) • Triangular patches have triangular domain. They are of the form: P(r,s,t) = r,s,t0 It has (n+1)(n+2)/2 control points Dinesh Manocha, COMP258
Trimmed Patches • Arise in applications involving surface intersections, visibility (silhouettes), illumination etc. • The domain is irregular • Boundary or trimming curves are used to delimit a subset of points on the patch • In most applications, trimming curves correspond to high degree algebraic curves • Evaluate points on these curves using numerical methods • Fit spline curve(s) to these points • Trimmed domain is represented using piecewise spline curves • Point Classification:Check whether a point is in the trimmed domain, compute number of intersections with a line Dinesh Manocha, COMP258
Hermite Patches • A bicubic Hermite patch is given as: P(u,w) = , where u,w [0,1] • In matrix form it is given as P(u,w) = UAWT, where U = [u3 u2 u 1], W = [w3 w2 w 1] & A = [ ], A is a 4 X 4 X 3 matrix, 0 i 3, 0 j 3, It has 48 algebraic coefficients Dinesh Manocha, COMP258
Bicubic Hermite Patches • A bicubic Hermite patch is specified using: • 4 corner points: P00 ,P01 ,P10 ,P11 • 4 boundary curves: Pu0 , Pu1 ,P0w ,P1w (each is a cubic curve) • Use Hermite interpolation to specify the boundary curves: Pu0 = F[P00 P10 Pu00 Pu10 ]T Pu1 = F[P01 P11 Pu01 Pu11 ]T P0w = F[P00 P01 Pw00 Pw01 ]T P1w = F[P00 P11 Pw10 Pw11 ]T Dinesh Manocha, COMP258
Bicubic Hermite Patches • Boundary curve constraints: 12 of the 16 vectors needed to specify the geometric coefficients • Other 4 vectors are specified using twist vectors at each corner point as: at u = 0, w = 0 at u = 1, w = 0 and similarly • These twist vectors determine how the tangent vectors change along the boundary curves Dinesh Manocha, COMP258
Bicubic Hermite Patches • Given the boundary conditions and control points, the patch is given as: , where , are the Hermite basis functions, and P00P01P00wP01w B =P10P11P10wP11w P00uP01uP00uwP01uw P10uP11uP10uwP11uw Dinesh Manocha, COMP258
Hermite Patches • Given the boundary conditions and control points, the patch is given as: , or it can be given in tensor product representation as: Dinesh Manocha, COMP258
Composite Hermite Surfaces • Given as a collection of individual patches • Continuity: Given two patches: P(u,w) & Q(u,w) • C0 or G0 continuity: Means same boundary curves: • P(1,w) = Q(0,w) • G1 continuity: The coefficients of auxiliary curves used to define tangent vectors must be scalar multiples, i.e.: If these conditions are satisfied, we find that Dinesh Manocha, COMP258