Using Semi-Regular 4 8 Meshes for Subdivision Surfaces

Similar documents
Generalizing the C 4 Four-directional Box Spline to Surfaces of Arbitrary Topology Luiz Velho Abstract. In this paper we introduce a new scheme that g

Semi-Regular 4 8 Refinement and Box Spline Surfaces

Example: Loop Scheme. Example: Loop Scheme. What makes a good scheme? recursive application leads to a smooth surface.

Subdivision Surfaces

Subdivision Curves and Surfaces: An Introduction

Subdivision overview

Volume Enclosed by Example Subdivision Surfaces

u 0+u 2 new boundary vertex

4 8 Subdivision. Luiz Velho a and Denis Zorin b

Subdivision Surfaces

Non-Uniform Recursive Doo-Sabin Surfaces

Curve Corner Cutting

Stellar Subdivision Grammars

Subdivision Surfaces

Local Mesh Operators: Extrusions Revisited

G 2 Interpolation for Polar Surfaces

Hierarchical Grid Conversion

UNIVERSITY OF CALGARY. Subdivision Surfaces. Advanced Geometric Modeling Faramarz Samavati

An Efficient Data Structure for Representing Trilateral/Quadrilateral Subdivision Surfaces

Interpolatory 3-Subdivision

Subdivision on Arbitrary Meshes: Algorithms and Theory

Non-Uniform Recursive Doo-Sabin Surfaces (NURDSes)

Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches

Subdivision Surfaces. Homework 1: Questions on Homework? Last Time? Today. Tensor Product. What s an illegal edge collapse?

Subdivision Surfaces. Homework 1: Questions/Comments?

Recursive Subdivision Surfaces for Geometric Modeling

Variable Resolution 4 k Meshes: Concepts and Applications

Modeling. Simulating the Everyday World

Local Modification of Subdivision Surfaces Based on Curved Mesh

Honeycomb Subdivision

Polar Embedded Catmull-Clark Subdivision Surface

Subdivision Surfaces. Homework 1: Last Time? Today. Bilinear Patch. Tensor Product. Spline Surfaces / Patches

Normals of subdivision surfaces and their control polyhedra

SEMIREGULAR PENTAGONAL SUBDIVISIONS

Triangle Mesh Subdivision with Bounded Curvature and the Convex Hull Property

INF3320 Computer Graphics and Discrete Geometry

Curves and Surfaces 2

Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches

1. Introduction. 2. Parametrization of General CCSSs. 3. One-Piece through Interpolation. 4. One-Piece through Boolean Operations

Physically-Based Modeling and Animation. University of Missouri at Columbia

Advanced Graphics. Subdivision Surfaces. Alex Benton, University of Cambridge Supported in part by Google UK, Ltd

Subdivision Depth Computation for Extra-Ordinary Catmull-Clark Subdivision Surface Patches

Removing Polar Rendering Artifacts in Subdivision Surfaces

Joe Warren, Scott Schaefer Rice University

Modified Catmull-Clark Methods for Modelling, Reparameterization and Grid Generation

Normals of subdivision surfaces and their control polyhedra

Subdivision Curves and Surfaces

Subdivision based Interpolation with Shape Control

Subdivision. Outline. Key Questions. Subdivision Surfaces. Advanced Computer Graphics (Spring 2013) Video: Geri s Game (outside link)

Technical Report. Removing polar rendering artifacts in subdivision surfaces. Ursula H. Augsdörfer, Neil A. Dodgson, Malcolm A. Sabin.

From curves to surfaces. Parametric surfaces and solid modeling. Extrusions. Surfaces of revolution. So far have discussed spline curves in 2D

Smooth Patching of Refined Triangulations

Near-Optimum Adaptive Tessellation of General Catmull-Clark Subdivision Surfaces

Design by Subdivision

Smooth Surfaces from 4-sided Facets

2001, Denis Zorin. Subdivision Surfaces

A subdivision scheme for hexahedral meshes

Solidifying Wireframes

Postprocessing of Compressed 3D Graphic Data

Connected & Manifold Sierpinsky Polyhedra

Regular Mesh Construction Algorithms using Regular Handles

Ternary Butterfly Subdivision

