Você está na página 1de 10

Handle and Hole Improvement by Using New Corner Cutting Subdivision Scheme with Tension

E RGUN A KLEMAN J IANER C HEN F USUN E RYOLDAS V INOD S RINIVASAN

Texas A&M University Abstract


The recently developed Doubly Linked Face List (DLFL) structure introduces a powerful modeling paradigm that allows users to alternatively apply topological change operations and subdivision operations on mesh structure. Moreover, the DLFL is topologically robust in the sense that it always guarantees valid 2-manifold surfaces. In this paper, we further study the relationship between DLFL structure and subdivision algorithms. The paper has three contributions. First, we develop a new corner cutting scheme, which provides a tension parameter to control the shape of subdivided surface. Second, we develop a careful and efcient algorithm for our corner cutting scheme on the DLFL structure that uses only the basic operations provided by the DLFL structure. This implementation ensures that our new corner cutting scheme preserves topological robustness. The comparative study shows that the corner cutting schemes create better handles and holes than CatmullClark scheme. changes are simply done by inserting or deleting edges to a polygonal mesh. During these operations, we also guarantee that polygonal meshes remain valid 2-manifolds. Our operations are also subdivision friendly, i.e., subdivision operations can always smooth out the meshes obtained by our operations. We have recently implemented Catmull-Clark subdivision algorithm [7] over the DLFL structure [2]. By using Catmull-Clark subdivision, we have improved the quality of handles and holes. Our result shows that our approach is not only suitable for modeling initial 2manifold polygonal meshes, but also useful for changing the topology of a 2-manifold polygonal mesh that is smoothed by subdivision operations. Since subdivision operations are essential for the improvement of the quality of meshes, performing the topological change operations and the subdivision operations alternatively provides a powerful interactive shape modeling approach that supports a hierarchy of topology changes and quality improvements at different levels of details. In this work, we further study the relationship between the DLFL structure and subdivision algorithms. We rst develop a new corner cutting algorithm and implement it over the DLFL structure. The new algorithm is similar to DooSabin subdivision scheme, and have the property that users can control the shape of subdivided surface via a parameter. This parameter is independent of the valence of the faces (the valence of a face is the number of sides of the face). A challenging issue in the implementation of corner cutting algorithms is that the new mesh resulted from a corner cutting algorithm is entirely disjoint from the original mesh. Therefore, the topologically robust operations provided by the DLFL structure, such as edge insert and edge delete, are not directly applicable in the implementation. On the other hand, using operations not provided by the DLFL structure might introduce topological inconsistency. We develop a new algorithm in using the operations provided by the DLFL structure, so that the subdivision schemes based on corner cutting can be directly implemented using only operations provided by the DLFL structure. Most importantly, this implementation approach guarantees the topological robustness of our subdivision algorithms based on 1

1. Introduction
We have recently introduced a new data structure Doubly Linked Face List (DLFL), which guarantees topological consistency and provides topological changes [1, 8]. By using DLFL, it is easy to change the topology of polygonal meshes. The topological changes we demonstrate include opening and closing holes, creating and deleting handles, connecting two disjoint meshes into one, and separating one mesh into two disconnected ones. These topological
Corresponding Author. Visualization Sciences Program, Department of Architecture. Address: 216 Langford Center, College Station, Texas 77843-3137. email: ergun@viz.tamu.edu. phone: +(409) 845-6599. fax: +(409) 845-4491. Supported in part by Research Council of College of Architecture and Interdisciplinary Program of Texas A&M University. Department of Computer Science, College of Engineering. Supported in part by the National Science Foundation under Grant CCR-0000206. Department of Computer Science, College of Engineering. Department of Architecture. Supported in part by the Texas A&M, Interdisciplinary Program.

corner cutting schemes. Finally, we compare our new subdivision algorithm with other subdivision algorithms implemented on the DLFL structure, and show that the new corner cutting algorithm improves the quality of handles and holes created by topology change operations on the DLFL structure.

