Refinement Operators for Triangle Meshes Marc Alexa Technische Universit¨ at Darmstadt, Interactive-Graphics Systems Group, Rundeturmstr. 6, 64283 Darmstadt, Germany
Abstract Refinement operators for triangular meshes as used in subdivision schemes or remeshing are discussed. A numbering scheme is presented, covering all refinement operators that (topologically) map vertices √ onto vertices. Using this characterization, some special properties of n-adic and 3-subdivision are easy to see. Key words: Mesh, Refinement, Subdivision
1
Introduction
Subdivision schemes have become a popular tool for the generation of smooth surfaces. Starting with a coarse control mesh of arbitrary topology the mesh is refined recursively. Subdivision can be seen as a two step procedure. First, the mesh topology is changed using a refinement operator, i.e. additional vertices and edges are inserted. Then, the mesh is smoothed, i.e. a geometry is attached to the vertices. Since convergence and surface properties mainly depend on the smoothing rules a lot of effort has been devoted to their design and analysis [1,7–9]. Refinement operators are also used in the context of remeshing (e.g. [4]). Here, a regular connectivity mesh is generated bottom up by refining a coarse control mesh using the geometry given by a fine irregular mesh (or some other geometric structure). Until recently, subdivision and remeshing √ of triangles has almost exclusively used the 1-to-4 split [5,1]. Kobbelt’s 3 subdivision refines triangles by inserting a new vertex in the centroid of each triangle and then flip edges to generate a regular triangulation [2]. Email address:
[email protected] (Marc Alexa).
Preprint submitted to CAGD - Short Communication
29 October 2001
Naturally, it is tempting to search for other refinement operations and analyze their behavior. This work characterizes all refinement operators for triangle meshes using a simple scheme. This characterization leads to a new view on the currently used refinement rules and opens the possibilty to describe and evaluate refinement schemes more generally.
2
Representation
A refinement scheme starts with an intial control mesh M0 and generates a sequence of refined meshes M1 , . . . , Mk . The basic idea of this work is to look at the coarser mesh from the viewpoint of the refined mesh, i.e. how Mi depends on Mi+1 . Assume a regular triangulation Mk resulting from a refinement scheme is represented by its set of vertices. Define one vertex, which is also part of the vertex set of Mk−1 , to be the origin of a coordinate system. The basis of the coordinate system is defined by two edges of one triangle incident upon the origin. Using this coordinate system we look at the triangle edges in Mk−1 . At least one edge in Mk−1 connects (0, 0) and (m, n), m, n ≥ 0. We use (m, n) (which maps to (1, 0) in Mk ) as the represention for the refinement operator that was used to produce Mk . For example, √ n-adic splits are represented by (n, 0). The refinement operator used in 3-subdivision is (1, 1) (see Figure 1). Using this definition, the coordinate transform induced by the inverse refinement operation can be written in matrix form as
m −n −1 Sm,n = , n m+n
which immediately defines the forward transform Sm.n with eigenvalues √ 2m + n ± i 3n . λ(Sm,n ) = 2(m2 + mn + n2 )
(1)
(2)
We will denote the repeated application of the refinement operator as a product, e.g. p-times applying (m, n) will be denoted (m, n)p and the associated p coordinate transform is given by Sm,n .
3
Rotation & Symmetry
The triangles produced by n-adic splits (n, 0) are aligned with the triangles from other refinement levels. As was noted by Kobbelt, the operator (1, 1) 2
Fig. 1. Refinement operators are represented by the endpoint of the base edge projected to (1,0). Accordingly, the dyadic split is called (2,0) and the refinement op√ erator associated to 3 subdivision is (1,1). A possible new refinement operator would be (2,1).
√ associated with 3-subdivision rotates the triangular grid against the original triangulation. However, after a second application of (1, 1) the triangles are aligned again (in fact, they are rotated by 60 degrees). More generally, it is easy to verify that two times applying (n, n) is equal to a 3n2 -adic split by looking at the representation matrices. This leads naturally to the more general question regarding the rotational behavior of (n, m): Which (n, m)p will align the triangulation of Mk with Mk+p ? The rotational component of the refinement operator is reflected by the argument of λ(Sn,m ). An alignment p of Mk and Mk+p means that λ(Sn,m ) is real. The following theorem states √ that only the currently used refinement operators (n-adic and 3) have this aligment property. All others never align meshes from different refinement levels. Theorem 1 The only non-trivial (non-zero rotational component) solution to p λ(Sm,n ), n, m, p ∈ Z+ being real is m = n, p ≡ (0 mod 12). p Proof. Necessary for λ(Sm,n ) ∈ R is that the argument of λ(Sm,n ) is an 2π integer multiple of p . Using (2) this leads to
√ tan 2π 2π 3n tan = =⇒ √ p ∈ Q =⇒ p 2m + n 3
2
tan 2π sin2 2π 1 − cos2 2π 4π p p √ p = ∈Q ∈ Q =⇒ cos 2π = 2π 2 2 p 3 cos p 3 cos p 3 For the non-trivial solutions (m, n 6= 0) it is sufficient to inspect cos 4π only for p 4π π 0 < p < 2 . However, in this interval cos rπ, r ∈ Q is rational only for rπ = π3 (see [6]). This leads to p = 12, which corresponds to the refinement operators (n, n) where the triangulation has to be rotated 12 times by 30 degrees. 2
3
4
Conclusion
This work presents a simple scheme to repesent and generate all refinement operators for triangle meshes. All operators might be implemented by first inserting new vertices, triangulating the interior of original triangles, and then flipping edges until a regular triangulation has been reached [3]. Note that the order of edge flips is explicitly given by the circular ordering of edges around vertices after vertex insertion. The representation immediately leads to several further conclusions: • The n-adic splits are the only operators that do not introduce rotation. √ • The 3 operator refines slowest. It has the shortest possible base edge of all refinement operators. • There are a variety of other refinement operators, which could lead to interesting new subdivision schemes (e.g., see Figure 1). Acknowledgements: Thanks to Leif Kobbelt and Malcolm Sabin for very fruitful and encouraging discussions on the subject.
References
[1] N. Dyn, J. Gregory, D. Levin. A Butterfly Subdivision Scheme for Surface Interpolation with Tension Control. ACM Trans. Graph. 9, pp. 160–169, 1990 √ [2] L. Kobbelt, 3-Subdivision. Proceedings of SIGGRAPH 2000, pp. 103–112, 2000 [3] C.L. Lawson. Transforming Triangulations. Discrete Math., 3, pp. 365–372, 1972 [4] A.W.F. Lee, W. Sweldens, P. Schr¨oder, L. Corsar, D. Dobkin. MAPS: Multiresolution Adaptive Parameterization of Surfaces. Proceedings of SIGGRAPH 1998, pp. 95–104, 1998 [5] C. Loop. Smooth subdivision surfaces based on triangles. Masters Thesis, Utah University, 1987 [6] I. M. Niven. Irrational Numbers. New York, Wiley, 1956. [7] H. Prautzsch. Smoothness of subdivision surfaces at extraordinary points. Adv. Comp. Math. 14, pp. 377–390, 1998 [8] U. Reif. A unified approach to subdivision algorithms near extraordinary points. CAGD 12, pp. 153–174, 1995 [9] D. Zorin. C k Continuity of Subdivision Surfaces. Thesis, California Institute of Technology, 1997
4