Subdivision surfaces. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell

Grid Generation and Grid Conversion by Subdivision Schemes

Approximate Geodesics on Smooth Surfaces of Arbitrary Topology

MA 323 Geometric Modelling Course Notes: Day 36 Subdivision Surfaces

Lecture 3 Mesh. Dr. Shuang LIANG. School of Software Engineering Tongji University Spring 2013

Iterative Process to Improve Simple Adaptive Subdivision Surfaces Method with Butterfly Scheme

On the Support of Recursive Subdivision

Moving Least Squares Multiresolution Surface Approximation

CS354 Computer Graphics Surface Representation IV. Qixing Huang March 7th 2018

FINAL REPORT. Tessellation, Fairing, Shape Design, and Trimming Techniques for Subdivision Surface based Modeling

13.472J/1.128J/2.158J/16.940J COMPUTATIONAL GEOMETRY

Taxonomy of interpolation. constraints on recursive subdivision. Ahmad H. Nasri 1, Malcolm A. Sabin 2. 1 Introduction

A subdivision scheme for hexahedral meshes

Introduction to Computational Manifolds and Applications

Geometric and Solid Modeling. Problems

Geodesic Paths on Triangular Meshes

On Smooth Bicubic Surfaces from Quad Meshes

Subdivision curves and surfaces. Brian Curless CSE 557 Fall 2015

Smooth Surface Reconstruction using Doo-Sabin Subdivision Surfaces

Fast Rendering of Subdivision Surfaces

G 2 Bezier Crust on Quad Subdivision Surfaces

Until now we have worked with flat entities such as lines and flat polygons. Fit well with graphics hardware Mathematically simple

Extension of half-edges for the representation of

A Sub-Atomic Subdivision Approach

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

An Interpolatory Subdivision for Volumetric Models over Simplicial Complexes

BICUBIC UNIFORM B-SPLINE SURFACE REFINEMENT

Automatic Mesh Generation from 3D Internal Sketch and Topological Constraints

Trimming for Subdivision Surfaces

An Adaptive Subdivision Method Based on Limit Surface Normal

Surfaces for CAGD. FSP Tutorial. FSP-Seminar, Graz, November

Regular Meshes. Abstract. 1 Introduction. JIANER CHEN Computer Science Department. ERGUN AKLEMAN Visualization Sciences Program. Texas A&M University

A Continuous 3-D Medial Shape Model with Branching

09 - Designing Surfaces. CSCI-GA Computer Graphics - Fall 16 - Daniele Panozzo

An Adaptive Subdivision Scheme On Composite Subdivision Meshes

Advanced Modeling 2. Katja Bühler, Andrej Varchola, Eduard Gröller. March 24, x(t) z(t)

Subdivision of Curves and Surfaces: An Overview

Mesh Repairing and Simplification. Gianpaolo Palma

Transcription:

Using Semi-Regular 8 Meshes for Subdivision Surfaces Luiz Velho IMPA Instituto de Matemática Pura e Aplicada Abstract. Semi-regular 8 meshes are refinable triangulated quadrangulations. They provide a powerful hierarchical structure for multiresolution applications. In this paper, we show how to decompose the Doo- Sabin and Catmull-Clark subdivision schemes using 8 refinement. The proposed technique makes it possible to use these classical subdivision surfaces with semi-regular 8 meshes. Additional Key Words and Phrases: subdivision schemes, four-directional grids, 8 refinement, Catmull- Clark, Doo-Sabin, Lifting. 1. INTRODUCTION Subdivision surfaces are becoming the standard representation for surface modeling in Computer Graphics. This framework models a continuous surface as the limit of repeated application of a subdivision scheme to a control polyhedron. The main reason for the popularity of subdivision surfaces is the fact that they bridge the gap between continuous and discrete models. This is the key for simple and efficient recursive algorithms, as well as, for hierarchical structures. Currently, there are three commonly used subdivision schemes [Catmull and Clark 1978; Doo and Sabin 1978; Loop 1987]. The Catmull-Clark and Doo-Sabin schemes are based on generalizations of quadrilateral tessellations, while the Loop scheme is based on triangular tessellations.

