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 Bspline 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 Bspline 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
Tensorproduct patches,
e.g., cubic tensorproduct 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 ...)

C^{n} continuity can readily be inferred form behavior of the polynomial
or trigonometric functions.

G^{n }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 Bspline 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 ngon;
this ngon is used to define a reference plane (= tangent plane).

Second eigenvalue for w=0 is 0.25; describes
hill/bowllike 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): w_{ij} = (3+2cos(2p(ij)/n))/4n

Loop thesis, triangular spline N^{222}, (chapter 4):

New extraordinary vertex V^{k+1} = a_{n}V^{k}
+ (1a_{n})Q^{k}, where Q^{k}
is the centroid of the surrounding vertices P^{k}_{i}

Pick a_{n} for best performance; convergence
occurs for 5/8 < a_{n} <
11/8.

Convergence proof in two steps: Show: V^{k}
> Q^{k}, and also for each i: P^{k}_{i}
> Q^{k}

The explicit point of convergence is: Q^{k} = b_{n}V^{0}
+ (1b_{n})Q^{0}, where b_{n}
= 3 / (11  8a_{n}
).

Tangent Plane Continuity  gives narrower bounds on a_{n
}:
0.25
cos 2p/N <
a_{n}
< 0.75 + 0.25 cos 2p/N.

Again, use discrete Fourier transform to capture the behavior of all edges
converging in V^{0}.

Tangent plane is defined by ring of neighbors only !

Curvature Continuity 

Rather than explicitly develop the periodic normalcurvature 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 a_{n} can
assure a welldefined curvature function around an extraordinary point
! :(

I.e., welldefined Gaussian curvature does not exist at extraordinary points
!

A reasonable choice that gives goodlooking surfaces: a_{n}
= (3/8 + 0.25 cos(2p/N))^{2} + 3/8
Discussion of Your Genus4 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 Genus4 Surface.
The goal is to design a highlysymmetrical control mesh for a closed genus4
subdivision surface
based on triangles
(which could be later used for experiments in surfaceenergy 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