![Page 1: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/1.jpg)
Introduction toSubdivision Surfaces
Adi Levin
![Page 2: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/2.jpg)
Subdivision Curves and Surfaces
!Subdivision curves– The basic concepts of subdivision.
!Subdivision surfaces– Important known methods.– Discussion: subdivision vs. parametric surfaces.
![Page 3: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/3.jpg)
Corner Cutting
![Page 4: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/4.jpg)
Corner Cutting
1 : 33
: 1
![Page 5: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/5.jpg)
Corner Cutting
![Page 6: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/6.jpg)
Corner Cutting
![Page 7: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/7.jpg)
Corner Cutting
![Page 8: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/8.jpg)
Corner Cutting
![Page 9: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/9.jpg)
Corner Cutting
![Page 10: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/10.jpg)
Corner Cutting
![Page 11: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/11.jpg)
Corner Cutting
The control polygon
The limit curveA control point
![Page 12: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/12.jpg)
The 4-point scheme
![Page 13: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/13.jpg)
The 4-point scheme
![Page 14: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/14.jpg)
The 4-point scheme
1 :
1
1 :
1
![Page 15: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/15.jpg)
The 4-point scheme
1 :
8
![Page 16: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/16.jpg)
The 4-point scheme
![Page 17: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/17.jpg)
The 4-point scheme
![Page 18: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/18.jpg)
The 4-point scheme
![Page 19: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/19.jpg)
The 4-point scheme
![Page 20: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/20.jpg)
The 4-point scheme
![Page 21: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/21.jpg)
The 4-point scheme
![Page 22: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/22.jpg)
The 4-point scheme
![Page 23: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/23.jpg)
The 4-point scheme
![Page 24: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/24.jpg)
The 4-point scheme
![Page 25: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/25.jpg)
The 4-point scheme
![Page 26: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/26.jpg)
The 4-point scheme
![Page 27: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/27.jpg)
The 4-point scheme
The control polygon
The limit curveA control point
![Page 28: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/28.jpg)
Subdivision curves
Non interpolatory subdivision schemes
• Corner Cutting
Interpolatory subdivision schemes
• The 4-point scheme
![Page 29: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/29.jpg)
Basic concepts of Subdivision
!A subdivision curve is generated by repeatedlyapplying a subdivision operator to a givenpolygon (called the control polygon).
!The central theoretical questions:– Convergence: Given a subdivision operator and a
control polygon, does the subdivision processconverge?
– Smoothness: Does the subdivision processconverge to a smooth curve?
![Page 30: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/30.jpg)
Subdivision schemes for surfaces
! A Control net consists of vertices, edges, and faces.! In each iteration, the subdivision operator refines the
control net, increasing the number of vertices (approximately) by a factor of 4.
! In the limit the vertices of the control net converge to a limit surface.
! Every subdivision method has a method to generate the topology of the refined net, and rules to calculate the location of the new vertices.
![Page 31: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/31.jpg)
Triangular subdivisionWorks only for control nets whose faces are triangular.
Every face is replaced by 4 new triangular faces.
The are two kinds of new vertices:
• Green vertices are associated with old edges
• Red vertices are associated with old vertices.
Old verticesNew vertices
![Page 32: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/32.jpg)
Loop’s scheme
3 3
1
1
1
11
1
1
nw
( )( )n
nnwn -
+-= 22cos2340
64pn - the vertex valency
A rule for new red vertices A rule for new green vertices
Every new vertex is a weighted average of the old vertices. The list of weights is called the subdivision mask or the stencil.
![Page 33: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/33.jpg)
The original control net
![Page 34: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/34.jpg)
After 1st iteration
![Page 35: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/35.jpg)
After 2nd iteration
![Page 36: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/36.jpg)
After 3rd iteration
![Page 37: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/37.jpg)
The limit surface
The limit surfaces of Loop’s subdivision have continuous curvature almost everywhere.
![Page 38: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/38.jpg)
The Butterfly schemeThis is an interpolatory scheme. The new red vertices inherit the location of the old vertices. The new green vertices are calculated by the following stencil:
-1
-1
-1
-1
88
2
2
![Page 39: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/39.jpg)
The original control net
![Page 40: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/40.jpg)
After 1st iteration
![Page 41: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/41.jpg)
After 2nd iteration
![Page 42: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/42.jpg)
After 3rd iteration
![Page 43: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/43.jpg)
The limit surface
The limit surfaces of the Butterfly subdivision are smooth but are nowhere twice differentiable.
![Page 44: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/44.jpg)
Quadrilateral subdivisionWorks for control nets of arbitrary topology. After one iteration, all the faces are quadrilateral.
Every face is replaced by quadrilateral faces.The are three kinds of new vertices:
• Yellow vertices are associated with old faces• Green vertices are associated with old edges• Red vertices are associated with old vertices.
Old vertices New vertices
Old edgeOld face
![Page 45: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/45.jpg)
Catmull Clark’s scheme
1
1
11
1
First, all the yellow vertices are calculated
Step 1
1 1
1
1
Then the green vertices are calculated using the values
of the yellow vertices
Step 2
11
11
11
1
1
1
nw
Finally, the red vertices are calculated using the values
of the yellow vertices
Step 3
)2( -= nnwn
n - the vertex valency
1
![Page 46: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/46.jpg)
The original control net
![Page 47: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/47.jpg)
After 1st iteration
![Page 48: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/48.jpg)
After 2nd iteration
![Page 49: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/49.jpg)
After 3rd iteration
![Page 50: Introduction to Subdivision Surfaces - PUC-Riowebserver2.tecgraf.puc-rio.br/~mgattass/cg/2019/10-SubdivSurfaces… · Subdivision schemes for surfaces!A Control netconsists of vertices,](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08d4227e708231d423eb94/html5/thumbnails/50.jpg)
The limit surface
The limit surfaces of Catmull-Clarks’s subdivision have continuous curvature almost everywhere.