Graphics Reference
In-Depth Information
triangular meshes and whether they approximate or interpolate. An important ques-
tion for all these algorithms is whether repeated application produces a sequence of
surfaces that converges to a surface and how smooth this limit surface is. See [Reif95].
The first subdivision algorithm that we shall describe is the Doo-Sabin algorithm
([DooS78]). This algorithm is a corner-cutting algorithm and is a generalization of the
Chaikin curve subdivision algorithm that we described in Section 11.14. The Doo-Sabin
algorithm starts with a polygonal surface S that has been defined by a set of vertices
together with a specification of its edges and faces. (Actually, the faces do not need to be
planar for the algorithm and all we need is a polygon-type data structure and not a real
polygon.) One then defines some new vertices for each face F , one for each vertex of F ,
and this new set of vertices will then become the vertex set of the subdivided surface S ¢.
The faces (and edges) of S ¢ are determined by the following three rules:
(1) If F was an n-sided face of S , then the n new vertices associated to F will
become a face of S ¢ and is called an F-face . See Figure 12.29(a).
(2) If E is an edge of S that belongs to faces F and F ¢ of S , then the four vertices
of S ¢ created for the endpoints of E in F and F ¢ define a face of S ¢ called an
E-face . See Figure 12.29(b). No face is associated to a boundary edge of S .
(3) If V is a nonboundary vertex of S that belonged to n faces of S , then the n ver-
tices of S ¢, associated to the vertex V in those n faces, define a face of S ¢ called
an V-face . See Figure 12.29(c).
Figure 12.29.
The new vertices of the Doo-Sabin algorithm.
Search WWH ::




Custom Search