240 likes | 461 Views
Bi-3 C 2 Polar Subdivision. Ashish Myles University of Florida New York University J ö rg Peters University of Florida. Overview: Bicubic C 2 polar subdivision. What is polar subdivision? (increased artistic freedom) Why is curvature continuity difficult? (and what makes it feasible?).
E N D
Bi-3 C2 Polar Subdivision Ashish MylesUniversity of FloridaNew York University Jörg PetersUniversity of Florida
Overview: Bicubic C2 polar subdivision • What is polar subdivision?(increased artistic freedom) • Why is curvature continuity difficult?(and what makes it feasible?)
Uniform Bicubic Splines • Quad-grid mesh input • Degree (3, 3) • Curvature continuous (C2) • Well understood,explicit formulas • Mesh refinement
Generalize mesh connectivity valence ≠ 4 Catmull-Clark (C1, unboundedcurvature) polar Bicubic PolarSubdivision –Karciauskas, Peters '08 (C1, bounded curvature)
Why not Catmull-Clark on Polar? Catmull-Clark Bicubic PolarSubdivision
Subdivision on Polar Connectivity Catmull-Clark C1unbounded curvature Bicubic polarsubdivision C1boundedcurvature C2PS continuouscurvature Bicubic + C2 = Surprise!
Why a surprise? • Subdivision theory ([Peters, Reif '08] Subdivision book) • Our contribution: k = 2, q = 3: bicubic, simple masks, C2 at the poles Degree q = 6 needed for C2 at extraordinary points
Subdivision rules • Small masks that depend solely on the connectivity 1-link 2-link
Curvature comparison C2 Jet subdivision (degree (6,5)) C1 bicubic polar subdivision C2PS (degree (3,3))
Curvature comparison – finger C1 bicubic polar subdivision C2 Jet (6,5) subdivision C2PS (3,3)
Part II • What is polar subdivision?(increased artistic freedom) • Why is curvature continuity difficult?(and what makes it feasible?)
z-coordinate quadratic in x and y coordinates need deg 6! need deg 2 deg 3 deg 1 Why deg 6 for C2 at the pole? • C2 & flexible ⇒ can reconstruct a paraboloid f(x, y) = (x, y, x2 + y2) E.g. polar valence = 6
curve C2PS need deg 2 curve deg 1 Infinite valence • Valence → ∞ ⇒ control points → curves⇒ polar coordinates: f(x, y) = (x, y, x2 + y2)f(r cos(t), r sin(t)) = (r cos(t), r sin(t), r2) valence =∞
Infinite valence ⇒ C2 f(x, y) = (x, y, x2 + y2) = (r cos(t), r sin(t), r2) f(x, y) = (x, y, x2 – y2) = (r cos(t), r sin(t), r cos(2t)) f(x, y) = (x, y, 2 x y) = (r cos(t), r sin(t), r sin(2t)) span{x2 + y2, x2 – y2, 2 x y} = span{x2, y2, x y} = span{x,y} × span{x,y}
? ? ? ? ? ? ? ? ? Extraordinary neighborhood ... ...
A (5n+1) × (5n+1) matrix q0 q1 5n+1 vertices 5n+1 vertices Recall: Stationary subdivision analysis • q1 = A q0 • Radial-only subdivision ⇒ A is square • q∞ = A∞q0 → eigenanalysis of A
(5(2n)+1)×(5n+1) matrix A Standard theory not applicable to C2PS • q1 = A q0 • A is not square • q∞ = (...AAAA) q0 → Cannot use eigenanalysis • But: valence → ∞ q0 q1 5n+1 vertices 5(2n)+1 vertices
(5(2n)+1)×(5n+1) matrix A Trick – reformulate C2PS • Reformulate C2PS refinement in terms of 6 variables f(x, y) = p0 + p1x + p2y + p3 (x2 + y2) + p4 (x2 – y2) + p5 (2 x y) + o(x2 + y2) • C2PS = Diminishing perturbation of subdivision on infinite valence ⇒C2 q0 q1 5n+1 vertices 5(2n)+1 vertices
Future direction • C2 for polar and regular – how about extraordinary points? • Approx. double the extraordinary facet neighborhood • Can we make the subdivision masks easy too? Catmull-Clark non-stationary refinement
Summary • Bicubic C2 Polar subdivision • simple, curvature continuous • Analysis technique • compare with stationary algorithm(on curves) • Non-stationary valence/connectivity • allows for low degree + high smoothness
Acknowledgments • SIGGRAPHcommittee andreviewers • NationalScienceFoundation(0728797)