Title: Subdivision Schemes
1Subdivision Schemes
- Lee Byung-Gook
- Dongseo Univ.
- http//kowon.dongseo.ac.kr/lbg/
2(No Transcript)
3What is Subdivision?
- Subdivision is a process in which a
poly-line/mesh is recursively refined in order to
achieve a smooth curve/surface. - Two main groups of schemes
- Approximating - original vertices are moved
- Interpolating original vertices are unaffected
Is the scheme used here interpolating or
approximating?
4Geris Game
Frame from Geris Game by Pixar
5Subdivision Curves
- How do You Make a Smooth Curve?
6Chaikins Algorithm
7Corner Cutting
8Corner Cutting
3 1
1 3
9Corner Cutting
10Corner Cutting
11Corner Cutting
12Corner Cutting Limit Curve
13Corner Cutting
The limit curve Quadratic B-Spline Curve
A control point
The control polygon
14Linear B-spline Subdivision Scheme
15Quadratic B-spline Subdivision Scheme
16Cubic B-spline Subdivision
17N. Dyn 4-points Subdivision Scheme
184-Point Scheme
194-Point Scheme
204-Point Scheme
1 1
1 1
214-Point Scheme
1 8
224-Point Scheme
234-Point Scheme
244-Point Scheme
254-Point Scheme
264-Point Scheme
274-Point Scheme
A control point
The limit curve
The control polygon
28Comparison
- Non interpolatory subdivision schemes
- Corner Cutting
- Interpolatory subdivision schemes
- The 4-point scheme
29Theoretical Questions
- Given a Subdivision scheme, does it converge for
all polygons? - If so, does it converge to a smooth curve?
-
-
- Better?
- Does the limit surface have any singular points?
- How do we compute the derivative of the limit
surface?
30Subdivision Surfaces
31Subdivision Surfaces
- Geris hand as a piecewise smooth Catmull-Clark
surface
32Subdivision Surfaces
- A surface subdivision scheme starts with a
control net (i.e. vertices, edges and faces) - In each iteration, the scheme constructs a
refined net, increasing the number of vertices by
some factor. - The limit of the control vertices should be a
limit surface. - a scheme always consists of 2 main parts
- A method to generate the topology of the new net.
- Rules to determine the geometry of the vertices
in the new net.
33General Notations
- There are 3 types of new control points
- Vertex points - vertices that are created in
place of an old vertex. - Edge points - vertices that are created on an old
edge. - Face points vertices that are created inside an
old face. - Every scheme has rules on how (if) to create any
of the above. - If a scheme does not change old vertices (for
example - interpolating), then it is viewed
simply as if
34Doo-Sabin Subdivision
35Doo-Sabin Subdivision
36Doo-Sabin Subdivision
37Doo-Sabin Subdivision
38Doo-Sabin subdivision
39Catmull-Clark Subdivision
40Catmull-Clark Subdivision
41Catmull-Clark Subdivision
42Catmull-Clark Subdivision
43Catmull-Clark Subdivision
- The mesh is the control net of a tensor product
B-Spline surface. - The refined mesh is also a control net, and the
scheme was devised so that both nets create the
same B-Spline surface. - Uses face points, edge points and vertex points.
- The construction is incremental
- First the face points are calculated,
- Then using the face points, the edge points are
computed. - Finally using both face and edge points, we
calculate the vertex points.
44(No Transcript)
45Catmull-Clark - results
46Catmull-Clark - results
47Catmull-Clark - results
48Catmull-Clark - results
49Catmull-Clark - results
Catmull-Clark Scheme results in a surface which
is almost everywhere
50Loop Subdivision
- Based on a triangular mesh
- Loops scheme does not create face points
Vertex points
New face
Old face
Edge points
51Loop Subdivision
- How Position New Vertices?
- Choose locations for new vertices as weighted
average of original vertices in local neighborhood
52Loop Subdivision
- Every new vertex is a weighted average of old
ones. - The list of weights is called a Stencil
- Is this scheme approximating or interpolating?
The rule for vertex points
1
1
The rule for edge points
1
1
1
53Loop Subdivision
- How Refine Mesh?
- Refine each triangle into 4 triangles by
splitting each edge and connecting new vertices
54Box Spline
55Loop - Results
56Loop - Results
57Loop - Results
58Loop - Results
59Loop - Results
Loops scheme results in a limit surface which is
of continuity everywhere except for a
finite number of singular points, in which it is
.
60Butterfly Scheme
- Butterfly is an interpolatory scheme.
- Topology is the same as in Loops scheme.
- Vertex points use the location of the old vertex.
- Edge points use the following stencil
61Butterfly - results
62Butterfly - results
63Butterfly - results
64Butterfly - results
65Butterfly - results
The Butterfly Scheme results in a surface which
is but is not differentiable twice anywhere.
66Comparison
Butterfly
Loop
Catmull-Clark
67Kobblet sqrt(3) Subdivision
68Kobblet sqrt(3) Subdivision
69Kobblet sqrt(3) Subdivision
70(No Transcript)
71Subdivision Schemes
Loop
Butterfly
Catmull-Clark
Doo-Sabin
72Subdivision Schemes
Loop
Butterfly
Catmull-Clark
Doo-Sabin
73Advantages Difficulties
- Advantages
- Simple method for describing complex surfaces
- Relatively easy to implement
- Arbitrary topology
- Smoothness guarantees
- Multiresolution
- Difficulties
- Intuitive specification
- Parameterization
- Intersections
74Subdivision Schemes
- There are different subdivision schemes
- Different methods for refining topology
- Different rules for positioning vertices
- Interpolating versus approximating
Face Split
Vertex Split
Quad. Meshes
Triangular Meshes
Doo-Sabin, Midege (C1)
Catmull-Clark (C2)
Loop (C2)
Approximating
Biquartic (C2)
Kobbelt (C1)
Butterfly (C1)
Interpolating