2. Background and Motivations


Subdivision algorithms require that the local topological regions must correspond to simple disks (topologically). This implies that underlying structure must be a valid 2manifold. Since the quality and topology of the smooth surface resulting from subdivision depends greatly on the initial control mesh, theoretical assurance of the quality of initial control meshes is extremely important. In other words, the process of obtaining the initial control mesh must be robust and guarantee a valid 2-manifold structure. Unfortunately, set operations, which are the most commonly used operations in mesh modeling, can result in non-manifold surfaces. Moreover, the existing data structures in mesh modeling are specically developed in such a way that they can represent non-manifold surfaces resulting from the set operations. In particular, they do not guarantee valid 2manifold surfaces. Because of this fundamental problem, in the process of obtaining the initial control mesh, unwanted artifacts can be generated. These artifacts include wronglyoriented polygons, intersecting or overlapping polygons, missing polygons, cracks, and T-junctions. There have been recent research efforts to correct these artifacts [3, 26]. One of the oldest formalized data structures that supports manifold surfaces is the winged-edge representation [5]. Baumgart also suggested using a winged-edge structure and Euler operators in order to obtain coordinate free operations [6]. Winged-edge data structures support 2manifold surfaces, and starting from a valid 2-manifold mesh, winged-edge creates only valid 2-manifolds with Euler operators. However, winged-edge structures can also accept non-manifold surfaces [5, 30]. Guibas and Stol introduced the quad-edge data structure and two topological operators, make-edge and splice [17]. Like winged-edge structure, quad-edge structure creates valid 2-manifolds with make-edge and splice operations if it starts from a valid 2-manifold. Unfortunately, quad-edge data structures can still support non-manifold surfaces. When using set operations, resulting solids can have non-manifold boundaries [19, 20]. It is worthwhile to note that although the data structures, such as winged-edge, can handle some non-manifold surfaces, they actually complicate the algorithms for solid modeling [20, 25]. Therefore, it is interesting to note that data structures that can support a wider range of non-manifold surfaces have been investigated. Examples of such work are Weilers radial-

edge structure [31], Karasicks star-edge structure [24], and Vaneceks edge-based data structure [29]. We propose to return back to the basic concept of coordinate free operations over 2-manifold surfaces by ignoring set-operations. Similar to our approach, instead of set operations, the usage of Morse operators that describe the changes of cross-sectional contours at critical sections (peaks, passes and pits) has recently been investigated [28, 15]. We use topological graph operations which are similar to Eulers operations and based on graph embeddings. The biggest advantage of our operations is that they are extremely simple and always guarantee topological consistency. Only two operations, Insert edge and Delete edge, are enough to change the topology, and these operations are very efcient when implemented properly. The efciency of these operations is due to our recently developed structure Doubly Linked Face List (DLFL) [1, 8]. The DLFL structure is based on the classical theory of graph rotation systems [11]. Extensive research has been done in the study of graph rotation systems. The most remarkable result is that graph rotation systems provide necessary and sufcient conditions in representing valid 2manifolds. Our DLFL structure is an efcient implementation of graph rotation systems. Therefore, DLFL not only supports efcient computations on 2-manifolds, but also always guarantees topological consistency, i.e. it always gives a valid 2-manifold. For completeness, we give in the following precise description of the theory of graph rotation systems and the DLFL structure. Denition Let G be a graph. A rotation at a vertex v of G is a cyclic permutation of the edge-ends incident on v. A rotation system of G is a list of rotations, one for each vertex of G. Given a rotation system of a graph G, to each oriented edge (u, v) in G one assigns the oriented edge (v, w) such that vertex w is the immediate successor of vertex u in the rotation at vertex v. The result is a permutation on the set of oriented edges, that is, on the set in which each undirected edge appears twice, once with each possible direction. In each edge-orbit under this permutation, the consecutive oriented edges line up head to tail, from which it follows that they form a directed cycle in the graph. If there are r oriented edges in an orbit, then an r-sided polygon can be tted into it. Fitting a polygon to every such edge-orbit results in polygons on both sides of each edge, and collectively the polygons form a 2-manifold. It has been proven [11, 16] that every graph rotation system corresponds to a valid 2manifold, constructed using the method described above, and every 2-manifold can be given by a graph rotation system. In particular, it means that a graph rotation system