2 Using Semi-Regular 8 Meshes for Subdivision In this paper, we show how to implement Catmull-Clark and Doo-Sabin subdivision, using 8 meshes. The 8 mesh is a hierarchical structure for subdivision surfaces that has powerful capabilities [Velho and Gomes 2000]: ffl 8 meshes are refinable triangulated quadrangulations, thus they combine structural properties of triangle and quadrilateral meshes; ffl 8 meshes are based on [:8 2 ] tilings, and as a consequence, they possess a rich set of symmetries; ffl 8 meshes support uniform as well as non-uniform refinement, making possible the generation of adapted multiresolution tessellations; ffl Refinement of 8 meshes is composed of two binary subdivision steps, allowing for the factorization of subdivision schemes; ffl 8 meshes are constructed using bisections, which is simple to implement and produces gradual transitions of resolution; ffl 8 meshes can be used to implement both primal and dual refinement. In a separate work we introduced the notion of semi-regular 8 meshes and developed a new subdivision scheme for them [Velho 2000; Velho and Zorin 2000]. Here we decompose the Catmull-Clark and Doo-Sabin subdivision schemes into rules that are compatible with the underlying 8 mesh structure. Our motivation for developing such methods was to incorporate the power of 8 meshes into the above mentioned classical subdivision surfaces. 2. 8 MESHES The mesh structures traditionally used in conjunction with subdivision surfaces are derived from regular triangular or quadrilateral tilings [Schröder 1998]. In contrast, the 8 mesh is based on the Laves tilings of type [:8 2 ],whichisatriangulated quadrangulation. Thus, it combines the advantages of these two basic tilings (See [Grünbaum and Shephard 1987]). Figure 1 shows a regular 8 mesh. It has the structure of a four-directional grid, generated by the set of vectors, fe 1 ; e 2 ; e 1 + e 2 ;e 1 e 2 g, with e 1 = (1; 0) and e 2 =(0; 1). Fig. 1. 8 Mesh

L. Velho 3 The 8 mesh structure has many desirable properties, such as, refinability and rich symmetry. What distinguishes this mesh from other regular tilings is that it supports spatially-varying non-uniform multiresolution [Velho and Gomes 2000] The hierarchical 8 mesh has the structure of a triangulated restricted quadtree [Herzen and Barr 1987]. It incorporates an underlying mechanism that propagates refinement dependencies across different levels of the tessellation, Thus it ensures a gradual transition between resolutions. Figure 2 shows an example of this constrained resolution propagation. Fig. 2. Transition between resolution levels. The refinement of 8 meshes is composed of two binary subdivision steps. In the first step, the mesh is refined in the horizontal and vertical directions, while in the second step, the mesh is refined in the two diagonal directions. This process is illustrated in Figure 3. (a) step 1 (b) step 2 Fig. 3. The two steps of 8 mesh refinement One of the most remarkable features of the 8 mesh is that it produces, at the same time, both primal and dual refinement of its (triangulated) quadrilateral blocks. At odd subdivision levels, the process induces primal refinement, while at even subdivision levels dual refinement is obtained.

Using Semi-Regular 8 Meshes for Subdivision 2.1 Primal Refinement When the mesh is subdivided in the diagonal directions (even step j), a new vertex is inserted at the center of each quadrilateral block. When the mesh is subdivided in the horizontal and vertical directions (odd step j +1), new vertices are inserted at the midpoints of boundary edges of each quadrilateral block. After this cycle of two steps, the original quadrilateral block is subdivided into four sub-blocks. Figure shows the primal refinement cycle of a 8 mesh, and compares it with the normal primal refinement for quad meshes. Quad Mesh 8 Mesh level j 1 level j level j +1 Fig.. Primal 8 refinement cycle 2.2 Dual Refinement When the mesh is subdivided in the horizontal/vertical directions (odd step j +1), new vertices are inserted at the boundary edges of quadrilateral blocks, creating four subblocks. When the mesh is subdivided in the two diagonal directions, (even step j +2), new vertices are inserted at the centers of each sub-block. Every old quadrilateral block will have one new vertex at the center of each of its four quadrants. These four new vertices define a block of the dual mesh at the next level. The old vertices become inactive. Figure 5 shows the dual refinement cycle of a 8 mesh and compares it with dual refinement for quad meshes. In the dual refinement of quad meshes, old vertices are discarded. Note that, for 8 refinement, the old vertices are not discarded. They are kept, but don t influence the geometry of the mesh. This implies in a small space overhead. On the other hand, it gives extra flexibility in the construction of subdivision schemes.

