CS 284: CAGD
Lecture #11 -- Mon 10/5, 2009.
PREVIOUS
< - - - - > CS
284 HOME < - - - - > CURRENT
< - - - - > NEXT
Preparation:
Paper by Doo and Sabin on subdivision surfaces
Chapters 2 and 3 from:
C.
Loop, "Smooth Subdivision Surfaces Based on Triangles"
This is also a nice review of B-spline subdivision!
Some
errata found in this thesis.
Topic: Subdivision (cont.)
Key points about useful subdivision schemes:
- There are two components to any subdivision scheme, a topological one and a geometrical one:
- topology: In a fixed way split the parametric domain of an edge or a face;
- geometry: Move some of the old and newly created vertices to new locations (that promise to yield a smoother shape).
- The number of points (line segments) must grow at a geometrical
rate with each generation.
- The newly introduced points should have a smoothing effect and
converge towards a limit function.
- This can typically be achieved with affine mapping schemes described
with a subdivision matrix.
- The infinite application of this matrix then leads directly to
a point on the curve or surface.
Doo, Sabin Paper: Focus on a quadratic subdivision surface
-
Extension of Chaikin's Corner Cutting algorithm (1974) to surfaces.
-
For rectangular quad meshes this results in quadratic B-spline surface.
- Gain an understanding of the role of the subdivision matrix and its eigenvalues.
-
Careful analysis and treatment of irregular points and convergence behavior around it.
- Discrete Fourier transform of the oscillations of the rings of neighboring vertices.
Comparing Subdivision Schemes for Surfaces
Tensor-product patches,
e.g., cubic tensor-product Bezier patches;
readily do in the "u" and in "v" directions what we have learned about
curves.
We can also use with triangular patches, but need a different
interpolation scheme:
Barycentric coordinates: three numbers, but with constraint that they
must sum to 1.0.
DeCasteljau evaluation technique can also be applied to triangular
patches!
-
Tensor
Product Splines
-
E. Catmull and J. Clark (1978)
- D. Doo and M. Sabin (1978)
-
Triangle
Splines
-
C. Loop (1987);
Construction : Chapter 3;
Analysis: Chapter 4:
- D. Zorin, P. Schroeder, W. Sweldens (1996): Interpolating !
Evaluation / Analysis of Subdivision Schemes
How do we know whether a particular interpolation
or subdivision scheme is any good ?
Testing / Evaluation by Visual Inspection
-
Subject your scheme to many tough test cases: -- ideally move control points interactively and continuously,
because "transition cases" (e.g., extra inflection points) often show the
weaknesses of a scheme.
Formal Analysis of Blending / Subdivision Methods
-
If curve is formed with analytical functions (e.g., for Bezier,
Lagrange, Circle Splines ...)
-
Cn continuity can readily be inferred form behavior of the polynomial
or trigonometric functions.
-
Gn continuity needs a separate analysis; perhpas a bound on
curvature can be established;
or it may be sufficient to show that the velocity cannot get to zero (Circle
Spline paper, section 3.4)
-
Subdivision curves/surfaces are harder to analyze:
-
How do you prove that final curve points do not have small fractal oscillations
?
-
or that the tangents converge to a well defined value at every point ?
-
Doo & Sabin, extraorinary points in quadratic B-spline surfaces:
-
Do not analyze the behavior of individual points, but of the whole ring
of vertices around an extraordinary point.
-
Do a discrete Fourier analysis of this ring of vertices; needs frequencies
from w=0 to n/2 (n=valence) to capture all DoF.
-
Repeated application of the subdivision matrix converges to a vector corresponding
to largest eigenvector of the matrix.
-
For the regular (valence 4) vertex we observe this behavior:
-
Largest eigenvalue for w=0 is 1.0;
this guarantees translation invariance of the process (i.e., does not
"run away").
-
Largest eigenvalue for w=1 is 0.5;
this implies that the region around this vertex shrinks towards an
affinely distorted regular n-gon;
this n-gon is used to define a reference plane (= tangent plane).
-
Second eigenvalue for w=0 is 0.25; describes
hill/bowl-like behavior at this point.
-
Largest eigenvalue for w=2 is 0.25; describes
the amount of warping (into a saddle) at this point.
-
Doo&Sabin
found subdivision coefficients for the extraordinary cases that also
give these eigenvalues,
and thus also guarantee tangent plane continuity at these points (page
360): wij = (3+2cos(2p(i-j)/n))/4n
-
Loop thesis, triangular spline N222, (chapter 4):
-
New extraordinary vertex Vk+1 = anVk
+ (1-an)Qk, where Qk
is the centroid of the surrounding vertices Pki
-
Pick an for best performance; convergence
occurs for -5/8 < an <
11/8.
-
Convergence proof in two steps: Show: Vk
--> Qk, and also for each i: Pki
--> Qk
-
The explicit point of convergence is: Qk = bnV0
+ (1-bn)Q0, where bn
= 3 / (11 - 8an
).
-
Tangent Plane Continuity -- gives narrower bounds on an
:
-0.25
cos 2p/N <
an
< 0.75 + 0.25 cos 2p/N.
-
Again, use discrete Fourier transform to capture the behavior of all edges
converging in V0.
-
Tangent plane is defined by ring of neighbors only !
-
Curvature Continuity --
-
Rather than explicitly develop the periodic normal-curvature function around
an extraordinary vertex,
study the rate of change of the tangent function with respect to the
subdivision process !
-
Analysis shows: No choice of an can
assure a well-defined curvature function around an extraordinary point
! :-(
-
I.e., well-defined Gaussian curvature does not exist at extraordinary points
!
-
A reasonable choice that gives good-looking surfaces: an
= (3/8 + 0.25 cos(2p/N))2 + 3/8
Discussion of Your Genus-4 Designs...
Reading Assignments:
Zorin
et al: "Interpolating Subdivision Meshes with Arbitrary Topology"
Optional, if you are interested in the details of analyzing a particulart subdivision scheme:
Chapters 4 and 5 from:
C.
Loop, "Smooth Subdivision Surfaces Based on Triangles"
Current Homework Assignment:
Design the Control Mesh for a Smooth Genus-4 Surface.
The goal is to design a highly-symmetrical control mesh for a closed genus-4
subdivision surface
based on triangles
(which could be later used for experiments in surface-energy minimization
studies).
Following an iterative
design process, we will do this in stages:
- MON 10/5: Hand in a sketch of the rough geometry of the object that you
plan to construct,
and a paragraph that outlines your plan for constructing the actual
control mesh.
-
MON 10/12: Complete assignment due. Hand in a printout of a smooth Loop
surface;
and submit your SLIDE file electronically.
Paper Presentation Assignments (for the future)
PREVIOUS
< - - - - > CS
284 HOME < - - - - > CURRENT
< - - - - > NEXT
Page Editor: Carlo H. Séquin