always represents a valid 2-manifold structure. Figure 1 shows a graph drawn in a rotation system. (the
v1
d a a

v4 e6 e3 e1 v2 e2 e5 e4 v3

Tetrahedron

corners
d

Face list
f1 v1
f c c f

f2 v2 v1 v4 v1

f3 v3 v2

f4 v4

v3

v2

v4

v3

e b b e

Figure 1. A graph drawn in rotation system. cyclic edge-end ordering of the rotation at each vertex is shown in counter clockwise ordering in the gure.) Figure 2 shows the embedding of the graph G on the torus corresponding to the rotation system in Figure 1.
a

v1

v2 v3 v4

e1

e2

e3

e4

e5 e6

vertex list
corner pointers

edge list
edge pointers

Figure 3. An illustration of a (partial) DLFL data structure for a tetrahedron.

d e b

f c

e f b c

Since the DLFL structure is an implementation of the graph rotation systems, and graph rotation systems always guarantee topological consistency (i.e., always give valid 2manifold structures), the DLFL structure is topologically robust. Moreover, the two topology change operations on graph rotation systems, edge insert and edge delete, have been efciently and effectively implemented on the DLFL structure [1, 2]. Therefore, when a graphics mesh structure is given on the DLFL structure, we can conveniently change the topology of the mesh structure using the operations.

Figure 2. The embedding of graph G corresponding to the rotation system in Figure 1.

3. Handle Improvement with Subdivision: Vertex Insertion vs. Corner Cutting


Consider in more detail the process of inserting an edge to a graph rotation system, represented by the DLFL structure. Let there be two different faces of a mesh that is represented by the DLFL structure. Based on the rotation system, any edge inserted by connecting these two faces converts them into a single face. If these two faces belong to two disconnected 2-manifold shapes, after the insert edge operation these two 2-manifold shapes become connected by the new inserted edge. If the faces belong to the same 2-manifold, the edge insert operation increases the genus of the 2-manifold by one, i.e., a handle or a hole is added. In all these cases, a new face created by the edge insert operation is, in fact, a handle as shown in Figure 4. We call this type of face a face-handle. It is not easy to visualize this face-handle it is a bit strange looking. We notice that subdivision operations can smooth this polygon and make the structure of the handle become apparent as shown in the last gure in Figure 4.

Denition Let (G) be rotation system of the graph G = (V, E) that represents an embedding of the graph G on a 2-manifold surface S. Let F be the set of faces of the embedding. A doubly linked face list (DLFL) for the embedding (G) is a triple L = F, V, E , where the face list F consists of a set of |F | sequences, each is given by a balanced tree and corresponds to the boundary walk of a face in the embedding (G). The roots of the balanced trees are connected by a circular doubly linked list. The vertex array V has |V | items. Each V[v] is a linked list of pointers to the vertex nodes of v in the balanced trees in F. The edge array E has |E| items. Each E[e] is doubly linked to the rst vertex nodes of the two edge sides of the edge e in the balanced trees in F. Figure 3 gives the illustration of the DLFL data structure for a tetrahedron (only part of the structure is shown).

v5

v5

v4

v6

v4 v6 Subdivision

v3 v1 v2 v1

v3

v2

Figure 4. Handle becomes apparent after subdivision operations.