L. Velho 5 Quad Mesh 8 Mesh level j level j +1 level j +2 Fig. 5. Dual 8 refinement cycle Also note that, the new dual mesh is only completely defined in the beginning of the next cycle, after insertion of horizontal/vertical edges. See Figure 6. Fig. 6. Completed dual 8 face block 3. THE CATMULL-CLARK SCHEME In this section, we briefly review the traditional Catmull-Clark subdivision scheme, which we call Quad Catmull-Clark subdivision, then we introduce the -8 decomposition of the scheme. 3.1 Quad Catmull-Clark Subdivision The Catmull-Clark subdivision scheme generalizes subdivision of bicubic tensor product B-splines. It produces surfaces that are C 2 everywhere, except at extraordinary vertices where they are C 1. This scheme uses primal refinement and it is composed of three rules: a face rule, applied to new vertices at the center of current faces; an edge rule, applied to new

6 Using Semi-Regular 8 Meshes for Subdivision vertices at edge midpoints of current faces; and a corner rule, for updating old vertices at the corners of current faces. The Quad Catmull-Clark subdivision rules for ordinary vertices (i.e. with valence =) are shown in Figure 7. 6 _3 32 _3 32 9_ 6 _3 32 _3 8 _3 8 6 _3 32 6 (a) face (b) corner (c) edge Fig. 7. Quad Catmull-Clark rules for ordinary vertices Extraordinary vertices (i.e. with valence 6= ) occur only at the corners of existing faces. Therefore, the rule for extraordinary vertices generalizes the corner rule. This is shown in Figure 8. The parameters, ff and fi have a range of allowable values. Catmull and Clark suggested, ff = 3 2n and fi = 1 n,wheren is the valence of the corner vertex. _β n 1 β γ _γ n Fig. 8. Quad Catmull-Clark rule for extraordinary vertices 3.2 8 Catmull-Clark Subdivision The basic principle for decomposing the Catmull-Clark subdivision scheme using 8 meshes is to distribute the rules at the appropriate steps of 8 refinement in order to exploit the structure of the mesh. A similar scheme was used by [Halstead et al. 1993] in the context of quadrilateral meshes. According to this principle, we apply the face and corner rules at even steps, and the edge rule at odd steps.

L. Velho 7 At even steps, we first compute the 8 face rule. After subdivision, new vertices at the center of each quadrilateral block are computed as the average of the four old vertices in their 1-neighborhood. See Figure 9(a). _1 2 _1 _1 _1 _1 (a) face (b) corner (c) edge Fig. 9. 8 Catmull-Clark rules for a valence vertex: face (a), corner (b) and edge (c). Next, we compute the 8 corner rule. Old vertices are updated using the information gathered in the computation of face rules. Note that, the star of every old vertex consists of an alternating sequence of new and old vertices. Moreover, at this stage, new vertices are the averages of their four immediate neighbors. We compute the new value of a corner vertex, a 0 0, by taking a linear combination of three types of vertices in the 1-neighborhood of the corner vertex, e.g. new vertices c i, old vertices b i and the corner vertex itself, a 0.Thereare2n vertices in the star of a 0, and thus, i =1;:::;n. Figure 10(a) shows the vertex labeling. b 8 b 7 b 1 c 1 c b 2 a 0 b 3 b 2 b 3 c 0 b0 d b 1 c 3 c 2 c 1 b 6 b 5 b b b 5 (a) (b) Fig. 10. Vertex Labels

