subdivision surface (2)
TRANSCRIPT
![Page 1: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/1.jpg)
Subdivision Surface (2)
Hongxin Zhang and Jieqing Feng
2006-12-28
State Key Lab of CAD&CGZhejiang University
![Page 2: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/2.jpg)
12/28/2006 State Key Lab of CAD&CG 2
Contents
• Subdivision Methods for Quadratic B-Spline Surfaces
• Doo-Sabin Surfaces • Subdivision Methods for Cubic B-Spline
Surfaces • Catmull-Clark Surfaces • Loop Surfaces
![Page 3: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/3.jpg)
12/28/2006 State Key Lab of CAD&CG 3
Subdivision Methods for Quadratic B-Spline Surfaces
• Overview• The Matrix Equation for a Uniform
Biquadratic B-Spline Surface• Subdividing the Surface• Generating the Refinement Procedure • Summary
![Page 4: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/4.jpg)
12/28/2006 State Key Lab of CAD&CG 4
Overview
• Subdivision surfaces are based upon the binary subdivision of the uniform B-spline surface.
a initial polygonal mesh + a subdivision (or refinement) operation = a new polygonal mesh that has a greaternumber of polygonal elementsit is hopefully “closer” to some resulting surface. By repetitively applying the subdivision procedure to the initial mesh, we generate a sequence of meshes that (hopefully) converges to a resulting surface.
![Page 5: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/5.jpg)
12/28/2006 State Key Lab of CAD&CG 5
The Matrix Equation for a Uniform Biquadratic B-Spline Surface
Consider the biquadratic uniform B-spline surface P(u,v) defined by the 3×3 array of control points
![Page 6: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/6.jpg)
12/28/2006 State Key Lab of CAD&CG 6
The Matrix Equation for a Uniform Biquadratic B-Spline Surface
Biquadratic B-spline surface can be written as the following equation in matrix form
where M is the 3×3 matrix
![Page 7: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/7.jpg)
12/28/2006 State Key Lab of CAD&CG 7
Subdividing the Surface
• This patch can be subdivided into four subpatches, 16 sub-control points.
the subpatch corresponding to 0≤u,v≤1/2, the four “interior” control points
![Page 8: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/8.jpg)
12/28/2006 State Key Lab of CAD&CG 8
Subdividing the Surface
To subdivide the surface, we reparameterizing of the surface by u′=u/2 and v′= v/2 and define new the surface P′(u,v)
![Page 9: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/9.jpg)
12/28/2006 State Key Lab of CAD&CG 9
Subdividing the Surface
![Page 10: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/10.jpg)
12/28/2006 State Key Lab of CAD&CG 10
Subdividing the Surface
where P′=SPST, and
The surface P′(u,v) is written as
The P′(u,v) is a uniform biquadratic B-spline patch
MP′MT
![Page 11: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/11.jpg)
12/28/2006 State Key Lab of CAD&CG 11
Subdividing the Surface
The matrix S is called the “splitting matrix”, and is given by
![Page 12: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/12.jpg)
12/28/2006 State Key Lab of CAD&CG 12
Subdividing the Surface
The new control point mesh P′=SPST corresponding to the subdivided patch
![Page 13: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/13.jpg)
12/28/2006 State Key Lab of CAD&CG 13
Subdividing the Surface
The P′i,j can be written as
![Page 14: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/14.jpg)
12/28/2006 State Key Lab of CAD&CG 14
Subdividing the Surface
• These equations can be looked at in two waysSubdivision masks: weighing the four points in the ratio of 9-3-3-1
Extension of Chaikin’s curve to surface: each of these equations is built from weighing the points on an edge in the ratio of 3-1. and then weighing the resulting points in the ratio 3-1
![Page 15: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/15.jpg)
12/28/2006 State Key Lab of CAD&CG 15
Generating the Refinement Procedure
• All 16 of the possible points generated through the binary subdivision of the quadratic patch can be defined by the same subdivision masks
![Page 16: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/16.jpg)
12/28/2006 State Key Lab of CAD&CG 16
Generating the Refinement Procedure
![Page 17: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/17.jpg)
12/28/2006 State Key Lab of CAD&CG 17
Summary
• The extension of Chaikin's Curve to surfaces
• Non-rectangular topological structureDoo-Sabin surfaces by Donald Doo and Malcolm Sabin
![Page 18: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/18.jpg)
12/28/2006 State Key Lab of CAD&CG 18
Original CubeOriginal Cube The 1st subdivisionThe 1st subdivision The 2nd subdivisionThe 2nd subdivision
The 3rd subdivisionThe 3rd subdivision The 5th subdivisionThe 5th subdivision
Doo-Sabin Surfaces
![Page 19: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/19.jpg)
12/28/2006 State Key Lab of CAD&CG 19
Doo-Sabin Surfaces
• The Procedure for the Biquadratic Uniform B-Spline Patch
• The Procedure for Meshes of Arbitrary Topology
• Illustrations• Summary
Malcolm Sabin
![Page 20: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/20.jpg)
12/28/2006 State Key Lab of CAD&CG 20
The Procedure for the Biquadratic Uniform B-Spline Patch
• The subdivision masks for the biquadratic uniform B-spline patches
• Each new points are simply the average of four particular points taken in a polygon
the corresponding original pointthe two edge points (the midpoints of the edges that are adjacent to this vertex in the polygon) the face point (average of the vertices of the polygon)
![Page 21: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/21.jpg)
12/28/2006 State Key Lab of CAD&CG 21
The Procedure for the Biquadratic Uniform B-Spline Patch
Each new face generated has four vertices
![Page 22: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/22.jpg)
12/28/2006 State Key Lab of CAD&CG 22
The Procedure for Meshes of Arbitrary Topology
• For each vertex Pi of each face of the object, generate a new point P′i as average of the vertex, the two edge points and the face point of the face
![Page 23: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/23.jpg)
12/28/2006 State Key Lab of CAD&CG 23
The Procedure for Meshes of Arbitrary Topology
• For each face, connect the new points that have been generated for each vertex of the face.
![Page 24: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/24.jpg)
12/28/2006 State Key Lab of CAD&CG 24
The Procedure for Meshes of Arbitrary Topology
• For each vertex, connect the new points that have been generated for the faces that are adjacent to this vertex.
![Page 25: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/25.jpg)
12/28/2006 State Key Lab of CAD&CG 25
The Procedure for Meshes of Arbitrary Topology
• For each edge, connect the new points that have been generated for the faces that are adjacent to this edge.
![Page 26: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/26.jpg)
12/28/2006 State Key Lab of CAD&CG 26
The Procedure for Meshes of Arbitrary Topology
• The polygons generated through this refinement step become the set of polygons for the next step.
Note: the “cutting off the corners” of the polygonal mesh
![Page 27: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/27.jpg)
12/28/2006 State Key Lab of CAD&CG 27
Illustrations
![Page 28: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/28.jpg)
12/28/2006 State Key Lab of CAD&CG 28
Illustrations
• extraordinary pointsNot 4 edges emitted from the point
• after the first subdivision, all vertices have valencefour
![Page 29: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/29.jpg)
12/28/2006 State Key Lab of CAD&CG 29
Original CubeOriginal Cube The 1st subdivisionThe 1st subdivision The 2nd subdivisionThe 2nd subdivision
The 3rd subdivisionThe 3rd subdivision The 5th subdivisionThe 5th subdivision
Illustrations
![Page 30: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/30.jpg)
12/28/2006 State Key Lab of CAD&CG 30
Illustrations
Doo-Sabin Subdivision Subdivision SurfaceSurface
![Page 31: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/31.jpg)
12/28/2006 State Key Lab of CAD&CG 31
Summary
• The algorithm defines new points on each face in the refinement process, these new points only depend on
the face pointthe vertex on a face two edge midpoints for edges adjacent to the vertex
• The Doo-Sabin surface is locally a bi-quadratic B-spline surface, except at a finite number of extraordinary control points.
![Page 32: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/32.jpg)
12/28/2006 State Key Lab of CAD&CG 32
Subdivision Methods for Cubic B-Spline Surfaces
• Overview• A Matrix Equation for the Bicubic Uniform
Spline Surfaces • Subdividing the Bicubic Patch • Extending this Subdivision Procedure to
the Entire Patch • Summary
![Page 33: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/33.jpg)
12/28/2006 State Key Lab of CAD&CG 33
Overview
• Ed Catmull and Jim Clark: extend Doo and Sabin's algorithm to bicubic surfaces.
The methods of Doo-Sabin algorithm: binary subdivision of the uniform bi-quadratic B-spline patches.Study of the cubic case would lead to a better subdivision surface generation scheme.
![Page 34: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/34.jpg)
12/28/2006 State Key Lab of CAD&CG 34
A Matrix Equation for the Bicubic Uniform Spline Surfaces
Consider the biqcubic uniform B-spline surface P(u,v) defined by the 4×4 array of control points
![Page 35: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/35.jpg)
12/28/2006 State Key Lab of CAD&CG 35
A Matrix Equation for the Bicubic Uniform Spline Surfaces
![Page 36: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/36.jpg)
12/28/2006 State Key Lab of CAD&CG 36
A Matrix Equation for the Bicubic Uniform Spline Surfaces
where
where M is the 4×4 matrix
![Page 37: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/37.jpg)
12/28/2006 State Key Lab of CAD&CG 37
Subdividing the Bicubic Patch
• The bicubic uniform B-spline patch can be subdivided into
four subpatches (1 4)25 unique sub-control points (16 25)
• Focus on the subpatch corresponding to 0≤u,v≤1/2
the others will follow by symmetry
![Page 38: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/38.jpg)
12/28/2006 State Key Lab of CAD&CG 38
Subdividing the Bicubic Patch
![Page 39: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/39.jpg)
12/28/2006 State Key Lab of CAD&CG 39
Subdividing the Bicubic Patch
To subdivide the surface, we reparameterizing of the surface by u′=u/2 and v′= v/2 and define new the surface P′(u,v)
![Page 40: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/40.jpg)
12/28/2006 State Key Lab of CAD&CG 40
Subdividing the Bicubic Patch P′(u,v)
![Page 41: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/41.jpg)
12/28/2006 State Key Lab of CAD&CG 41
Subdividing the Bicubic Patch
where P′=SPST, and
The surface P′(u,v) is written as
![Page 42: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/42.jpg)
12/28/2006 State Key Lab of CAD&CG 42
Subdividing the Bicubic Patch
The P′(u,v) is a uniform bicubic B-spline patch
The matrix S is called the “splitting matrix”, and is given by
S
![Page 43: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/43.jpg)
12/28/2006 State Key Lab of CAD&CG 43
Subdividing the Bicubic Patch
The control point array P′
Calculating above matrix multiplication, we can obtain
![Page 44: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/44.jpg)
12/28/2006 State Key Lab of CAD&CG 44
Subdividing the Bicubic Patch
![Page 45: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/45.jpg)
12/28/2006 State Key Lab of CAD&CG 45
Subdividing the Bicubic Patch
![Page 46: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/46.jpg)
12/28/2006 State Key Lab of CAD&CG 46
Subdividing the Bicubic Patch
• Each of these refined points can be classified into three categories
face pointsedge pointsvertex points
![Page 47: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/47.jpg)
12/28/2006 State Key Lab of CAD&CG 47
Subdividing the Bicubic Patch
• Face point: the average of the four points that bound the respective face (P00
′ ,P02′, P20
′ and P22′)
![Page 48: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/48.jpg)
12/28/2006 State Key Lab of CAD&CG 48
Subdividing the Bicubic Patch
• In general , the face point Fi,j
Fi,j =(Pi,j+Pi+1,j+Pi,j+1+Pi+1,j+1)/4
• we can rewrite the above equations with these face points substituted on the right-hand side, and obtain
![Page 49: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/49.jpg)
12/28/2006 State Key Lab of CAD&CG 49
Subdividing the Bicubic Patch
![Page 50: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/50.jpg)
12/28/2006 State Key Lab of CAD&CG 50
Subdividing the Bicubic Patch
Simplifying these equations, we obtain
![Page 51: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/51.jpg)
12/28/2006 State Key Lab of CAD&CG 51
Subdividing the Bicubic Patch
![Page 52: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/52.jpg)
12/28/2006 State Key Lab of CAD&CG 52
Subdividing the Bicubic Patch
![Page 53: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/53.jpg)
12/28/2006 State Key Lab of CAD&CG 53
Subdividing the Bicubic Patch
• Edge points: average ofthe two points that define the original edgethe two new face points of the faces sharing the edge
P′01, P′03, P′10, P′12, P′21, P′23, P′30, P′32
![Page 54: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/54.jpg)
12/28/2006 State Key Lab of CAD&CG 54
Subdividing the Bicubic Patch
![Page 55: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/55.jpg)
12/28/2006 State Key Lab of CAD&CG 55
Subdividing the Bicubic Patch
• The edge points Ei,j can be calculated
depending on which side of the edge point the two faces lie.
![Page 56: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/56.jpg)
12/28/2006 State Key Lab of CAD&CG 56
Subdividing the Bicubic Patch
Replacing edge points on the right-hand side of the above equations
![Page 57: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/57.jpg)
12/28/2006 State Key Lab of CAD&CG 57
Subdividing the Bicubic Patch
![Page 58: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/58.jpg)
12/28/2006 State Key Lab of CAD&CG 58
Subdividing the Bicubic Patch
• Vertex points: P′11, P′13, P′13, P′33,
Q: average of the face points of the faces adjacent to the vertex pointR: average of the midpoints of the edges adjacent to the vertex pointS: corresponding vertex from the original mesh
![Page 59: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/59.jpg)
12/28/2006 State Key Lab of CAD&CG 59
Subdividing the Bicubic Patch
![Page 60: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/60.jpg)
12/28/2006 State Key Lab of CAD&CG 60
Subdividing the Bicubic Patch
For example: P′13
![Page 61: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/61.jpg)
12/28/2006 State Key Lab of CAD&CG 61
Subdividing the Bicubic Patch
• Summary: All sixteen new points of the subdivision have been characterized in terms of
face points, edge points vertex points
• A geometric method has been developed to calculate these points.
![Page 62: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/62.jpg)
12/28/2006 State Key Lab of CAD&CG 62
Extending this Subdivision Procedure to the Entire Patch
• One subdiviosn step:16 points 25 points
• We call the mesh generated by the 25points as a refinement of the original mesh
• Three types of new pointsface points, edge points, vertex points
![Page 63: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/63.jpg)
12/28/2006 State Key Lab of CAD&CG 63
Extending this Subdivision Procedure to the Entire Patch
• For each face in the original mesh, generate the new face points - which are the average of all the original points defining the face.
• For each internal edge of the original mesh (i.e. an edge not on the boundary), generate the new edge points - which are calculated as the average of four points: the two points which define the edge, and the two new face points for the faces that are adjacent to the edge.
![Page 64: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/64.jpg)
12/28/2006 State Key Lab of CAD&CG 64
Extending this Subdivision Procedure to the Entire Patch
• For each internal vertex of the original mesh (i.e. a vertex not on the boundary of the mesh), generate the new vertex points – which are calculated as the average of Q, 2R and S
Q is the average of the new face points of all faces adjacent to the original vertex pointR is the average of the midpoints of all original edges incident on the original vertex pointS is the original vertex point.
![Page 65: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/65.jpg)
12/28/2006 State Key Lab of CAD&CG 65
Summary
• The subdivision of the bicubic uniform B-spline surface produces a simple procedure based upon face points, edge points and vertex points
• Catmull and Clark produce a refinement strategy that works on a mesh of arbitrary topology based on above procedure
![Page 66: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/66.jpg)
12/28/2006 State Key Lab of CAD&CG 66
Catmull-Clark Surfaces
![Page 67: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/67.jpg)
12/28/2006 State Key Lab of CAD&CG 67
Edwin Catmull Jim Clark: COOL!
Edwin Catmull, President of PixarAnimation Studios
Jim Clark is the founder of Netscape Communications Corp., Healtheon/Web MD Corp., and Silicon Graphics, Inc. Currently he serves as Chairman of the Board for myCFO, which he also founded
![Page 68: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/68.jpg)
12/28/2006 State Key Lab of CAD&CG 68
Catmull-Clark Surfaces
• Overview• Specifying the Refinement Procedure • Example• Summary
![Page 69: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/69.jpg)
12/28/2006 State Key Lab of CAD&CG 69
Overview
• Ed Catmull and Jim ClarkFollowing the methodology of Doo and SabinUtilizing the subdivision of bicubic uniform B-spline surfaces for
rectangular meshes, meshes of an arbitrary topology
Generalizing the definition of a face pointModifying the method for calculating vertex pointsSpecifying a method for reconnecting the points into a mesh
![Page 70: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/70.jpg)
12/28/2006 State Key Lab of CAD&CG 70
Specifying the Refinement Procedure
• Given a mesh of control points with an arbitrary topology, we can generalize the face point, edge point, vertex pointspecification from the uniform B-spline surface calculations
![Page 71: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/71.jpg)
12/28/2006 State Key Lab of CAD&CG 71
Specifying the Refinement Procedure
• For each face of the mesh, generate the new face points - which are the average of all the original points defining the face (We note that faces may have 3, 4, 5, or many points now defining them).
• Generate the new edge points - which are calculated as the average of the midpoints of the original edge with the two new face points of the faces adjacent to the edge.
![Page 72: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/72.jpg)
12/28/2006 State Key Lab of CAD&CG 72
Specifying the Refinement Procedure
• Calculate the new vertex points – which are calculated as the average of Q, 2Rand [(n-3)/n]S
Q is the average of the new face points of all faces adjacent to the original face pointR is the average of the midpoints of all original edges incident on the original vertex pointS is the original vertex point
![Page 73: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/73.jpg)
12/28/2006 State Key Lab of CAD&CG 73
Specifying the Refinement Procedure
• The mesh is reconnected by the following method
Each new face point is connected to the new edge points of the edges defining the original face. Each new vertex point is connected to the new edge points of all original edges incident on the original vertex point.
![Page 74: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/74.jpg)
12/28/2006 State Key Lab of CAD&CG 74
Example (1)
Face pointsOriginal mesh
![Page 75: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/75.jpg)
12/28/2006 State Key Lab of CAD&CG 75
Example (1)
Vertex pointEdge points
![Page 76: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/76.jpg)
12/28/2006 State Key Lab of CAD&CG 76
Example (1)
Connect new points to generate refined mesh
![Page 77: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/77.jpg)
12/28/2006 State Key Lab of CAD&CG 77
Example (2)
Face pointsOriginal mesh
![Page 78: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/78.jpg)
12/28/2006 State Key Lab of CAD&CG 78
Example (2)
Vertex pointEdge points
![Page 79: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/79.jpg)
12/28/2006 State Key Lab of CAD&CG 79
Example (2)
Connect new points to generate refined mesh
![Page 80: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/80.jpg)
12/28/2006 State Key Lab of CAD&CG 80
Example (3) --- 3 steps
![Page 81: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/81.jpg)
12/28/2006 State Key Lab of CAD&CG 81
Example (4)
![Page 82: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/82.jpg)
12/28/2006 State Key Lab of CAD&CG 82
Summary
• We note that the new set of control points has the property that all faces have four sides.
• We also note that the vertices corresponding to the original control points retain the valence (the number of edges that are adjacent to the vertex).
![Page 83: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/83.jpg)
12/28/2006 State Key Lab of CAD&CG 83
Summary
• We note that any portion of the surface where we have a 4×4 array of control points in a rectangular topology, represents a bicubic uniform B-spline surface patch
![Page 84: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/84.jpg)
12/28/2006 State Key Lab of CAD&CG 84
Summary
• Extraordinary point: the valence is not four
• The limit of Catmull-Clark subdivision surface are piecewise uniform bicubic B-spline surface patches except for the Extraordinary point
![Page 85: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/85.jpg)
12/28/2006 State Key Lab of CAD&CG 85
Loop Surfaces
• Overview• Loop Surfaces for Regular Meshes • Specifying the New Vertex Rules for
Extraordinary Points• Examples
Charles LoopResearcher
Microsoft Research Graphics Group
![Page 86: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/86.jpg)
12/28/2006 State Key Lab of CAD&CG 86
Overview
• Doo-Sabin surfaces: uniform biquadraticB-spline surface subdivision
• Catmull-Clark surfaces: bicubic uniform B-spline surface subdivision
• Loop surfaces: the quartic uniform box splines subdivision
a mesh of triangles
![Page 87: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/87.jpg)
12/28/2006 State Key Lab of CAD&CG 87
Loop Surfaces for Regular Meshes
• Given a triangular mesh, the Loop refinement scheme generates
vertex points: vertex maskedge points: edge mask
Vertex mask Edge mask Edge maskEdge mask
![Page 88: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/88.jpg)
12/28/2006 State Key Lab of CAD&CG 88
Loop Surfaces for Regular Meshes
• About edge mask: edge point is the average of the two centers of the faces that share the edge and the midpoint of the edge 2
22 22 2
2
2
![Page 89: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/89.jpg)
12/28/2006 State Key Lab of CAD&CG 89
Loop Surfaces for Regular Meshes
• About the vertex mask: the vertex point is a convex combination of the points V (5/8), the original vertex, and Q(3/8) the average of the original points that share an edge with V
![Page 90: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/90.jpg)
12/28/2006 State Key Lab of CAD&CG 90
Specifying the New Vertex Rules for Extraordinary Points
• Extraordinary point (valence ≠ 6):
k: valence of the extraordinary points
![Page 91: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/91.jpg)
12/28/2006 State Key Lab of CAD&CG 91
Examples
![Page 92: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/92.jpg)
12/28/2006 State Key Lab of CAD&CG 92
Examples
![Page 93: Subdivision Surface (2)](https://reader035.vdocuments.mx/reader035/viewer/2022071602/613d72ab736caf36b75d72cd/html5/thumbnails/93.jpg)
12/28/2006 State Key Lab of CAD&CG 93
Downloading Course
http://www.cad.zju.edu.cn/home/jqfeng/GM/GM06.zip