The existing subdivision schemes can be classied based on three criteria [33, 34]: (1) the type of renement rule (e.g. vertex insertion or corner cutting) (2) the type of generated mesh (e.g. triangular or quadrilateral) (3) whether the scheme is approximating or interpolating. We observed that, for the improvement of face-handles, triangular or interpolating schemes are not appropriate choices. This observation limited our choices to approximating and quadrilateral schemes. We have earlier implemented Catmull-Clark subdivision algorithm [7], which is a vertex insertion, approximating and quadrilateral scheme, on the DLFL structure [2]. Based on this implementation, we have demonstrated how the DLFL structure supports efciently and effectively the alternative performances of topological change operations and subdivision operations. In particular, we showed how a handle can be added to a cup based on the system (see [2] for details). One feature that is not completely satisfactory is that the construction of the handle based on a vertex insertion subdivision operation includes an extraordinary vertex with a high valence. (The valence of a vertex is the number of edges incident on the vertex.) This extraordinary vertex occurs at the middle of the handle as shown in Figure 4. The valence of the extraordinary vertex on a handle is at least 8. The resulting surface does not always look smooth near this extraordinary vertex because of the unusual structure around this extraordinary vertex as shown in Figure 5. It is possible to remove this phenomenon and avoid high valence vertices simply by inserting new edges. If a second edge is inserted to connect any two vertices of the facehandle, the new edge separates the face-handle into two faces without changing the topology of the mesh. By inserting new edges, the quality of handle can be improved further. In our earlier work, we have improved the quality of the handles by inserting new edges. In the following, we show that the quality of facehandles can be further improved by using corner cutting schemes. Corner cutting schemes do not create additional

Figure 5. Examples of surfaces that do not look smooth near extraordinary vertices.

extraordinary vertices. Under a corner cutting scheme, the face-handle eventually becomes a high-valenced planar face, which is a part of C 1 smooth handle. After a few number of iteration, this high-valenced face does not create any visual distraction since it becomes almost planar.

3.1. Corner Cutting Schemes


The renement rules for a general corner cutting algorithm are as follows: Step 1 : For each vertex vn of a face F = {v0 , v1 , . . . , vn , . . . , vN 1 } of the mesh, create a new vertex vn . Compute the position of the new vertex as
N 1

vn =
m=0

an,m vm

(1)

where an,m are real coefcients described by the corner cutting sceme and N is the valence of the face. Step 2 : For each face, creat a new face by connecting all the new points that have been generated in that face; Step 3 : For each vertex, connect all the new points that have been generated for that vertex (in all faces whose boundary contains the vertex); Step 4 : For each edge, connect the four new points that have been generated for the two ends of the edge. Step 5 : Remove all old vertices and edges.

For any subdivision scheme using approximation, the coefcients an,m in step 1 in the above algorithm must satisfy the following conditions (we assume that the vertex indices are given in the order of a face traversing): 1. an,m 0 for all n and ms and
N 1

By using Fourier analysis, similar to Doo-Sabins approach, we can show that the new scheme also has three distinct eigenvalues 1, (2a + 1)N 5 3aN 5 , 3N 5 3N 5

2. for all ns
m=0

an,m = 1.

These conditions guarantee convergence of the algorithm and provide C 0 continuity and afne invariance properties.

3.2. Doo-Sabin Algorithm


For example, in the well-known Doo-Sabin subdivision scheme, the coefcients an,m in equation (1) are computed using the following formulas: an,m an,m = =
1 4 5 4N 3+2 cos

if n = m
2(nm) N

4N

otherwise

It is easy to verify that in Doo-Sabin scheme, each coefcient is always greater than zero and the coefcients add up to 1. By using Fourier analysis, Doo-Sabin showed that this scheme has three distinct eigenvalues 1, 1/2, 1/4. One eigenvector has the eigenvalue 1, two eigenvectors correspond to eigenvalue 1/2 and the rest of the eigenvectors correspond to the smallest eigenvalue 1/4. This structure of eigenvalues of Doo-Sabin scheme guarantees that the scheme provides tangent plane continuity [10].