8 Using Semi-Regular 8 Meshes for Subdivision The 8 corner rule is given by equation 1 a 0 0 = eff a 0 + e fi nx i=1 b 2i 1 + efl nx i=1 c i (1) The coefficients eff = (n 2) n,and e fi = efl = 1 n 2, take into account the fact that, as mentioned before, new vertices have been computed as c i = a 0 + b 2i 1 + b 2i + b 2i+1 : where indices are taken modulo 2n. Substituting the value of c i into equation 1, gives a 0 0 = n 2 a 0 + n 1 n 2 ψ n X i=1 b 2i 1 + nx i=1 a 0 + b 2i 1 + b 2i + b 2i+1 Since vertices b i with odd indices appear once in the first sum and twice in the second sum, they are weighted by a factor of 2. The vertices 3 b i with even indices appear only in the second sum and are weighted by a factor of 1.Vertex a 0 appears 1 n times in the second sum and is weighted by a factor of. It is easy to see that n this rule is exactly the Quad Catmull-Clark corner rule for, both, regular vertices of valence and extraordinary vertices of valence n. The associated mask for n =is shown in Figure 9(b). At odd steps, we compute the 8 edge rule. We adopt the same strategy used to compute the corner rule. The values of new vertices are obtained from values of their 1-neighbors. Note that, the star of a new vertex consists of exactly vertices: two of them, c 0 and c 1, correspond to the centers of quadrilateral blocks created in the previous subdivision step. Therefore, they are the averages of respective corner vertices. The two remaining vertices, b 0 and b 1 are corner vertices from two adjacent faces sharing the subdivided edge, for which the rule is being computed. Thus, b 0 and b 1,arealso accounted for in c 0 and c 1.Wehave! (2) c 0 = b 0 + b 1 + b 2 + b 3 ; (3) c 1 = b 0 + b 1 + b + b 5 ; () where b 2, b 3,andb, b 5, are respectively the opposite vertices of the two quadrilateral blocks sharing the edge b 0 b 1. Figure 10(b) shows the vertex labeling. Taking the linear combination of the neighbors gives the 8 edge rule for midpoint d Substituting (3) and () into (5) we get d = 1 (b 0 + b 1 + c 0 + c 1 ) : (5) d = 3 8 (b 0 + b 1 )+ 1 (b 2 + b 3 + b + b 5 ) (6)

L. Velho 9 which is exactly the Quad Catmull-Clark edge rule (shown in Figure 7(c)). Figure 9(c) shows the mask corresponding to the 8 edge rule. Note that the 8 edge rule is like a 8 face rule rotated by 5 degrees.. THE DOO-SABIN SCHEME In this section we briefly describe the traditional Doo-Sabin scheme which we call Quad Doo-Sabin subdivision, then we introduce the 8 decomposition for the scheme. The Doo-Sabin scheme is a generalization of subdivision for biquadratic tensor product B-splines. It produces C 1 continuous surfaces..1 Quad Doo-Sabin Subdivision The Quad Doo-Sabin subdivision scheme is based on dual refinement and it uses a single rule. For each n-sided face, new smaller n-sided faces are created by inserting new vertices in the interior of current faces and connecting these vertices across the edges of current faces. The Quad Doo-Sabin subdivision rule for an n-sided face is shown below. α n 2 α n 1 α 2 α 0 α 1 where the coefficients of the mask for an interior vertex are ff 0 = 1 + 5 n ff i = 3+2cos(2ßi=n) n This rule specializes for a quadrilateral face as 3_ (7) ; for i =1;:::n 1 (8) _1 9_ 3_

10 Using Semi-Regular 8 Meshes for Subdivision.2 8 Doo-Sabin Subdivision The principle to decompose the Doo-Sabin subdivision scheme is based on the observation that, in a 8 mesh, all dual blocks have a central vertex which is linked to each corner of the block. At even steps, the edges of these blocks are subdivided. Their midpoints, s i are computed as the averages of the two corners, a i and a i+1, linked by a new edge, a i a i+1. At odd steps, the vertices of new blocks are created. Every such new vertex, a 0, 0 has four neighbors. One, c is the center of the dual block, other, a 0 is the old vertex corresponding to the new vertex a 0 0. The remaining two vertices, s 1 and s n 1,arethe midpoints of adjacent edges incident in a 0. Figure 11 shows the face, with the labels of all vertices. a n 2 S n 2 a n 1 C a 2 S n 1 a 0 a 0 S 0 a 1 S 1 Fig. 11. Decomposed 8 Doo-Sabin mask. The decomposed 8 subdivision rule uses the old vertex a 0, and the midpoints, fs i g i=1;:::n, of the edges of the dual block. These midpoints are accessed through the center vertex c, since they are all in the star of c. From a 0 and s i, i =0;:::;n 1, wegetthevaluesofa i, i =1;:::;n 1, by successive elimination of the unknowns a i. Since s i = ai+ai+1 2,thevalueofa i+1 is a i+1 =2s i a i (9) Once that is done, we simply apply the Doo-Sabin rule using (7) and (8) X a 0 0 = n 1 i=0 ff i a i (10)

