1 / 51

SIGGRAPH 2003, San Diego

SIGGRAPH 2003, San Diego. Fair and Robust Circle Splines. Carlo Séquin, EECS, UCB Kiha Lee, ME, UCB. Motivation: Smooth Curves on a Sphere. “Grand Tour” camera movements to look inward towards an object.

norman
Download Presentation

SIGGRAPH 2003, San Diego

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SIGGRAPH 2003, San Diego Fair and Robust Circle Splines Carlo Séquin, EECS, UCBKiha Lee, ME, UCB

  2. Motivation: Smooth Curves on a Sphere • “Grand Tour” camera movements to look inward towards an object. • Sculpture Design:“Viae Globi” (Pathways on a Sphere)Sweep along a smooth curve on a sphere.

  3. Concepts and Goals Smooth Interpolating Curves on Sphere: • Sparse set of control points. • These get interpolated exactly. • All symmetries are maintained. • Produces round, pleasing looking curves. • If circles are possible, they will result. •  Like MVC*, but only local support. * MVC = Minimum (Curvature) Variation Curve

  4. Circle-Splines (“C-Splines”) One simple scheme: … in the plane, on the sphere, in 3D space,

  5. Circle Splines: in the Plane (0) Original data points and control polygon

  6. B D A C Circle Spline Construction (1) Original data points and control polygon Focus on 4 consecutive points: A, B, C, D

  7. B D A C Circle Spline Construction (2) Original data points and control polygon Focus on 4 consecutive points: A, B, C, D LEFT CIRCLE thru A, B, C

  8. B D A C Circle Spline Construction (3) Original data points and control polygon Focus on 4 consecutive points: A, B, C, D LEFT CIRCLE thru A, B, C RIGHT CIRCLE thru B, C, D

  9. B D A C Circle Spline Construction (4) Original data points and control polygon Focus on 4 consecutive points: A, B, C, D LEFT CIRCLE thru A, B, C RIGHT CIRCLE thru B, C, D BLEND CURVE between B and C

  10. Pi–2 Pi–1 Pi+1 Pi+2 STRAIGHT LINE STRAIGHT LINE Pi PURE CIRCLE B D A C BLEND PURE CIRCLE Local Support

  11. How to do the Blending ? Left Circle thru: A, B, C; Right Circle thru: B, C, D. D ? B C A

  12. Circle Blending: Previous Art (1) Left Circle thru: A, B, C. Right Circle thru: B, C, D. n points on Left Circle. n points on Right Circle. Interpolate positions between corresponding points. D C B S Linearly weighted:[ Wenz, 1996 ] A

  13. WEIGHT 0 STEP u 1 Circle Blending: Previous Art (2) Trigonometrically weighted: Wu = Lu cos2(u p/2) + Ru sin2(u p/2)[ Szilvasi-Nagy & Vendel, 2000 ] D Curve clings to base circleG2-continuity @ B C B S A STEP u

  14. Circle Blending: Previous Art (3) • Angle-based blending [ Séquin & Yen, 2001 ] • Subdivision technique (find mid-point only, and recurse) • Curves looked good • Could not formally prove continuity • 2003: Sampled (Morph) Construction • Curves look even better! • Can formally prove G2-continuity • Can also obtain C2 with re-parameterization

  15. Blending With Intermediate Circles (1) Left Circle thru: A, B, C; Right Circle thru: B, C, D. Draw TangentVectors for both circles at B and C. D B C A

  16. Blending With Intermediate Circles (2) Left Circle thru: A, B, C; Right Circle thru: B, C, D. Draw Tangent Vectors for both circles at B and C. Draw a bundle of regularly spaced Tangent Vectors. D B C A

  17. Blending With Intermediate Circles (3) Left Circle thru: A, B, C; Right Circle thru: B, C, D. Draw Tangent Vectors for both circles at B and C. Draw a bundle of regularly spaced Tangent Vectors. Draw n equal-angle-spaced Circles from B to C. D B C A

  18. S Blending With Intermediate Circles (4) Left Circle thru: A, B, C; Right Circle thru: B, C, D. Draw Tangent Vectors for both circles at B and C. Draw a bundle of regularly spaced Tangent Vectors. Draw n equal-angle-spaced Circles from B to C. D Make n equal segments on each arc andchoose uth point on uth circle. B C A  G1-continuity @ B, C

  19. Trigonometric Angle Blending (1) Left Circle thru: A, B, C; Right Circle thru: B, C, D. Draw Tangent Vectors for both circles at B and C. Draw a bundle of trigonometrically spaced tangents. D ANGLE B C A STEP u

  20. Trigonometric Angle Blending (2) Left Circle thru: A, B, C; Right Circle thru: B, C, D. Draw Tangent Vectors for both circles at B and C. Draw a bundle of trigonometrically spaced Tangents. Draw n trigonometrically-spaced Circles from B to C. D B C A

  21. Trigonometric Angle Blending (3) Left Circle thru: A, B, C; Right Circle thru: B, C, D. Draw Tangent Vectors for both circles at B and C. Draw a bundle of trigonometrically spaced Tangents. Draw n trigonometrically-spaced Circles from B to C. Blend curve “hugs” initial circles longer: G2 D B C S A

  22. Various Interpolation Schemes Too sharp Too “loopy” “Just right” CubicPolynomialSubdivision TrigonometricallyPosition-BlendedCircular Arcs ( Szilvasi-Nagi ) TrigonometricallyAngle-Blended C-Spline NO CUSPS !

  23. Comparing Interpolation Schemes • A simple control polygon( Test case 2 )

  24. Comparing Interpolation Schemes • Cubic polynomial subdivision scheme[ Butterfly, Loop, Zorin ] EXTREMECURVATURE Too sharp

  25. Comparing Interpolation Schemes • (Non-uniform) Lagrange Interpolation EXTREMECURVATURE Too sharp

  26. Comparing Interpolation Schemes • Linearly position-blended circular arcs[ Wenz, 1996 ] Too “loopy”

  27. Comparing Interpolation Schemes • Trigonometrically position-blended circular arcs[ Szilvasi-Nagi and Vendel, 2000 ] Too “loopy”

  28. Comparing Interpolation Schemes • Angle-blended C-splines: C0 / G2[ Séquin - Lee, 2003 ] “Just right”

  29. Comparing Interpolation Schemes • Angle-blended C-splines, reparameterized: C2 / G2[ Séquin - Lee, 2003 ] “Just right”

  30. Comparing Circle-Blending Schemes u=0 D B C B C PARAMETERLINESINTERSECT A u=1 Positional interpolationSzilvasi-Nagy & Vendel, 2000 Angle-based parametrization (new)

  31. Comparison of Location of Midpoint S SL Linearly averaged point position. SP Averaged circle,based on angles ! SA SR C B D A

  32. Problem of Position Averaging SL It would be difficult to reach tangent direction at C from mid-point SP SP SA SR C B D A

  33. Key Points about Circle Splines Going from Polynomial Splines to Blended Circles: • Give up affine invariance • Give up linear precision  Avoid cusps and hair-pin turns  Get nicely rounded, loopy curves  Approximate the behavior of the MVC 

  34. Bounded Curvature • For non-extreme control polygons, the resulting curvature is bounded. A 179° SWITCHBACK @ B MAX. CURVATURE = 10 B C D

  35. Circle-Splines on the Sphere Examples from a prototype editor program. We only need one small conceptual change …

  36. Concept: Swivel Planes thru B,C 3 consecutive points define a plane and a circle on it. A, B, C Left Plane. B, C, D  Right Plane. Intermediate planes / arcs at <lin./trig.> angle-steps. (u) P(u) A

  37. “Trigonometric Swivel” for G2-continuity B C C B D A D A Discrete Sample Points on Swivel Plane END VIEW SIDE VIEW

  38. Circle-Splines in 3D Free Space • We want to have a seamless, unnoticeable transition from sphere to plane:  No “if” statements in the code associated with a check for planarity ! • In 2001, we had a very cumbersome wayto bring spheres and planes under one hat. • Today, the 3D case and the spherical casenaturally turn out to be the same !

  39. Circle-Splines in 3D Left Circle thru: A, B, C; Right Circle thru: B, C, D. MirrorTangentVectorsfor both circles at B and C. Draw a bundle of suitably spaced Tangent Vectors. Corresponding tangent pairs define intermediate arcs. D MIRROR C B Two different planes A

  40. Circle-Splines on Sphere There is always at least one sphere through A, B, C, D. Left Circle andRight Circle lie on that sphere; The two tangent bundles are tangent to this sphere; All intermediate arcs lie on sphere through A,B,C,D; All generated points lie on sphere ! D MIRROR C B Tangent planes A

  41. A 3D Circle-Spline (Figure-8 Knot) (Cross-eye stereo view)

  42. Important Implementation Issues • Avoid calculations that explicitly involve the centers of the circular arcs,since these will go off to infinity, when the arcs become straight. • Calculate points along arc (B,C)as an offset from end point B. P(u) B C Linear steps, t(u)

  43. Parametric Representation of Blend Curve P(u) t(u) f(u) For: u = 0  1 • t(u) = ti cos2(u p/2) + ti+1 sin2(u p/2) (Trigonometric angle parametrization) • f(u) = d sin(u t(u)) / sin(t(u)) • f(u) = (1-u) t(u) (Blend curve P(u) in polar coordinates) B C f(u)

  44. How to Find Arc Through 3 Data Points ?(We don’t really need arc, just need tangents!) • Do not try to find center, radius ! B b b C a b a a c a b A b a

  45. Key Insights • The typical polynomial splineblends between the straight-line segments of the control polygon. • Circle splines start with an overlapping sequence of circular arc segmentsand then blend between those. • The relevant parameter in this contextare ( turning / tangent ) angles.

  46. Why This Works • We want to emulate a (loopy) MVC. • The ideal MVC result is a circle.  If you want to see circles, start with circles ! • Affine invariance  dimensional collapse. • Circles always consider problem in a 2D way, giving equal weight to both coordinate axes.

  47. BAD TANGENT UNNECESSARY INFLECTION POINTS Caveat • These curves are not MVC’s ! • While they are G2 (C2) continuous, theymay possess unnecessary undulations. A local scheme cannot compete with a global scheme !

  48. Extensions • Extend range of local support to >3 points. • Better approximation to MVC: Cornu spiral or clothoid(curvature is linear with arc length). • In 3D also consider a helix as a primitive. Issues are : • How to find robustly and efficiently the (unique?) matching primitives ? • How to blend them ?

  49. An “Evolutionary” Process… • From rulers… Polynomial splineswith their linear interpolationare reminiscent of straight edge rulers…

  50. An Evolutionary Process… • From rulers… • to compasses… Circle splinescapture the power of compasses…

More Related