Download presentation
Presentation is loading. Please wait.
1
SIAM 2001, Sacramento, CA Circle Splines on the Sphere and in 3-Space Carlo Séquin, EECS, UCB Kiha Lee, ME, UCB Jane Yen, ( now at PIXAR)
2
Concepts and Goals Smooth Interpolating Curves: u Design needs only a few control points. u These get interpolated exactly. u All symmetries are maintained. u Produces pleasing looking curves. u But only local support (4 control points). u If circles are possible, they will result.
3
Applications on the Sphere “Grand Tour” camera movements to look inward on an object. Sculpture Design: “Viae Globi” (Pathways on a Sphere). u Sweep a suitable cross section along a smooth curve on a sphere.
4
Inspiration: Brent Collins’ “Pax Mundi” a sweep path on a sphere
5
How Do You Design these Things ? u Marker pen on tennis ball ?
6
Brent Collins: Carved Wood Master Create hollow sphere by lamination (30” diam). Draw path on sphere. Carve a thick band. Profile the band. Sand and polish. Takes 3-4 months. Visualization ? Prototyping ?
7
Circle-Splines (C-Splines) on the sphere. in 3D space. in the plane.
8
Circle Splines: in the Plane (1) Original data points and control polygon
9
Circle Spline Construction (1) Original data points and control polygon A D C B Focus on 4 consecutive points: A, B, C, D
10
Circle Spline Construction (1) Original data points and control polygon LEFT CIRCLE thru A, B, C A D C B Focus on 4 consecutive points: A, B, C, D
11
Circle Spline Construction (1) Original data points and control polygon LEFT CIRCLE thru A, B, C RIGHT CIRCLE thru B, C, D A D C B Focus on 4 consecutive points: A, B, C, D
12
Circle Spline Construction (1) Original data points and control polygon LEFT CIRCLE thru A, B, C RIGHT CIRCLE thru B, C, D BLEND CURVE between B and C A D C B Focus on 4 consecutive points: A, B, C, D
13
Qualitative Results (1) A D C B Original data points PURE CIRCLE BLEND Z O
14
Qualitative Results (2) Original data points STRAIGHT LINE BLEND C
15
Key Points about Circle Splines Going from Polynomial Splines to Blended Circles: u Give up affine invariance u Give up linear precision Avoid cusps and hair-pin turns Get nicely rounded, loopy curves Approximate the behavior of the MVC
16
How to do the Blending ? A B D C Left Circle thru: A, B, C; Right Circle thru: B, C, D.
17
Blending With Intermediate Circles A B D C Left Circle thru: A, B, C; Right Circle thru: B, C, D. Draw Tangent Vectors for both circles at B and C.
18
Blending With Intermediate Circles A B D C 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.
19
Blending With Intermediate Circles A B D C Left Circle thru: A, B, C; Right Circle thru: B, C, D. Draw n equal-angle-spaced Circles from B to C. Draw Tangent Vectors for both circles at B and C. Draw a bundle of regularly spaced Tangent Vectors.
20
Blending With Intermediate Circles A B D C Left Circle thru: A, B, C; Right Circle thru: B, C, D. S Draw n equal-angle-spaced Circles from B to C. Draw Tangent Vectors for both circles at B and C. Make n equal segments on each arc and choose i th point on i th circle. Draw a bundle of regularly spaced Tangent Vectors.
21
Circle Blending: Previous Art A B D C 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. S
22
Previous Work with Circles u H.- J. Wenz (CAGD 1996) “Interpolation of curve data by blended generalized circles.” Linear interpolation: L(i) *(1-i) + R(i) *(i) G-1 Continuity at B, C. u M. Szilvasi-Nagi & T.P. Vendel (CAGD 2000) “Generating curves and swept surfaces by blended circles.” Trigonometrical blend: L(i) *cos 2 (i) + R(i) *sin 2 (i) G-2 Continuity at B, C. But Cusps are still possible !! 0 i n
23
A Bad Case … u Cusp ! Trigonometrically blended circular arcs:
24
Trigonometric Angle Blending A B D C 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. STEP i ANGLE
25
Trigonometric Angle Blending A B D C Left Circle thru: A, B, C; Right Circle thru: B, C, D. Draw n trigonometrically-spaced Circles from B to C. Draw Tangent Vectors for both circles at B and C. Draw a bundle of trigonometrically spaced Tangents.
26
Trigonometric Angle Blending A B D C Left Circle thru: A, B, C; Right Circle thru: B, C, D. Draw n trigonometrically-spaced Circles from B to C. Draw Tangent Vectors for both circles at B and C. Draw a bundle of trigonometrically spaced Tangents. S Blend curve “hugs” initial circles longer: --> G2
27
SASA New Midpoint S D C SLSL SRSR A B Averaged circle, based on angles ! Linearly averaged point positions SPSP Comparison
28
Angle Iteration in the Plane C SLSL BDA S2S2 SRSR S3S3 Linearly vary the angles defining the intermediate arcs. Linearly vary the arc-length position along arc i. S1S1
29
Angle Iteration in the Plane C SLSL BDA S2S2 SRSR S3S3 S1S1 Linearly vary the angles defining the intermediate arcs. Linearly vary the arc-length position along arc i. Segment picks up the tangents from the circles at both ends. G-1 Continuity.
30
Problem of Position Averaging C SLSL BDA S2S2 SRSR S3S3 S1S1 It would be difficult to reach tangent direction at C from mid point S P Segment picks up the tangents from the circles at both ends. G-1 Continuity. SPSP
31
Use of Angle-based Approach u Subdivision Technique (Siggraph’01 Sketch) l Find new midpoints for all segments; l Double the number of control points; l Recurse. u Iterative (Sweep) Technique l Calculate n intermediate circles (based on angle division); l Calculate i-th point along arc i.
32
Subdivision Schemes (SIGGRAPH’01) Angle- Averaged C-Spline Cubic Polynomial Interpolation Position- Averaged Circles ( Wenz ) Too “loopy” 1 step 5 steps
33
Various Interpolation Schemes Trigonometrically Angle-Blended C-Spline NO CUSPS ! Cubic Polynomial Interpolation Too “loopy” Trigonometrically Position-Blended Circular Arcs ( Szilvasi-Nagi ) Too sharp“Just right”
34
Smooth Curves on the Sphere u Avoid Euler Angles ! (use quat. / pure geom.) u Iterative Spline Constructions l Spherical “B-splines” can readily be implemented with a Blossoming / De Casteljau technique by using great arcs rather than straight chords. – However, this produces approximating curves! u Quaternion Splines l Refs: Shoemake 1985, Kim et al. 1995 + Good results on continuity. – Non-commutativity No front-to-back symmetry.
35
Concept: Swivel Planes thru B,C 3 consecutive points define a plane and a circle on it. A, B, C Left Circle. B, C, D Right Circle. Intermediate planes / arcs at angle-steps.
36
Finding a New Mid-point S In the plane we find S by halving angle (S L C S R ) and intersecting with line m Find S L and S R, on sphere, then find S by halving the angle between them: S is closer to S R. TOP VIEW SPHERE: SIDE VIEW PLANE:
37
Circle-Splines on the Sphere Examples from a prototype editor program
38
CAD -- from Concept to Prototype ! u Make nice curvy paths on the surface of a sphere: Circle-splines (C-splines). u Sweep various cross sections along these spherical paths: SLIDE (Jordan Smith, Berkeley). u Fabricate the resulting surfaces: Send B-rep to FDM machine.
39
“Via Globi” -- Virtual Design Wilmin Martono
40
“Viae Globi” FDM Maquettes (8” tall) “Maloja” “Altamont” “Lombard”
41
Circle Splines in 3D A B D C 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. etc … Also works in 3D ! Two different planes MIRROR
42
Draw a bundle of regularly spaced Tangent Vectors. Draw n equal-angle-spaced Circles from B to C. Allows to handle tangent constraints at B,C! Further Generalization A B D C Left Tangent at: B; Right Tangent at: C; With any suitable method (e.g., weighted avrg.) Two different planes MIRROR
43
Implementation Hints u Avoid calculations that explicitly involve the centers of the circular arcs, since these will go off to infinity, when the arcs become straight. u Calculate points along arc as an offset from end point B or C. C B PiPi Linear steps, t i
44
Curve Construction Using Circles u Not affine invariant -- curves do not transform exactly as their control points (except for uniform scaling). u Avoids cusps, hairpin turns u Predisposed to produce (exact) circles u Well-behaved curves with local support l G1-continuous with linear blending l G2-continuous with trigonometric blending u Angle averaging is crucial when blending circles of widely differing radii.
45
Angle-Averaging and MVC u The nicest interpolating curves are produced by the globally optimal MVC (Minimum Variation Curve). u MVC tries to maintain constant curvature, because its penalty function is: u In a piecewise linear curve with equal-length line segments, all turning angles should be the same. u In the plane, the angle-averaged segment midpoint also averages the turning angle of the piece-wise linear control curve. u Conjecture: In the subdivision limit, angle-averaging approximates behavior of MVC (as far as is possible with only local support).
46
Subdivision vs. Iteration u SIGGRAPH’01: Subdivision Scheme Calculate segment midpoints only, recurse l No simple linear interpolating mask / matrix l Difficult to analyze continuity of result u TODAY: Iterated Scheme l Resulting Continuity is understood l Tangent direction, curvature at joints (B,C) does not change, is forced onto blend curve l One single scheme for 2D, Sphere, 3D,...
47
Conclusions Angle-Averaged Circles (C-Splines) are useful for making smooth shapes on a sphere, in the plane, and in 3D.
48
========= SPARE ========= =========================
49
Summary / Discussion Geometric Construction Using Circles: l Not affine invariant - curves do not transform exactly as their control points (except for uniform scaling). Advantages: l G2-continuous curves with local support l Avoids cusps, reduces overshoots l Predisposed to produce (exact) circles l Approximates MVC behavior Disadvantages: l Cannot use a simple linear interpolating mask / matrix l Difficult to analyze continuity of subdivision scheme (not a problem for the iterated approach!)
50
Justification for Angle-Averaging u Angle averaging looks so good, because it locally approximates a MVC (Minimum Variation Curve): u MVC tries to maintain constant curvature, because its penalty function is: u In a piecewise linear curve with equal-length line segments, all turning angles should be the same. u In the limit, angle-averaging approximates the behavior of the MVC.
51
Circle-Splines Summary u Useful as a design primitive. u Interpolate constraint points. u Produce nice, rounded shapes. u Approximate the Minimum Variation Curve (MVC) l yields fair, “natural”, “organic” shapes; l minimizes squared magnitude of derivative of curvature:
52
Trigonometric Angle Interpolation Linear sweep of angle, (& linear sweep of position): G-1 Continuity. Trigonometric angle sweep, (& linear sweep of position): G-2 Continuity. (1-t)*LEFT CIRCLE + t*RIGHT CIRCLE cos 2 (t)*LEFT CIRCLE + sin 2 (t)*RIGHT CIRCLE
53
Various Interpolation Schemes Angle Blended C-Spline Cubic Polynomial Interpolation Position Blended C-Spline Too “loopy” Trigonom. Blended Circ.-Arcs Too sharp“Just right”
54
Blending With Intermediate Circles A B D C Left Circle thru: A, B, C. Right Circle thru: B, C, D. n equal-angle-spaced circles in between. Choose i th point on i th circle. S
55
Turning-Angle Averaging Find the point S on the bisector m that interpolates the turning angles at S L and S R S lies on angle- divider (S L C S R ). C SLSL SRSR BDA S m
56
Review: What is Subdivision? u Recursive scheme to create spline curves l using splitting and averaging u Example: Chaikin’s Algorithm l corner cutting algorithm ==> quadratic B-Spline subdivision
57
An Interpolating Subdivision Curve u 4-point cubic interpolation in the plane: S = 9B/16 + 9C/16 – A/16 – D/16 S = M + (B – A)/16 + (C – D)/16 A B D CM S
58
Circle-Splines on the Sphere Use similar construction as in planar case: CTRL. POLYG. 2 CIRCLESC-SPLINE m S S B C B C
59
Difficulty with Angle-Averaging u On the sphere, in an extremely “loopy” arch, the angle in the control polygon goes to 180° (rather than 0°); u This invalidates the planar angle-averaging scheme. 180° B S C
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.