and if a < 1 then regardless of the value of N the sequence is strickly decreasing. Similar to Doo-Sabin scheme, only one eigenvector corresponds to eigenvalue 1, two eigenvectors correspond to the second largest eigenvalue and the rest of the eigenvectors correspond to the smallest eigenvalue. This result demonstrates that our scheme also provides tangent plane continuity. There also exists a lower limit over the value of a. To have positive eigenvalues, for a triangular face. (i.e., N = 3) a must be larger than 1/3 (Note that in triangle case, the third eigenvalue will not exist.) For a quadrilateral face (i.e., N = 4) a must be larger than 5/12. Otherwise, the smallest eigenvalue can become negative. It is safer to choose 5/12 as a lower bound for a since in corner cutting schemes we cannot avoid quadrilaterals (edges become quadrilaterals after the application of corner cutting scheme once.) Figures 6 and 7 show the rst four consecutive iterations of the new corner cutting scheme for a cube control shape. In these examples, we used the parameters a = 9/16 and a = 0.9 As it is shown in the Figures, the larger a values, the less rounded shape becomes. This is because for larger a values, the position vn will geometrically be closer to the position of vn . By using this property, the user can control the degree of smoothness.

3.3. A New Corner Cutting Algorithm with Tension


Our new corner cutting scheme is inspired by Doo-Sabin algorithm. Let vertex indices in a face be given by a rotation order, we use the following formula to compute the coefcients an,m s to compute the position of vn . an,m an,m where M = 3 + 2 cos 2(n m) N . 1a = M 3N 5 = a if n = m otherwise (2)

4. Algorithm Details
It is straightforward to implement vertex insertion schemes (such as Catmull-Clark) over the DLFL structure by only using insert edge and subdivide edge operations [2] which guarantee topological robustness during the process. Unfortunately, the same cannot be directly done for the development of algorithms to implement corner cutting schemes, since the new mesh structure resulting from corner cutting scheme is completely disjoint from the initial mesh. More seriously, if the new mesh is constructed by operations that is not provided by DLFL structure, topological inconsistency might be introduced during the process. In following, we present a corner cutting algorithm that only uses the operations provided by DLFL structure. Since DLFL structure and these operations are topological robust, our algorithm always guarantees topological consistency. Let M be mesh given in the DLFL structure such that we will apply a corner cutting algorithm on M. If M has n vertices, m edges and f faces, then the new mesh structure

In these equations, parameter a in equation (2) is provided by users and it is used as a tension parameter [4]. The new algorithm gives subdivision rules for generating quadratic B-spline tensor-product surfaces for N = 4 and a = 9/16. Note that, in our case the coefcients add up to 1 and if 0 < a < 1 each coefcient is greater than zero.

M after corner cutting algorithm will have n+m+f faces: each face in M induces a new face of the same valence in M (see Step 2 of the general description of the corner cutting scheme); each edge in M induces a new face of valence 4 in M (see Step 4 of the description); and each vertex in M induces a new face of valence r in M , where r is the valence of the vertex (see Step 3 of the description).

D ELETE(e) deletes the edge e from the current mesh. This is the converse operation of edge insertion. S UB D I V(e, v) subdivides the edge e = (u, w) by a new vertex v of degree 2 so that the edge e becomes two new edges (u, v) and (v, w). D ELETE(v) deletes the vertex v from the current embedding if the valence of the vertex v is less than or equal to 2. This is the converse operation of subdivide edge. Based on these operations, our corner cutting algorithm over the DLFL structure proceeds as follows for a given mesh M under the DLFL structure, Step 1: for each face F = {v0 , v1 , . . . , vN 1 } in the mesh M 1.1. for i = 0 to N 1 do subdivide edge [vn , v(n+1) vertex vn ;
(mod N ) ]

by a new