L. Velho 11 We remark that the above method is general, and allows the computation of other dual subdivision schemes, such as the C 1 four directional box spline [Peters and Reif 1997]. 5. EXAMPLES AND REMARKS In this section, we present some examples of surfaces generated using the decomposed subdivision schemes developed in the previous sections. The example in Figure 12 is a surface of genus 0. The control polyhedron is an extruded pentagon. Figure 12(a) shows the polygonal surface generated after 3 steps of Catmull-Clark subdivision. Figure 12(b) shows the corresponding surface produced by the Doo-Sabin scheme. (a) Catmull-Clark (b) Doo-Sabin Fig. 12. Genus 0 Surface The example in Figure 13 is the Stanford Bunny. The control polyhedron was obtained from the original data set using simplification. Figure 13(a) shows the polygonal surface generated after 3 steps of Catmull-Clark subdivision. Figure 13(b) shows the corresponding surface produced by the Doo-Sabin scheme. Note that our implementation of the Doo-Sabin scheme does not include a rule for boundary edges. This is apparent in the bottom of Figure 13(b). In this paper we didn t address boundary rules for the two subdivision schemes. We note that, in this case, decomposition is not necessary, because the masks perform averages along the boundary curves. Therefore, these rules can be implemented in the same way as in the Catmull-Clark and Doo-Sabin schemes. As a concluding remark, we would like to point out that the principles presented in this paper can be employed to decompose other 1-ring subdivision schemes in the context of semi-regular 8 meshes.

12 Using Semi-Regular 8 Meshes for Subdivision (a) Catmull-Clark (b) Doo-Sabin Fig. 13. Stanford Bunny ACKNOWLEDGMENTS The author is partially supported by research grants from the Brazilian Council for Scientific and Technological Development (CNPq) and Rio de Janeiro Research Foundation (FAPERJ). REFERENCES CATMULL,E.AND CLARK, J. 1978. Recursively generated B-spline surfaces on arbitrary topological meshes. Comput. Aided Design 10, 350 365. DOO,D.AND SABIN, M. 1978. Behaviour of recursive division surfaces near extraordinary points. Comput. Aided Design 10, 356 360. GRÜNBAUM,B.AND SHEPHARD, G. 1987. Tilings and Patterns. W. H. Freeman. HALSTEAD, M., KASS, M., AND DEROSE, T. 1993. Efficient, fair interpolation using Catmull- Clark surfaces. In Computer Graphics (SIGGRAPH 93 Proceedings), Volume 27 (1993), pp. 35. HERZEN, B. V. AND BARR, A. H. July 1987. Accurate triangulations of deformed, intersecting surfaces. Computer Graphics (Proceedings of SIGGRAPH 87) 21,, 103 110. Held in Anaheim, California. LOOP, C. 1987. Smooth subdivision for surfaces based on triangles. Master s thesis, University of Utah. PETERS, J. AND REIF, U. 1997. The simplest subdivision scheme for smoothing polyhedra. ACM Transactions on Graphics, (Oct.), 20 31. SCHRÖDER, P. 1998. Subdivision for modeling and animation. Course notes of Siggraph 98. ACM SIGGRAPH. VELHO, L. 2000. Semi-regular 8 refinement and box spline surfaces. In Sibgrapi 2000 Conference Proceedings (2000). IEEE Press. VELHO, L. AND GOMES, J. 2000. Hierarchical k meshes: Concepts and Applications. Computer Graphics Forum. VELHO,L.AND ZORIN, D. 2000. 8 subdivision. (submitted for publication).