1.2. compute the positions of the new vertices v0 , v1 , . . ., vN 1 using the formulas (1), and (2); Figure 6. The rst four consecutive iterations with a = 9/16. 1.3. for n = 0 to N 1 do insert the new edges [vn , v(n+1) face;
(mod N ) ]

into the

Remark 1. Traversing the faces of the mesh M can be simply done by calling the operation FACE T RAV provided by the DLFL structure, whose running time is linear in the valence of the face being traversed. Remark 2. Each edge [v, w] in M is traversed exactly twice in Step 1, once from v to w and once from w to v. After the rst traverse, the edge [v, w] of M is subdivided into [v, v , w]. In consequence, when the edge is traversed in the second time, the new vertex v is also encountered. Therefore, in the above face traversing, the new added vertices should be simply ignored when faces in M are traversed. In particular, after Step 1, each edge [v, w] in the mesh M is subdivided by two new vertices v and w of valence 2 and the edge [v, w] becomes three consecutive edges [v, v ], [v , w ], and [w , w] (see Figure 8B). Remark 3. It will be helpful to compare the topological view and geometric view for Step 1. Topologically, each edge [v, w] in M is subdivided by two new vertices v and w of valence 2 (See Figure 8B). On the other hand, from geometric point of view, since the locations of the new vertices v and w are recomputed, the segment sequence [v, v ], [v , w ], [w , w] is no longer on a single straight line but becomes zigzag (see Figure 8C). Remark 4. In Step 1.3, since the new edges [vn , v(n+1) (mod N ) ] are all inserted in the given face

Figure 7. The rst four consecutive iterations with a = 0.9. Four basic operations given below have been developed and implemented over the DLFL structures [2]. These operations guarantee the topological consistency and can be computed in time logarithmic in the number of vertices in a given face. I NSERT(c1 , c2 , e) inserts the new edge e to the mesh structure between the face corners c1 and c2 (a face corner is a subsequence of a face boundary walk consisting of two consecutive edges plus the vertex between them).

F , the face corners for each new inserted edge are uniquely determined. Also note that after Step 1, each new vertex becomes of valence 3. (see Figure 8D). Step 2 : Now for each old vertex v in the mesh M, suppose the neighbors of v, which are all new added vertices, are ordered by the rotation at v as v0 , v1 , . . ., vr1 . Insert new edges [j , v(j+1) (mod r) ] for j = v 0, 1, . . . , r 1 (see Figure 8E).

common edge with the old mesh M. Even the new edges resulted from subdividing the old edges of M are eventually also removed. Therefore, for implementation convenience, we can simply creat a separate new Vertex list and new Edge list for the new vertices and edges, respectively, instead of modifying the old Vertex list and old Edge list. The old Vertex list and Edge list will be entirely deleted at the end of the algorithm. The resulting structure from the algorithm is the mesh structure M obtained by subdividing the mesh M by our corner cutting scheme.

5. Implementation and Results


A. Initial mesh B. Topological view

The Algorithm has been implemented as a C++ program and added as a function to the existing DLFL system. We applied the new corner cutting algorithm to the control shapes we used for Catmull-Clark subdivision to obtain smooth handles and holes [2]. It is interesting to note that the corner cutting algorithm creates better looking handles and holes than Catmull-Clark algorithm.

C. Geometrical view

D. New edges in old faces

Figure 8. Illustration of corner cutting algorithm on DLFL. Remark 5. The DLFL structure also provides a V ER TEX T RAV operation that allows to traverse the neighbors of a vertex in the order in the rotation at the vertex in time linear in the valence of the vertex. Therefore, Step 2 can be done very efciently. Moreover, the face corners for the new inserted edge [j , v(j+1) (mod r) ] v are in the face that also contains the face corner ((j+1) (mod r) , v, vj ), so they can be found convev niently. Step 3 : Finally, we delete all edges of form [v , w ], where v and w are the new vertices subdividing an old edge [v, w] in the mesh M, and delete all old vertices in M and the edges incident to them (by repeatedly using the edge delete operation followed by a single vertex delete operation). Remark 6. A careful examination shows that the new mesh structure M shares neither common vertex nor

Figure 9. Creation of a handle for a cup. Figure 9 shows adding a handle to a cup. Figure 10 shows how to create a hole in a cube. Figure 13 shows

connecting two disconnected toroids with different number of edges. Figure 11 and 12 are examples of creating handles for a small stellated dodecahedron [32]. Note that in these examples, unlike in the Catmull-Clark case, handles and holes look smoother even for only one edge insertion. Inserting additional edges further improves the quality of the handles and holes.

the DLFL structure is subdivision friendly. Since subdivision operations are essential for the improvement of the quality of meshes, performing the topological change operations and the subdivision operations alternatively provides a powerful shape modeling approach that supports a hierarchy of topology changes and quality improvements at different levels of details. We are planning to enhance further our DLFL system. One direction is to help users to construct shapes with high geometrical quality (No self-intersection and at least C 1 continuity everywhere). We observe that this is closely related to the visibility of the corresponding faces and the underlying subdivision schemes. Based on the techniques from computation geometry, we will develop efcient algorithms to identify the cases that can result in poor quality in shape geometry. Another enhancement will be the development of a 2D interface for painting 2-manifold meshes. Initial sketch of this idea is described in one of our recent papers [1]. For this purpose we need to study the structure of the corresponding 2D representations for any given 2-manifold mesh. We will also develop efcient and intuitive manipulations of the 2D representations.

7. Acknowledgments
We are grateful to the reviewers who provided valuable ideas for the improvements of the paper. This work is partially funded by Research Council of College of Architecture and Interdisciplinary Program of the Texas A&M University .

References
[1] E. Akleman and J. Chen, Guaranteeing the 2Manifold Property for meshes with Doubly Linked Face List, International Journal of Shape Modeling Volume 5, No 2, pp. 149-177. [2] E. Akleman, J. Chen, and V. Srinivasan, A New Paradigm for Changing Topology During Subdivision Modeling, Pacic Graphics 2000. [3] G. Barequet and S. Kumar, Repairing CAD models, in Proceedings of IEEE Visualization97, (October 1997) pp. 363-370. [4] R. H. Bartels, J. C. Beatty, and B. A. Barsky, An Introduction to Splines for Use in Computer Graphics and Geometric Modeling, (Morgan Kaufmann Publishers, Los Altos, CA, 1987). [5] B. J. Baumgart, Winged-edge polyhedron representation, Technical Report CS-320, Stanford University, 1972.

Figure 10. Creating a hole in a cube.

6. Discussion, Conclusion and Future Work


In this paper, we continue to study the relationship between the DLFL structure and subdivision algorithms. We have developed a new corner cutting algorithm, which provides a tension parameter to control the shape of subdivided surface. We have also implemented the new corner cutting algorithm, over the DLFL structure. We have observed that the corner cutting schemes are more appropriate for the improvement of face-handles as they create better handles and holes than Catmull-Clark. It will be interesting to develop vertex insertion schemes that can effectively smooth our face-handles. This paper, along with [2], shows that

[6] B. J. Baumgart, A polyhedron representation for computer vision, in 44th AFIPS National Computer Conference, (1975) pp. 589-596. [7] E. Catmull and J. Clark, Recursively Generated Bspline Surfaces on Arbitrary Topological Meshes, Computer Aided Design, 10 (September 1978) 350355. [8] J. Chen, Algorithmic Graph Embeddings, Theoretical Computer Science, 181 (1997) 247-266. [9] T. deRose. M. Kass and T. Truong, Subdivision Surfaces in Character Animation, Computer Graphics, 32 (August 1998) 85-94. [10] D. Doo and M. Sabin, Behavior of Recursive Subdivision Surfaces Near Extraordinary Points, Computer Aided Design, 10 (September 1978) 356-360. [11] J. Edmonds, A Combinatorial Representation for Polyhedral Surfaces, Notices American Mathematics Society, 7 (1960) 646. [12] G. Farin, Curves and Surfaces for Computer Aided geometric Design, A Practical Guide, (Academic Press, Inc, London, 1988). [13] P. A. Firby and C. F. Gardiner, Surface Topology, (John Wiley & Sons, 1982). [14] H. Ferguson, A. Rockwood and J. Cox, Topological Design of Sculptured Surfaces, Computer Graphics, 26 (August 1992) 149-156. [15] A. T. Fomenko and T. L. Kunii, Topological Modeling for Visualization, (Springer-Verlag, New York, 1997). [16] J. L. Gross and T. W. Tucker, Topological Graph Theory, (Wiley Interscience, New York, 1987). [17] L. Guibas, J. Stol, Primitives for the manipulation of general subdivisions and computation of Voronoi diagrams, ACM Transaction on Graphics, 4 (1985) 74-123. [18] B. T. Stander and J. C. Hart, Guaranteeing the Topology of an Implicit Surface Polygonization for Interactive Modeling, Computer Graphics, 31 (August 1997) 279-286. [19] C. M. Hoffmann, Geometric & Solid Modeling, An Introduction, (Morgan Kaufman Publishers, Inc., San Mateo, Ca., 1989). [20] C. M. Hoffmann and G. Vanecek, Fundamental techniques for geometric and solid modeling, Manufacturing and Automation Systems: Techniques and Technologies, 48 (1990) 347-356.

[21] T. Igarashi, S. Matsuoka and H. Tanaka, A Sketching Interface for 3D Freeform Design, Computer Graphics, 33 (August 1999) 409-416. [22] C. Loop, Smooth Subdivision Surfaces Based on Triangles, Masters Thesis, Department of Mathematics, University of Utah (1987). [23] C. Loop and T. DeRose, Generalized B-spline Surfaces with Arbitrary Topology, Computer Graphics, 24 (August 1991) 101-165. [24] M. Karasick, On the representation and manipulation of rigid solids, Ph.D. Thesis, McGill University, 1988. [25] M. Mantyla, Boolean operations on 2-manifolds through vertex neighborhood classication, ACM Transaction on Graphics, 5 (January 1986) 1-29. [26] T. M. Murali and T. A. Funkhouser, Consistent solid and boundary representations from arbitrary polygonal data, in Proceedings of 1997 Symposium on Interactive 3D Graphics , (1997) pp. 155-162. [27] T. W. Sederberg, D. Sewell, and M. Sabin, NonUniform recursive Subdivision Surfaces, Computer Graphics, 32 (August 1998) 387-394. [28] S. Takahashi, Y. Shinagawa and T. L. Kunii, A Feature-Based Approach for Smooth Surfaces, in Proceedings of Fourth Symposium on Solid Modeling, (1997) pp. 97-110. [29] . G. Vanecek, Set operations on polyhedra using decomposition methods, Ph.D. Thesis, University of Maryland, 1989. [30] K. Weiler Polygon comparison using a graph representation, Computer Graphics, 13 (August 1980) 1018. [31] K. Weiler, Topological structures for geometric modeling, Ph.D. Thesis, Rensselaer Polytechnic Institute, N. Y., August 1986. [32] R. Williams, The Geometrical Foundation of Natural Structures, (Dover Publications, Inc., 1972). [33] D. Zorin and P. Schr der, co-editors, Subdivision o for Modeling and Animation, ACM SIGGRAPH99 Course Notes no. 37, August, 1999. [34] D. Zorin, editor, Subdivision for Modeling and Animation, ACM SIGGRAPH2000 Course Notes no. 23, July, 2000.

Figure 11. Creation of various handles for small stellated dodecahedron.

Figure 13. Connecting two toroids. Figure 12. Handle improvement for small stellated dodecahedron.

Você também pode gostar