24
Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun Akleman a , Jianer Chen b , Jonathan L. Gross c a Departments of Visualization & Computer Science and Engineering, Texas A&M University b Department of Computer Science and Engineering, Texas A&M University c Department of Computer Science, Columbia University Abstract We present a unifying framework to represent all topologically distinct shapes in 3D, from solids to surfaces and curves. This framework can be used to build a universal and modular system for the visualization, design, and con- struction of shapes, amenable to a broad range of science, engineering, architecture, and design applications. Our unifying framework uses 3-space immersions of higher-dimensional-manifolds, which facilitate our goal of topologi- cal robustness. We demonstrate that a specific type of orientable 2-manifold mesh, which we call a CMM-pattern coverable mesh, can be used to represent structures in higher-dimensional manifolds, which we call block meshes. Moreover, the framework includes a set of operations that can preserve CMM-pattern coverability. In this sense, CMM-pattern- coverable meshes provide an algebraization of shape processing that (1) supports a generalized mesh representation for blocks that may not necessarily be solids, and (2) requires a minimal set of operations that transform CMM- pattern-coverable meshes to CMM-pattern-coverable meshes. Keywords: Shape modeling, 3-manifolds, immersions, 3D-thickenings, shape algebra 1. Introduction and Motivation Higher-dimensional manifolds provide a setting in which topologically robust methods can manipulate lower-dimensional shapes without changing their na- ture. For instance, small geometric perturbations of the plane could unknot a projection of a knotted curve rep- resented by a projection of a closed polygon [77, 84]. On the other hand, if that same curve is represented as knotted in 3D, the geometric perturbations of 3-space that we allow would not change the knot type, which means the topology of the configuration [4]. The name CMM pattern refers to one of the 17 classical wallpaper designs [91]. It specifies a crystallographic pattern, rather than the initials of an originator. By topo- logically robust we mean that changes in geometry such as changing the positions of vertices do not change the topological structure of the shape. Our framework is based on non-cellular decomposi- tions that are formed from atomic objects called ver- tices, edges, faces, chambers, and blocks. This frame- work requires specifying whether given vertices, edges and faces are used for locally representing 2-space or 3-space. Accordingly, we add a prefix; for instance, we write 3-vertex or 2-vertex, rather than just “vertex”. Otherwise, the meanings of vertex, edge, and face are as usual. Blocks and chambers are key concepts. A block is topologically a connected set in which every point has a neighborhood homeomorphic to 3-space (i.e., Eu- clidean 3-space). Significantly, a block need not be “globally” homeomorphic to 3-space. Indeed, blocks can be generalized versions of solids that are not re- alizable in 3-space without self-intersections. We call such a block non-realizable. We exclude only those blocks whose boundaries cannot be represented by the orientable 2-manifold meshes that we call chambers. We demonstrate here that these meshes of blocks, i.e. block meshes, can be used for robust modeling of 3D- shapes. We present a theoretical framework with (1) Preprint submitted to Computers & Graphics September 30, 2014

Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

  • Upload
    others

  • View
    5

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

Block Meshes:Topologically Robust Shape Modelingwith Graphs Embedded on 3-Manifolds

Ergun Aklemana, Jianer Chenb, Jonathan L. Grossc

aDepartments of Visualization & Computer Science and Engineering, Texas A&M UniversitybDepartment of Computer Science and Engineering, Texas A&M University

cDepartment of Computer Science, Columbia University

Abstract

We present a unifying framework to represent all topologically distinct shapes in 3D, from solids to surfaces andcurves. This framework can be used to build a universal and modular system for the visualization, design, and con-struction of shapes, amenable to a broad range of science, engineering, architecture, and design applications. Ourunifying framework uses 3-space immersions of higher-dimensional-manifolds, which facilitate our goal of topologi-cal robustness.

We demonstrate that a specific type of orientable 2-manifold mesh, which we call a CMM-pattern coverable mesh,can be used to represent structures in higher-dimensional manifolds, which we call block meshes. Moreover, theframework includes a set of operations that can preserve CMM-pattern coverability. In this sense, CMM-pattern-coverable meshes provide an algebraization of shape processing that (1) supports a generalized mesh representationfor blocks that may not necessarily be solids, and (2) requires a minimal set of operations that transform CMM-pattern-coverable meshes to CMM-pattern-coverable meshes.

Keywords: Shape modeling, 3-manifolds, immersions, 3D-thickenings, shape algebra

1. Introduction and Motivation

Higher-dimensional manifolds provide a setting inwhich topologically robust methods can manipulatelower-dimensional shapes without changing their na-ture. For instance, small geometric perturbations of theplane could unknot a projection of a knotted curve rep-resented by a projection of a closed polygon [77, 84].On the other hand, if that same curve is represented asknotted in 3D, the geometric perturbations of 3-spacethat we allow would not change the knot type, whichmeans the topology of the configuration [4].

The name CMM pattern refers to one of the 17 classicalwallpaper designs [91]. It specifies a crystallographicpattern, rather than the initials of an originator. By topo-logically robust we mean that changes in geometry suchas changing the positions of vertices do not change thetopological structure of the shape.

Our framework is based on non-cellular decomposi-tions that are formed from atomic objects called ver-

tices, edges, faces, chambers, and blocks. This frame-work requires specifying whether given vertices, edgesand faces are used for locally representing 2-space or3-space. Accordingly, we add a prefix; for instance,we write 3-vertex or 2-vertex, rather than just “vertex”.Otherwise, the meanings of vertex, edge, and face areas usual.

Blocks and chambers are key concepts. A block istopologically a connected set in which every point hasa neighborhood homeomorphic to 3-space (i.e., Eu-clidean 3-space). Significantly, a block need not be“globally” homeomorphic to 3-space. Indeed, blockscan be generalized versions of solids that are not re-alizable in 3-space without self-intersections. We callsuch a block non-realizable. We exclude only thoseblocks whose boundaries cannot be represented by theorientable 2-manifold meshes that we call chambers.

We demonstrate here that these meshes of blocks, i.e.block meshes, can be used for robust modeling of 3D-shapes. We present a theoretical framework with (1)

Preprint submitted to Computers & Graphics September 30, 2014

Page 2: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

a generalized representation of 2-manifold meshes and(2) a minimal set of topological operations to “surgi-cally” transform 3-manifolds into 3-manifolds. Basedon this theoretical framework, it is possible to imple-ment a minimal kernel on which to build more compli-cated systems modularly. The minimal set of operationscan greatly simplify the software development and en-courage people to add new tools while taking advantageof the powerful underlying structure.

Allowing such general blocks during the modeling pro-cess lets us algebraize the model, which can lead tosimpler and more powerful shape modeling algorithms.Having such a shape algebra is essential to developingsystems that can grow quickly from a simple kernel intoan advanced modeling system. Because of the robust-ness and the simplicity coming from such an algebra,software designers with minimal instruction can makethe system grow. They can easily add high-level opera-tions that are created as composites of a minimal set ofprimitive operators.

Our approach here is reminiscent of the historical exam-ple of finding roots of cubic equations [99]. By allowingsquare roots of negative numbers, Tartaglia was able tosolve certain kinds of otherwise unsolvable cubic equa-tions [51]. That Cardano called complex numbers “fic-titious” was not a problem, since a cubic equation withreal coefficients always has at least one real root.

Analogously, our present goal is to create solid shapes in3-space, yet we can let our algorithms manipulate non-realizable shapes along the way. For instance, one-sided3-faces can be naturally created from Mobius strip cutsin sculptural practice, as shown in Figure 1. In the ro-bust representation of knots and links, it is essential toallow such non-realizable structures to have robust rep-resentations [4]. Our orientable chambers are capableof representing the one-sided non-orientable boundariesshown in Figure 1 (see Section 2).

In fact, we are currently using such a shape algebrafor 2-manifold modeling. 2D Graph rotation systems(2D-GRS) that represent all possible 2-manifold mesheshave been implicitly used in the guise of various meshdata structures, such as half-edges [74], quad-edges[50], winged-edges [19], doubly-connected edge lists(DCEL) [86] and doubly-linked face lists (DLFL) [1].2D-GRS with topology preserving operators such asSplice and Twist [50], or Euler operators [74] or In-sertEdge, CreateVertex and Twist [3] provide shapealgebras for 2-manifolds.

Unfortunately, the power of such shape algebras is lim-

(a) Two pieces (b) One piece

Figure 1: Two toroidal Ushio sculptures, each created by a “physical”cut operation. In (a) the cut is 2-sided; in (b) the cut is a Mobius-striptype cut, i.e., a 1-sided surface [43]. Note that this 1-sided cut doesnot separate the block into two parts.

ited by their underlying topological structure, namelythe restriction to 2-manifolds. Programmers commonlyinclude some exceptions on 2-manifolds and provideoperations that can create non-manifolds or solids insoftware applications. Such exceptions and operationssolve immediate practical concerns, yet they make itharder to extend software without professional helpand/or laborious effort. Therefore, we propose a newframework to develop a more powerful shape algebra.

2. Previous Work

As is well-known, manifolds can be studied and rep-resented through decompositions provided by CW-complexes (CW stands for closure-finite, weak topol-ogy), which are synthesized from basic building blockscalled cells. An n-cell is a topological space that ishomeomorphic to an n-dimensional closed ball. Wesay that a CW-complex is an n-complex if n is thelargest dimension of any of its cells. If every point ofan n-complex has a neighborhood homeomorphic to ann-dimensional open ball, we call it an n-manifold. Ifevery point of an n-dimensional complex has a neigh-borhood homeomorphic either to an n-dimensional openball or to an n-dimensional “half” ball, we call it an n-manifold-with-boundary.

Many low-dimensional cases are widely familiar. Forinstance, a vertex is a 0-cell, and an edge is a 1-cell. Acurve segment is a 1-manifold with boundary. A closedcycle of curve segments is a 1-manifold. A 1-manifoldis sometimes represented (discretely approximated) bya cyclically ordered list of vertices. A graph is a 1-complex, but not a 1-manifold if any vertex has degreehigher than 2. With higher-dimensional manifolds, rep-resentations start to get increasingly complicated.

2

Page 3: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

One approach to simplifying the representations ofhigher-dimensional complexes is to use the simplestkind of n-cells, namely the n-simplexes. A CW-complexes whose cells are simplexes (and that also sat-isfy a few other rules) are called simplicial complexes.Simplexes have several attractive properties. For in-stance, an n-simplex always has n + 1 vertices; e.g.,a 2-simplex is a triangle, and a 3-simplex is a tetrahe-dron. Moreover, an n-simplex in a Euclidean space canalways be represented by an n-dimensional barycentriclinear equation described by its vertex positions. More-over, the regularity of simplicial complexes also pro-vides opportunities for creating data structures with ef-ficient space complexity. These properties make themvery attractive for geometric processing [23]. Accord-ingly, triangular meshes are one of the most popularrepresentations for 2-manifolds [26]. Moreover, datastructures based on tetrahedral decomposition (or tetra-hedral meshes) are specifically used for the simplifi-cation and acceleration of common queries and op-erators that are needed to support applications (see[98, 82, 34, 29, 61, 52] as examples). There also ex-ist data structures to represent n-dimensional simpli-cial complexes, such as Brisson’s “cell-tuples” [24],Lienhardt’s “n-generalized maps” [69, 70], Rossignacand O’Connor’s “selective geometric complexes” [89],Paoluzzi’s model [83], and De Floriani and Hui’s “non-manifold indexed with adjacencies” [35]. A detaileddiscussion of data structures for simplicial complexescan be found in [36] and [64].

Despite their significant advantages for geometry pro-cessing [23], we think that simplicial complexes are un-natural and cumbersome for shape modeling applica-tions. For instance, a cube, which can uniquely andnaturally be represented by 6 quadrilaterals, is repre-sented by 12 triangles in 26 different ways since eachquadrilateral can be triangulated in two different ways.Moreover, triangular meshes allow only a very restric-tive set of operations. For instance, it is not possibleto use the insert-edge operation in a wholly simplicialmodel, since inserting an edge can combine two trian-gles into one octagon, while increasing the genus of the2-manifold surface. Moreover, the dual operation can-not be used in a wholly simplicial model, since the dualof a simplicial complex may be non-simplicial, e.g.,the dual of a random triangle mesh consists mostly ofhexagons. Higher-dimensional simplicial cells are evenmore problematic. For instance, tetrahedra, unlike tri-angles, are not space-filling shapes and they cannot pro-vide a regular subdivision of 3-space [105, 97].

An alternative to simplicial cells for geometric process-

ing is hypercubes. An n-dimensional hypercube al-ways has 2n vertices, and, like a simplex, it can alwaysbe represented in Euclidean space by its vertex posi-tions. Moreover, hypercubes are always space-fillingstructures that can be subdivided regularly into finerhypercubes. Even the simplest hypercubes, quadrilat-erals, are becoming more popular in geometric pro-cessing. Recently, a number of significant papers haveappeared for converting surfaces to quad-meshes (see[38, 65, 22, 107] as examples). However, For generalapplications, even hypercubes can be restrictive. In fact,centroidal Voronoi tessellations [68, 71] require hexahe-dral and more general polyhedral meshes.

For restriction-free modeling of shapes, it is alwaysbetter to allow arbitrary decompositions, even in mod-eling with surfaces [59, 58]. In fact, most popularpolygonal mesh data structures, such as half-edges [74],quad-edges [50], winged-edges [19, 20, 102], doubly-connected edge lists (DCEL) [86], and doubly-linkedface lists (DLFL) [1], support general cells and gen-eral modeling operations for orientable 2-manifolds. Inthese general representations, the edges and faces canbe curved. Non-orientable surfaces can be supported byallowing edge-twists [46, 50, 2].

Figure 2: A Non-cellular face is adisconnected set of polygons. (a)A cellular face – a 10-sided poly-gon. (b) A non-cellular face – asquare with a square hole.

It is also interesting tonote that the originalhalf-edge structure pro-posed by Mantyla is evenmore general [74] and itsupports non-cellular de-composition of surfacesby including non-cellularfaces, which are “poly-gons with holes”. Thesenon-cellular faces consist of a disconnected set ofpolygons (see Figure 2 for an example). Havingnon-cellular faces can even be advantageous for somepractical surface modeling applications. For instance,Havemann particularly chose to use non-cellular facesfor modeling Gothic-windows [55, 56].

Supporting non-cellular decompositions is even moreimportant in solid modeling, since connected solidscan be non-cellular, and non-cellular structures are un-avoidable. Thus, for really restriction-free modelingof solids, we propose that beyond using 3-manifoldsas the underlying mathematical structure, we providethe capacity for non-cellular decompositions. Thisis a significant departure from approaches that offeronly cellular decompositions. It greatly extends thepower provided by both 2-manifold representations and

3

Page 4: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

on cellular-decomposition-based 3-manifold represen-tations. Moreover, including non-cellular decomposi-tions provides new power to the designers. For instance,a cut always separates a 3-ball into two 3-balls. On theother hand, cutting a toroidal block may or may not sep-arate the toroidal block into two, as shown in Figure 1.This toroidal cut operation has been introduced to theart world by sculptor Keizo Ushio; it has been analyzedand formally explained by Sequin and Friedman [43].

Having non-cellular decompositions is not really a ma-jor hurdle for geometry processing applications. Theycan always be converted into CW- or simplicial com-plexes. There has been a great deal of research forrepresenting solid shapes using structures that are be-yond surfaces. The most frequent usage of such meshrepresentations is for polyhedral meshes. Among poly-hedral meshes, the most common ones are tetrahedralrepresentations [37, 25, 72, 104]. Dobkin and Laszlo’s“facet-edge” structure [37] is an extension of the “quad-edge” data structure [50], and Lopes and Tavares’s“handle-face” structure [72] is an extension of the “half-edge” data structure [74]. On the other hand, therehas not been as much investigation into representinggeneral decompositions as we have proposed. The no-table extensions are Weiler’s “radial-edge” [103], whichis used for representation of non-manifold shapes withnon-regularized 2-complexes, and Masuda’s extensionof Euler operations for non-manifold shapes [75, 76].However, radial edge representation and Masuda’s op-erations are limited to 2-complexes and non-manifolds,with which it is hard to develop a shape algebra. Instead,our approach extends existing work to a framework withwhich any strong 2-manifold mesh data structure canbe used to represent and manipulate general decom-positions with a shape algebra. Therefore, our frame-work can be implemented using existing data structures.Since we have a shape algebra with associated opera-tors, the users can never create a topologically invalidstructure.

An additional advantage of our shape algebra is that itallows nested sets of ever more complicated algebras.Therefore, the same underlying model and operationscan be used to represent and manipulate curves, surfacesand solids. For instance, if we start with an orientable2-manifold mesh and apply only certain orientation-preserving operations, then we can obtain nothing butrepresentations of orientable 2-manifold meshes. Thus,this particular set provides an algebra over orientable 2-manifolds. If we additionally include a twist operator,then we can also obtain non-orientable surfaces. Thus,adding a twist operator yields a more powerful algebra

that includes non-orientable objects. This is analogousto the hierarchy structure among real algebras, com-plex algebras, and quaternion algebras. In other words,the new model provides a strong representational powerwhile using existing infrastructure in 2-manifold meshmodeling without causing a significant increase in com-putational expense.

3. 3D-GRS with 3D-Thickenings

Fields Medalist William P. Thurston [100] has written:“People have very powerful facilities for taking in in-formation visually or kinesthetically, and thinking withtheir spatial sense. On the other hand, they do nothave a very built-in facility for inverse vision, that is,turning an internal spatial understanding into a two-dimensional image. Consequently, mathematicians usu-ally have fewer and poorer figures in their papers andbooks than in their heads.”

One solution mathematicians have used for this “inversevision problem” of Thurston is combinatorialization. Ifone can’t draw various manifolds, one can at least givea finite set of elementary pieces and rules for assem-bling those pieces. This began in the 1920s and led tothe blooming of algebraic topology in the middle of the20th century. The trouble is that the resulting combi-natorial structures retain the usual problems of all com-binatorial structures: they may be easy to list as datastructures, but they behave nonetheless in ways that arefar more complicated than one would expect.

An interesting example of combinatorialization is thatof graph embeddings in surfaces. Graph embeddings onhigher-genus surfaces may be difficult to draw, or evento picture, but they are easy to describe by graph ro-tation systems [46]. Some questions, like embeddabil-ity in the plane, have quite complete answers (such asKuratowski’s theorem). On the other hand, the analo-gous combinatorial structure for describing embeddingsof graphs in 3-manifolds yet behaves in ways that are farmore complicated than one might ever expect. Giventhese facts, we remark that we are not intended herein analyzing or characterizing graphs embeddings in 3-manifolds. Rather, we are seeking a powerful and easy-to-use model that is based on graphs embedded in cer-tain restricted class of 3-manifolds for designing shapesusing meshes of blocks.

To represent Block Meshes, we employ graphs embed-ded into 3-manifolds. Our method is based on the con-cept of 3D-thickening. We introduce 3D-thickening as

4

Page 5: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

Figure 3: A visual description of 2D- and 3D-Thickenings. In the last frame (I) the graph with one vertex and three self-loop is 3D-thickenedinto an orientable genus-3 mesh. Note that the structure of this mesh is not arbitrary. Every face of the mesh is a quadrilateral. Moreover eachquadrilateral has two pairs of opposite edges, green and purple. Using our methods, we identified that this particular structure has 4 faces and 2chambers.

5

Page 6: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

an extension of 2D-thickening in topological graph the-ory that can be regarded as a physical implementationof the graph rotation systems [47]. A graph G can havea number of natural 3D-thickenings. Figure 3 illustratesa principal difference between 2D- and 3D-thickening.In a 2D-thickening, each vertex thickens to a disk or apolygon, and each edge thickens to a quadrilateral bandembeddable in a 2-manifold [46]. Similarly, the 3D-thickening operation turns lower-dimensional structuresinto blocks that can also be represented by 2-manifoldmeshes. In a 3D-thickening, each 3-vertex thickens toa block whose boundary can be represented by an ori-entable 2-manifold, and each 3-edge thickens to a blockthat can be represented by a prism.

3D-thickening is just a conceptual idea. In particular,a 3D-vertex is still regarded as a point, and a 3D-edgeis still regarded as a curve or a curve segment. Withconceptual 3D-thickening of a graph, it is possible todescribe the combinatorial structures around the graph.Further procedures operating on 3D-thickened graphswill enable us to construct special 3-manifolds in whichthe graphs are embedded. The graphs embedded in such3-manifolds will be called 3-graphs. To analyze combi-natorial structures that can be provided by 3-graphs, wefirst consider graphs embedded in 2-manifolds, whichwe call 2-graphs.

3.1. Analogy with 2-Graphs and their 2-Thickenings

As discussed in Section 2, combinatorial structuresaround a 2-graph are used to represent graph embed-dings in 2-manifold surfaces. The combinatorial struc-tures can be uniquely described by 2-thickening thegraph. This structure is not arbitrary. Every m-valentvertex is 2D-thickened into an m-sided polygon and ev-ery edge is 2D-thickened into a quadrilateral, as shownin Figure 3(2D). As shown in the figure, edges that turninto quadrilaterals work like handles that connect thesides of the polygons obtained by 2-thickened vertices.We call the structure of handle connections a “configu-ration of handles”. In the 2-manifold case, handle con-figurations can be provided simply by a cyclicly orderedlist of edge-ends, which determines how the sides ofpolygons (thickened 2-vertices) are connected to eachother. the name “Graph Rotation System (GRS))” ac-tually implies this “cyclic ordering” that is added to agraph description to provide handle configurations [46].

It is possible to identify all possible handle connections.For instance, the graph shown in Figure 4(a) (the graphwith one vertex and two self-loops) has only two possi-

(a) A graph (b) Embedding 1 (c) Embedding 2

Figure 4: 2D thickenings of all 2-manifold embeddings of a simplegraph. (a) is embedded on a genus-0 surface and (b) is embedded agenus-1 surface.

ble handle configurations. Since the valence of the ver-tex is 4, the vertex 2D-thickens into a quadrilateral. Forcreating handle connections, we have only two possibleconfigurations: either we can connect opposing edgesor we can connect neigboring edges as shown in Fig-ure 4(b) and (c). In these two examples “white” regionsare “insides” of the faces. By assuming that their bound-ary completely describes the faces, we can observe thatthese two types of handle configurations correspond totwo types of surfaces, namely genus-0 and genus-1. Ac-cordingly, the particular graph in Figure 4 is capable ofrepresenting only genus-0 and genus-1 surfaces. Whenthe graphs are more complicated, they provide a muchlarger number of combinatorial possibilities.

From the perspective of surface modeling, difficulty ofenumeration or classification of all possible handle con-figurations of a graph has never been an issue, since wedo not care about the graph embedding problem. In-stead, we are interested in the inverse problem: “From agraph embedded in a surface, can we reconstruct all ver-tices, edges and faces?” This inverse problem is reallyeasy, and in fact, all 2-manifold mesh data structureswere (implicitly or explicitly) developed to represent thepossible 2D-thickened structures of 2-graphs and to ef-ficiently reconstruct vertices, edges, and faces from thatrepresentation. For instance, the quad-edge data struc-ture uses the fact that each edge of a 2-graph 2-thickensinto a quadrilateral (See Figure 3(2D)). The neigh-borhood relationships of those quadrilaterals providecomplete combinatorial structures around any given 2-graph, which in turn define the underlying manifold sur-face and are used to construct vertices and faces.

Our goal in this paper is exactly a generalization ofthis line of thinking. Thus, we investigate what kindof structures emerge from graphs embedded in 3-manifolds. We identify the properties of emergent struc-tures and call them CMM-pattern coverable meshes.Then, we show how to reconstruct vertices, edges, facesand chambers from any given CMM-pattern coverablemesh. As it will be shown later, this reconstruction turns

6

Page 7: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

out to be simple.

3.2. Structure Emerges From 3-Manifold Embeddingsof Graphs

In this section, we approach the problem of graph em-beddings into 3-manifolds like a topological graph the-orist, and we investigate the kinds of structures that canemerge from such embeddings. To analyze these struc-tures we use 3D-thickenings of 3-graphs, since theyprovide nice visualization. In later sections, we showhow 3D-thickened 3-graphs induce embeddings of thegraphs into 3-manifolds.

Simple examples of emergent structures are shown inFigures 3(I) and 5. The structures of 3D-thickened 3-graphs consist of a set of 2-manifold meshes that repre-sent their 3-vertices and a set of prismatic handles thatconnect the faces of the 3-vertices. These prismatic han-dles represent 3-edges. There are only two constraintsover the structures.

1. An m-valent vertex of the original graph can be3D-thickened only into a 3-vertex with m faces,which correspond to the edge-ends of the origi-nal graph. For instance, the 6-valent vertex in Fig-ure 3(I) is thickened into a cube.

2. A handle is a prism whose two end-faces have thesame number of sides. For instance, as shown inFigure 3(I), all faces of a cube are squares, and wecan connect any two faces with a prismatic handle.

The number of possible combinatorial structures thatemerge from a given graph can be very large. It is possi-ble to develop an intuitive understanding how high thisnumber can be.

1. For 3D-thickened vertices, there is no constraintother than the number of faces. Thus, these meshescan have any number of vertices and edges, and itsgenus can be any number. For instance, the cubeshown in Figure 3(I) is one possible 3D-thickeningof a 6-valent vertex and the octahedron shown inFigure 5 is one possible 3D-thickening of an 8-valent vertex.

2. As with 2-graph embeddings, the most importantissue in enumeration here is the number of possi-ble configurations of handles. Figure 5 shows 5possible handle configurations when the 3-vertexis an octahedron. By considering the mirror imageof the 3-graph shown in Figure 3(I), we see that theactual number of configurations is 4.

(a) A graph (b) Example 1

(c) Example 2 (d) Example 3

(e) Example 4 (f) Example 5

Figure 5: A few examples of 3D-thickening of a graph with one vertexand 4 self-loops by assuming that vertex is thickened to an octahedron.

3. A handle connecting two faces with n sides canbe realized in n different ways. For instance, thetwo handles shown in Figure 3(H) connect thesame faces, but they are different. Since their endsare pentagons, there are five inequivalent handles.This significantly increases the number of possiblecombinatorial structures. Even though the possi-bilities are relatively low for the examples in Fig-ures 5(b) and 3(H), because of their perfect sym-metry, the numbers are still significant, 12 and24, respectively. Figure A.23(a) shows one addi-tional example from the 24 possible cases that cor-respond to the configuration in Figure 3(H).

Figures 5 and 3(I) illustrate the representational powerof 3-thickening a 3-graph, which induces embeddings ofthe graph into 3-manifolds. Even very small graphs can

7

Page 8: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

provide a very rich combinatorial information throughtheir 3-thickenings. Moreover, we observe that a verysimple structure emerges from all 3D-thickenings of 3-graphs, which we call CMM-pattern coverable (CMM-PC) meshes. In this paper, we employ the underlyingstructure called CMM-PC meshes for the decomposi-tion of 3-manifolds. We show that we can easily re-construct vertices, edges, faces, and chambers from anygiven CMM-PC mesh. Moreover, we develop a shapealgebra for CMM-PC meshes.

4. CMM-PC meshes

Our basic conjecture in this paper is that a 3-graphcan always be 3D-thickened into a specific type of 2-manifold quad-mesh, in which the opposing edges ofeach quadrilateral can be consistently labeled by 0 and1 (or colored green and purple). We call such quad-meshes CMM-Pattern Coverable1 since they can beseamlessly covered by CMM patterns [91].

Definition A CMM-Pattern Coverable (CMM-PC)mesh is a quad-mesh that can be seamlessly covered bya CMM pattern, which is one of the 17 wallpaper pat-terns [91]. A quad-pattern coverable mesh is a mesh thatcan be covered seamlessly by any one of the 17 wallpa-per patterns [60]. CMM patterns are mirror-symmetric,as in Figure 6(a).

Conjecture 4.1. A 3-graph can always be 3D-thickened into a CMM-PC mesh.

Based on this conjecture, we demonstrate that froma CMM-PC mesh, it is possible to reconstruct the 2-manifold boundaries of all elements, i.e. the 3-vertices,3-edges, 3-faces, and chambers of a decomposed 3-manifold

This representation is analogous to the classical methodof representing an embedding of a graph in a surface bya 2D graph rotation system (2D-GRS), which is basedon a cyclic ordering of the edge-ends incident at eachvertex. In the new model, cyclic ordering of the edge-ends incident at each vertex is replaced by a CMM-Pattern Coverable Mesh that can be used to reconstruct3-vertices, 3-edges, 3-faces and chambers.

Lemma 4.1. We can consistently label edges of aCMM-PC mesh with 0 and 1, such that opposite edgesin every quad have the same label.

1To refer to CMM-Pattern Coverable Quad-Meshes, we also use ashorter form: “CMM-PC meshes”)

(a) A basic CMM pattern (b) Odd-valence (c) Non-cycle

(d) Grid (e) Even-valence (f) Rings

Figure 6: All vertices of a CMM-pattern coverable mesh must be even,and same-colored edges must form consistently colored rings. Notethat (b) and (c) includes unresolvable cases, shown as question marks.

Figure 7: This figure shows the simplest CMM-PC mesh, which is asingle quadrilateral embedded on a toroidal surface. It represents a3-manifold with a single 3-vertex, a single 3-edge, a single 3-face, anda single chamber.

Proof of this lemma is directly from the definition. Tovisually demonstrate labels in this paper we use colors,such as purple and green, as in Figure 6. As shown inthat figure, in a CMM-PC mesh, we can consistentlycolor opposite edges of every quadrilateral. Figure 7shows the simplest CMM-PC mesh, which is a singlequadrilateral embedded on a toroidal surface.

4.1. Cycles, Rings and Strips in CMM-PC meshes

To reconstruct 3-edges and 3-faces, we use cycle andring structures that exist in CMM-PC meshes.

Definition In a CMM-PC mesh, a set of same-labelededges that forms a closed polygon is called a cycle (asin Figure 8).

Given a half-edge he, the operation Oppose(he) providesan opposing half-edge in the same face, and the opera-tion Other(he) provides the other half-edge of he. We

8

Page 9: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

define the operation Next(he) to be a composition ofthe Oppose and Other operations, which provides theopposing half-edge in the neighboring face for a givenhalf-edge he. deletion

Definition In a CMM-PC mesh, a group of edgeswhose half-edges are closed under the Next(he) oper-ation is called a ring. (See Figure 8.)

Figure 8: This figure illustrates the difference between a cycle and aring. One of the most important advantages of CMM-PC meshes isthat every edge belongs to only one ring, and every edge in a ring hasthe same color.

The next lemma states some useful properties of CMM-PC meshes, which are used to represent non-cellular de-compositions, which we call block meshes.

Lemma 4.2. In a CMM-PC mesh, all vertex valencesare even. Each edge belongs to only one ring. Everyedge in the same ring has the same color.

This lemma is clear from Figure 6. The same labeledrings of CMM-PC mesh is used to describe 3-edges and3-faces of a block mesh, which are generalized prismsas shown in Figure 3. Without loss of generality, weassume that purple (Label=0) edges correspond to thesides of 3-edges and that green (Label=1) edges corre-spond to the sides of 3-faces.

Definition In a CMM-PC mesh, the set of quadrilater-als that include all edges in a given ring is called a strip.The boundary cycles of strips are special type of cyclesthat we call boundary cycles.

There are two types of strips, each of which is namedby the label of its respective ring. In other words, thereare purple strips and green strips. Without loss of gen-erality, let us assume that each Label-0 strip (i.e., purplestrip) corresponds to a 3-edge of a block mesh and thateach Label-1 strip (i.e., green strip) corresponds to a 3-face of a block mesh.

If we delete all the edges of a CMM-PC mesh that donot belong to a given strip, we obtain an orientable2-manifold mesh surface, which consists mostly ofquadrilaterals, which we call sides. In addition, there

exist one or two general 2-faces that are constructedby boundary cycles, which we call ends. For instance,in the case of purple strips, the quadrilateral faces arecalled face-sides and the others described by boundarycycles are called face-ends. The same is applicable forgreen strips. In the case of green strips, the quadrilateralfaces are called edge-sides and the others constructed byboundary cycles are called edge-ends.

Without loss of generality, we discuss possible stripstructures using purple strip examples. We now pro-vide a few of the many interesting structures that canbe described by strips, including some physical Mobiusstrips2.

Figure 9 demonstrates the most common structures forstrips. The boundaries of these strips are two non-connected cycles. If we remove all other edges of aCMM-PC mesh, the resulting mesh is a genus-0 surface.As demonstrated in the figure, these are really prisms.The two non-connected boundary cycles form top andbottom bases of a prism.

Figure 9: An example of strips that correspond to prisms: to see this,assume that we are looking at a transparent one from above with aperspective projection. A physical realization of the correspondinggenus-0 surface is shown on the right.

Figure 10 demonstrates another common structure thatcan be obtained by twisting a 3-edge between two 3-faces. The boundary of the strip in the figure consistsagain of two cycles; however, these two cycles are notdisconnected in this case. They share two purple edgesshown in as dotted lines in the figure. The result is re-ally a representation of a one-sided structure. In otherwords, two face-sides of this type of 3-faces belong tothe same chamber.

Figure 11 demonstrates Keizo’s cut that does not sepa-rate the block into two. This particular cut is shown inFigure 1 earlier. In this case, the boundary of the stripconsists of two non-connected cycles. These two cy-cles form two 2-faces. This defines a “physical Mobiusstrip”, as shown on the right image, and again two face-ends of this type of 3-faces belong to the same chamber.

2Topologically, a physical Mobius strip is an annulus that lies onthe boundary of a regular neighborhood in 3-space of a 2-dimensionalMobius strip.

9

Page 10: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

Figure 10: An example of a genus-1 strip. The two dotted green edgesform a tunnel by turning the shape into a toroid. This type of structurecan be obtained by using the twist operation.

Figure 11: Another example of a genus-1 strip. The left image showsa strip drawn on an unfolded toroidal surface. This particular casecorrespond to cutting a toroidal block that does not separate the blockinto two. This cut corresponds to a physical Mobius strip, as depictedin the right image.

Figure 12 demonstrates another genus-1 structure thatcorresponds to a physical Mobius strip. Unlike Fig-ure 11, here the boundary of the strip consists a singlecycle. In this case, the boundary cycle does not definea 2-face. In other words, this particular structure has noface-end (or no edge-end for green strips).

These examples show that a 3-face (or a 3-edge) canhave two, one, or zero ends. This property of our modelsignificantly extends its representational power. For in-stance, it is possible to include 3-edges that do not con-nect any vertices or 3-faces that do not connect anychambers. It is also possible to create a special kindof self-loop 3-edge or 3-face that has a single edge-endor a single face-end, respectively.

Figure 12: An example of strips with single cycle boundaries. Thestrip on the left is drawn on a square that represents a toroid. Notethat the two green edges form a single cycle on the toroidal surface.This type of strip also corresponds to a physical Mobius strip; how-ever, their structure is different as shown on the right image. Thesestructures are theoretical possibilities that can be obtained duringmodeling.

4.2. Reconstruction of 3-Vertices and Chambers

We now demonstrate how to obtain 3-vertices andchambers from a given CMM-PC mesh.

Conjecture 4.2. A CMM-PC mesh can consistentlyprovide 3-vertices, 3-edges, 3-faces and chambers of ablock mesh.

If we delete all the purple edges from a 2-manifoldmesh, what remains is the set of disconnected meshesthat correspond to 3-vertices. Deleting all the purplevertices of a CMM-PC mesh effectively removes allconnections between individual “3-vertices”. There-fore, what remains is all the 3-vertices of the underlyingblock mesh. Thus, each connected 2-manifold mesh canbe used as a representation of a 3-vertex.

If we apply the same operation to a ”un-thickened”graph, similarly we obtain the set of ”un-thickened”3-vertices. That is, deleting all the purple edges of aCMM-PC mesh effectively deletes all the edges of theoriginal graph. Using the analogy with 2-manifolds, theresulting structure consists only of ”vertices”. In fact,this operation results in a number of 2-manifold meshesthat consist only of green edges. Therefore, each con-nected 2-manifold mesh is the boundary of a 3-vertex ofa decomposed structure.

Similarly, if we delete all the green edges of a CMM-PCmesh, then we obtain a number of 2-manifold meshesthat consist entirely of purple edges. In this case, eachconnected 2-manifold mesh corresponds to a chamberof a decomposed structure. That is, if we delete all thegreen edges of a CMM-PC mesh, we remove all con-nections between individual chambers. What remains,therefore, is all the chambers of the block mesh, andeach connected 2-manifold mesh corresponds to a sin-gle chamber. This also explains why we cannot al-low disconnected blocks. In our framework, we do nothave a mechanism to consider them a single block whenthere is no “explicit” connection between disconnectedpieces.

Remark: In a CMM-PC mesh, the green edges canalso be called 3-corners of the 3-faces, and the purpleedges can also be called 3-corners of the 3-faces. Inother words, they correspond to corners of 2-manifolds.Each quadrilateral in a CMM-PC mesh corresponds toa half-edge of a 2-manifold mesh. They are also face-sides, as in 2-manifold meshes.

In the next section, we demonstrate how to createand manipulate CMM-PC meshes that represent blockmeshes.

10

Page 11: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

5. A Shape Algebra for CMM-Coverable Meshes

To create initial CMM-PC meshes, we introduce twosimple procedures that can be used to convert any 2-manifold into a related block mesh. It is always possibleto convert any orientable or non-orientable 2-manifoldmesh into a CMM-PC mesh that represents a decompo-sition with either two blocks or one block, respectively.The original 2-manifold mesh’s vertices turn into 3-vertices, and edges turn into 2-vertices, etc. These blockmeshes that are produced from 2-manifolds can providean initial set of structures. More complicated structurescan be produced from these initial structures by usingoperations that that can create CMM-PC meshes whenapplied to CMM-PC meshes.

We provide herein a minimal set of operations, fromwhich one can construct more complicated operations.For a minimal set, all we need do is to identify a setof operations that preserve the CMM-Pattern-Coverableproperty and that cannot be obtained from other opera-tions. The most important operation in a minimal set ofoperations is the Dual operation that converts 3-verticesto chambers and 3-edges to 3-faces. We demonstratethat obtaining duals is extremely simple with CMM-PCmeshes.

We present three additional operators that can con-vert any CMM-PC mesh into another CMM-PC mesh.Along with the Dual they provide a shape algebra overthe CMM-Pattern Coverable meshes. These three op-erators, called InsertPipe, Twist, and SplitCycle, areblock-mesh counterparts of the 2-manifold operators In-sertEdge, Twist, and SplitVertex [50, 2]. More com-plicated block-mesh operations can be implemented as acombination of these 2-manifold operations. Figure 13illustrates how we use InsertEdge operator to manipu-late the topology of 2-manifolds.

An important property of this framework is that all theseoperations can be applied using a series of 2-manifoldmesh modeling operations. Moreover, CMM-PatternCoverable meshes can be represented by any mesh datastructure that can support all and only orientable 2-manifolds. Acccordingly, our framework can be imple-mented using any existing 2-manifold mesh data struc-ture and Euler operators [74]. Of course the originalmesh data structure and original Euler operators mustbe kept hidden from users, so that they cannot createinvalid structures.

(a) Opening a hole with insert edge operator.

(b) Combining two surfaces with insert edge operator.

Figure 13: The InsertEdge operator changes the topology when theedge-ends are inserted between two corners of two faces, thereby com-bining the two faces into one. If the initial faces are n1-sided and n2-sided, then the combined face becomes n1 + n2 + 2 sided. In these ex-amples, the resulting faces are 10-sided since the initial two faces arequadrilaterals. Note that the inserted “edge” appears twice as half-edges [74] in the same 10-sided face. This can be seen as a “virtualtunnel” that makes the yellow areas into cylinders. In these examples,the results are subdivided, in order to visually demonstrate holes andhandles created by a single edge insertion. For more information forsuch Euler operators over 2-manifold meshes see [74, 50, 3].

5.1. Creation of CMM-Coverable Meshes

We propose to create block meshes by converting ex-isting 2-manifold meshes, since there exist many 2-manifold meshes available now. Moreover, we havea good understanding of 2-manifold surfaces. Non-orientable surfaces are not that common in shape mod-eling; however, it is also useful to discuss how they canbe converted into block meshes.

Theorem 5.1. Any orientable 2-manifold mesh can beconverted into a CMM coverable mesh that represents arelated block mesh.

Proof. A connected orientable 2-manifold mesh em-bedded in 3-space with no self-intersections separates3-space into two blocks, which can be called inside andoutside. Our goal is to obtain a CMM-PC mesh that canproduce the two chambers that are boundaries of the in-side and outside blocks. Consider a 2-vertex v of a given2-manifold mesh, and assume that v is n-valent. We firstobtain an n-sided polygon by 2D-thickening v, as shownin Figure 14.

By 3D-thickening that polygon, we obtain a genus-0regular mesh, denoted by (n, 2), where n is the valence

11

Page 12: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

Figure 14: Converting a 2D thickened valence-4 2-vertex of a 2-manifold into a 3D-thickened 3-vertex.

of each vertex of the regular mesh, and 2 is the num-ber of sides of each face. As shown in Figure 14, eachface of this regular mesh is, in fact, a 3-edge end. Notethat these regular meshes always have two 2-vertices,and we can label them as 0− and 1-vertices, which arecolored blue and green, respectively, in the figure.

If we insert these 3-edges between appropriate edge-ends, we complete the conversion into a CMM-PCmesh. To insert pipes appropriately, we differentiate two2-corners of these two-sided faces using labeled ver-tices. If there is a edge between two original 2-edge-ends of a 2-manifold, then we insert two edges to createa corresponding 3-edge. These two 2-edges are insertedso that they join the same-labeled corners of the two 3-edge-ends, as shown in Figure 15.

Figure 15: Inserting a pipe between two 2-sided 3-edge ends by in-serting two 2-edges.

This operation creates a pipe. If we replace all original2-edges with 3-edges by inserting these pipes, the re-sult becomes a CMM-PC mesh. Each original n-valent2-vertex splits into two 2n-valent vertices. Moreover,each original 2-face of the 2-manifold turns into a cy-cle of green edges, where each green edge correspondsto a 3-corner of a 3-face. Now, if we delete all thesegreen edges, the CMM-PC mesh separates into two 2-manifold meshes, which correspond to the chambers ofthe block mesh. These chambers are boundaries of theinside and outside blocks. This concludes our construc-tive proof. Figure 16 illustrates how a cube can be con-verted into a CMM-PC mesh with two chambers. �

(a) 2D-thickened (b) 3D-thickened (c) Chambers

Figure 16: Converting a cube into a CMM-PC mesh using 3D-thickening. (c) shows two chambers that are obtained from a CMM-PC mesh.

Conversion of an orientable 2-manifold provides a non-cellular decomposition of 3-space, and it is always pos-sible to avoid self-intersections when the resulting struc-ture is embedded in 3-space. On the other hand, a non-orientable 2-manifold provides a more interesting case,as indicated by our next theorem.

Theorem 5.2. Any non-orientable 2-manifold meshcan be converted into a CMM-PC mesh that representsa related block mesh.

Proof. A connected non-orientable 2-manifold meshhas only one side. Thus, we do not have inside and out-side blocks. In this case, our goal is to obtain a CMM-PC mesh that can produce a single chamber, which isthe boundary of a single block.

The first part of the conversion process is the same as fororientable surfaces. We first 3D-thicken every 2-vertexof the non-orientable mesh, thereby obtaining genus-0(n, 2) regular meshes. Each one of these regular meshesstill has two 2-vertices, which we still label as 0− and1-vertices, which are again visualized as blue and greencircles/spheres in the figures. Moreover, the procedureagain requires insertion of 3-edges between appropri-ate edge-ends, to complete the conversion into a CMM-PC mesh. A caveat in this case is that some edges aretwisted.

An immersion of a twisted edge of a 2-manifold surfacecan be 2-thickened into a shape that can be visualizedas a twisted paper strip. A paper strip can be twistedcounter-clockwise or clockwise. This difference comesfrom immersion as briefly mentioned before. In termsof non-orientable surfaces, there should be no differencebetween these two different immersions.

In 3D-thickening, unlike 2D-thickening, there is no wayto differentiate twisted pipes from untwisted pipes un-less we label the vertices. To insert twisted pipes ap-propriately, we use our earlier differentiation of the two2-corners of the two-sided faces. If there is a twisted

12

Page 13: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

Figure 17: Note that the vertex labels are created just for the algo-rithm. In the final CMM-PC mesh, vertices do not have labels. With-out vertex labels, there is no way to differentiate between “twisted”and “untwisted” pipes.

edge between two original 2-edge-ends of 2-manifold,we again insert two edges to create a corresponding 3-edge. However, in this non-orientable case, these two 2-edges are inserted between oppositely labeled corners ofthe two 3-edge-ends, as shown in Figure 17. That is, weinsert one edge between a label-i corner of one 3-edge-end and a label-i + 1 corner of other 3-edge-end, where+ is addition modulo 2. This operation again creates apipe, and if we replace all the original 2-edges with 3-edges by inserting these pipes, the result again becomesa CMM-PC mesh. Moreover, each original 2-vertex ofvalence n splits into two vertices, each of valence 2N,and each original 2-face of the 2-manifold turns intoa cycle of green edges, where each green edge corre-sponds to a 3-corner of a 3-face. However, if we deleteall the green edges, the CMM-PC mesh does not nowseparate into two 2-manifold meshes. Instead, we ob-tain a single chamber as an orientable 2-manifold mesh,which is the boundary of the single block described bythe original non-orientable 2-manifold mesh. �

Remark 1: The resulting chamber from this opera-tion is actually the boundary of a 3D-thickened non-orientable surface. If the initial non-orientable surfaceis a projective plane, then the corresponding chamber isa genus-0 surface, as shown in Figure 18.

(a) 2D-thickened (b) 3D-thickened (c) Chambers

Figure 18: Converting a projective plane into a CMM-PC mesh us-ing 3D-thickening. (c) shows that a single chamber is obtained fromthe CMM-PC mesh. This single chamber can be represented as anorientable 2-manifold mesh.

If the initial non-orientable surface is a Klein bottle,then the corresponding chamber is a genus-1 surface,and so on... These chambers, although orientable, self-intersect in 3-space. On the other hand, unlike the orig-inal non-orientable surface, there always exists a trans-formation that can remove the self-intersections of theseorientable chambers. However, it is not really possibleto make such a transformation, since the positions ofyellow and blue vertices of the same 3-vertex must bethe same, and our 3D-thickening process is just concep-tual. Therefore it is not possible in practice to resolvethese self-intersections. It is also interesting that thischamber, since it is an orientable surface, also has aninside and an outside. The real block is in the inside.The other “infinitely thin” block is an image of that non-orientable surface. We see that the major advantage ofthis conversion is not removing self-intersections, butrather, the ability to represent non-orientable objectswith orientable structures, for which there exist plentyof effective mesh data structures that can be used.

5.2. Dual Operation

Dual is the only global operation we need for shape al-gebra. The operation Dual converts all 3-vertices intochambers and all 3-edges into 3-faces; and vice-versa.Using CMM-PC meshes, obtaining duals is extremelysimple. The structure of a CMM-PC mesh does notchange under the dual operation. We just add 1 modulo2 to all the edge labels. Then all the purple edges be-come green, and the green edges become purple. Hav-ing such a simple dual operation is crucial for shape-modeling applications. For instance, the quad-edge datastructure provides a similarly simple dual operation for2-manifold meshes [50].

Such a simple dual operation would have been impossi-ble, if we did not allow 2-manifold representation for 3-vertices and for chambers of block mesh. For instance,a toroidal chamber turns into a 3-vertex after the dualoperation. If we disallow toroidal vertices, we couldnot support the dual operation. As we have discussedearlier, allowing a toroidal 3-vertex does not necessar-ily mean that the final structure always includes non-cellular vertices. For instance, we often need to applythe dual operation twice during subdivision. A twice-dual does not change the original structure. It onlysmooths the geometry (see [108] for theoretical basis).Thus, having flexible representation not only simplifiesthe process but also can make possible some operationsthat could not be done before.

13

Page 14: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

5.3. Local Operations over CMM-Coverable Meshes

In this subsection, we present four local topologychange operators that produce a new CMM-PC meshwhen they are applied to any CMM-PC mesh. Thesefour operators provide intuitive changes in the struc-ture of underlying block mesh. Moreover, these op-erators are direct generalizations of four well-known2-manifold topology change operators: CreateVertex,InsertEdge, TwistEdge and Splice. It is easy, therefore,to use these operators and it is also easy to develop algo-rithms intuitively combining these basic operators. Allof these operators except CreateSimplest3 have primaryand dual versions. The dual operators can be consideredas primary operators that are applied to dual meshes, orvice versa. Moreover, all primary and dual operatorsalso have their inverses. Therefore, the total numberof operations is 14. On the other hand, if we considerdual as an operator, then the total number of operatorsneeded is eight, i.e., a self-dual operator, three primaryoperators, their three inverses, and the dual operator.

The self-dual operator called CreateSimplest creates asimplest CMM-PC mesh that consists of a single quadri-lateral, as shown in Figure 7. This can be consid-ered analogous to the CreateVertex operator for 2-manifolds [74, 3]. Since this operator is really simple,we will focus on only other three operators, which arecalled the Insert Pipe, Twist, and Split Cycle operators.

5.3.1. Insert Pipe Operator

The InsertPipe operator inserts a digonal prism, i.e.a prism with a digon base, between two ”same coloredges” as shown in Figure 19. In a CMM-PC mesh,the same color edges are really the same type 3-corners.In other words, this operator is applied to two corre-sponding 3-corners, like the InsertEdge operator. If theoperator is applied to two green edges, it creates a 3-edge, and therefore, it is called InsertEdgePipe. If it isapplied to purple edges, it creates a 3-face and is calledInsertFacePipe. We consider InsertEdgePipe as primaryand InsertFacePipe as its dual, since InsertEdgePipe ismore closely related to practical applications. These op-erators also have inverses, called DeleteEdgePipe andDeleteFacePipe.

An InsertPipe operation consists of two steps. In thefirst step, it splits the selected edges to create two two-sided 2-faces. Then the newly created 2-faces are linked

3In the case of CreateSimplest, the dual and primary operators arethe same.

Figure 19: This figure shows an InsertEdgePipe operator that is ap-plied to any two green edges which are actually two 3-corners of 3-faces. The operator insert a 3-edge between these two corners. Ifthe two corners belong to the same 3-face, then the operator split the3-face into two. If the two 3-corners belong to the two different 3-faces, then the operator combine these two faces into one exactly likeInsertEdge operator over 2-manifold.

to create a new pipe. InsertEdgePipe works exactly likethe InsertEdge operator [3] (see Figure 13 for an exam-ple). It can separate a 3-face into two if the two greenedges belong to the same 3-face. If the green edges be-long to two different 3-faces, then the operator combinesthe two 3-faces. This operation can change the genusof chambers exactly as we requested. For instance, itcan transform a genus-0 chamber into genus-1 chamber,which is non-cellular. It can also combine two cham-bers into one. Its inverse operator DeleteEdgePipe canreverse the effect of InsertEdgePipe.

The dual operator, InsertFacePipe, is included only forthe sake of theoretical completion. It is not as intuitiveor useful as its counterpart. This operator can separateone 3-edge into two, or combine two 3-edges into one.That is, this operator can change a genus-0 3-vertex intoa genus-1 3-vertex. It can also combine two discon-nected genus-0 3-vertices into a genus-0 3-vertex.

5.3.2. Twist Operator

The Twist(k) operation for block meshes is also sim-ple and analogous to the twist edge operation for 2-manifolds [46, 50, 2]. For the twist, for every edge inthe ring, the link that defines the edge is re-linked to thekth consecutive corner. Note that this is not a geometrictwist operation. If there are n edges in the given ring,Twist(n) does not change the configuration. The inverseoperation is Twist(−k), which is of course equivalent toTwist(n−k). The primary operation, i.e., the more intu-itive operation, is the one that is applied to purple ringsthat correspond edge twist. Since the primary opera-tion twists the edges, it is appropriate to call it againTwistEdge(k). This is closely related to the 2-manifoldversion, where n = 2 and k = 1. Like its 2-manifold

14

Page 15: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

version, this operation can combine two neighboring3-faces by turning them into a single twisted strip, asshown in Figure 20. The operation combines two cham-bers into one. For instance, it can combine two 3-cellsinto a non-cellular block.

Figure 20: This figure demonstrates the effect of the TwistEdge(1)operator over a purple ring. As shown here, each link that defines apurple edge is re-linked to the first consecutive corner.

The dual operator is applied to the green edges, i.e.,it twists 3-faces. It is appropriate, therefore, to callthe dual operator TwistFace(k). In 2-manifolds thereis no conceptual counterpart of this operator. In blockmeshes, this operation can combine two neighboring 3-edges and can turn a 3-vertex into a non-orientable sur-face.

5.3.3. Split Cycle Operator

The SplitCycle operator and its inverse are the general-ization of the Splice operator that provides VertexSplitand EdgeCollapse as the inverse of VertexSplit (SeeFigure ??. This operation is applied to a cycle. In thefirst of two steps, each 2-vertex on the cycle is split, byusing the VertexSplit operator on a 2-manifold. Thiscreates a ring with one missing boundary cycle. In thesecond step, the missing boundary cycle is inserted witha series of 2-manifold VertexSplit operations.

If the chosen cycle is a green cycle, this operation is a

Figure 21: Split operation is applied to a cycle. It creates a ring withtwo boundary cycles.

block mesh analogy to VertexSplit, and so it is calledVertexSplit. The reason is that any green cycle is al-ways a cycle on the surface of a single 3-vertex. If thecycle is contractible, then it separates the surface of the3-vertex, and one side of separation is a disk [47]. Inother words, when we split the contractible cycle and in-sert a ring, we effectively subdivide the original 3-vertexinto two and connect them with a 3-edge. Moreover, oneof the newly created vertices is always genus-0. Everycycle on a genus-0 surface is contractible. Therefore,if the initial 3-vertex is a genus-0 surface, then Ver-texSplit creates two new genus-0 3-vertices connectedby newly created 3-edge. It is easy to see that the 2-manifold operator VertexSplit works exactly the sameway by noticing that selection of two corners is equiva-lent to selecting a cycle that consists of two 3-face cor-ners on (n, 2) regular 3-vertices.

If the chosen cycle is noncontractible, it means that thesurface of 3-vertex has a positive genus. The VertexS-plit operator in this case does not separate the vertexinto two. Instead, it reduces its genus by 1. The newlycreated edge is a self-loop. This operation can be used toreduce genus of the 3-vertex by introducing self-cycles.

For the inverse of the VertexSplit operator, it is ap-propriate to use the same term as for 2-manifolds:EdgeCollapse. The inverse operation EdgeCollapsecombines two vertices by collapsing a proper (i.e., not aself-loop) 3-edge that connects them. If the two ends ofthe 3-edge are both at the same vertex, i.e., if 3-edge is aself-loop, then the operation increases the genus of sur-face that defines 3-vertex. This particular observationillustrates that collapsing a self-loop on 2-manifolds canalso create non-cellular 2-vertices.

If the chosen cycle is purple, this operation, which wecall ChamberSplit, can be used to cut blocks. Sincethis operation is the dual of VertexSplit, it works ex-actly the same way on the dual elements. For instance,if the cycle is contractible, the operation separates theblock, and one of the boundary chambers is guaranteedto be genus-0. On the other hand, if the cycle is noncon-tractible, then the operation can reduce the genus of thechamber by one. The operation can also make a Mobiuscut, as we discussed earlier with the Ushio sculptures.The inverse of the this operator is FaceCollapse, whichcan be used to reunite the blocks.

If the VertexSplit operator is applied to a green cycle,which is actually a boundary of ring, the operator actu-ally subdivides the edge (See Figure 22). We call thisoperator SubdivideEdge, to signify its practical use.

15

Page 16: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

Figure 22: An edge can be subdivided by applying the VertexSplitoperator to a green boundary cycle. We call this specific applicationof a split cycle operation SubdivideEdge, to signify its practical usage.

In Appendix C, we give three examples that demon-strate how these operations can be used to manipulatethe topology of the block meshes. We also show thatit is possible to create unresolvable self-intersections,even with simple operations.

6. Conclusions and Future Work

In this paper, we present a shape algebra for modelingwith block meshes. Our algebra is based on a specifictype of quadrilateral mesh, which we call a CMM-PCmesh. We have developed operators under which thespace of CMM-PC meshes is closed. Using this alge-bra, we can describe all block meshes that can be recon-structed using CMM-PC meshes. This approach comesfrom the 3D-thickening concept that we have introducedin this paper. Our conjecture is that CMM-PC meshesprovide 3D-thickenings of graphs that induce embed-dings of the graphs in 3-manifolds, for which we canreconstruct the elements of a block mesh that providedecomposition of a higher dimensional structure.

CMM-PC meshes are not developed to classify and/oranalyze higher dimensional structures such as 3-manifolds [100]. Instead, our goal is to provide a sim-ple algebra that can guarantee all the topology changeoperations that always lead to a valid structure. This ap-proach helps us to define an algebra over the CMM-PCmeshes. We have shown that our operations create onlyCMM-PC meshes. On the other hand, we did not touchthe questions such as whether the operations can createall possible CMM-PC meshes and whether CMM-PCmeshes can necessarily represent decompositions of 3-manifolds.

If we start with a 2-manifold mesh and apply only theoperations InsertEdgePipe, SplitVertex, and their in-verses, then the resulting structures will always consists

of 3-vertices in the form of regular meshes (n, 2) wheren is the valence of the original vertex, and we will al-ways have two chambers. Thus, this particular set pro-vides an algebra over orientable 2-manifolds. If we alsoinclude the TwistEdge operator, the 3-vertex types wecan create do not change; however, we can now obtainsingle chamber as well as double chambers. Thus, wesee that adding TwistEdge operator yields a more pow-erful algebra that includes non-orientable objects. Thisis analogous to the hierarchy structure among real alge-bras, complex algebras, and quaternion algebras.

Our main motivation for writing this paper is to pro-vide all essential elements for the implementation ofthis framework. From a practical point of view, ourmost important contribution is the ability to representhigher-dimensional structures, using only orientable 2-manifold meshes. In the shape-modeling community,the creation and manipulation of orientable 2-manifoldmeshes is very well-understood. As discussed in this pa-per, there are many robust mesh data structures that canbe used for orientable 2-manifolds to support such analgebra. Of course, the extension still needs some care-ful book-keeping. For instance, although we can alwaysobtain 3-vertices or chambers, it is better to have dy-namically updated topological information. Moreover,when an operator combines two chambers into one, itis better to update this information during the modeling.Such extensions, although small, will be helpful in prac-tical applications, especially during interactive model-ing and rendering. Although 3-vertices and 3-edges arenot really thickened, it is also possible to geometricallythicken them to provide better visualizations. For in-stance, creation of k-fold fabrics require such thicken-ings of face boundary walks.

One may think it hard to use such block meshes thatcan self-intersect in 3-space for 3D-modeling since self-intersections might make it hard to understand the corre-sponding structures. Fortunately, this is not a problem inpractice. Any block mesh, even if it is not embeddablein 3-space, can be represented visually without self-intersections, as a 3D-thickening of a graph specified bya 3D-GRS. Our form of 3D-representation of a higher-dimensional shape with self-intersections is called a 3-space immersion [95, 92, 93].

In Appendix, we demonstrate that 3-space immersionsof block meshes provide a unifying framework that canrobustly represent all topologically distinct shapes in 3Dfrom solids to surfaces and curves. The curves (or sur-faces) will not really be part of the main data structure.They will be created on demand or on fly from under-

16

Page 17: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

lying data structure. They simply correspond differentimmersions of underlying block meshes. For instance,3D immersions of face boundary walks are really closed3D curves. We can draw them, for instance, as B-splinecurves using vertex positions as control points. Theseclosed curves define knots and links in 3D. Now, assumewe do not make any topological change in underlyingmanifold, even when we change the geometry (say bymoving vertex positions) the knots will never change.This approach is, therefore, topologically robust. Thistopologically robust framework can be used to build auniversal and modular system for the visualization, de-sign, and construction of shapes for a broad range ofscience, engineering, architecture, and design applica-tions.

This work was partially supported by the National Sci-ence Foundation under Grants NSF-CCF-0917288 andNSF-EFRI-1240483.

References

[1] E. Akleman and J. Chen. Guaranteeing the 2-manifold prop-erty for meshes with doubly linked face list. InternationalJournal of Shape Modeling, 5(2):149–177, 1999.

[2] E. Akleman, J. Chen, and J. Gross. Paper strip sculptures.In Proceedings of Shape Modeling International’2010, pages236–240. IEEE, June 2010.

[3] E. Akleman, J. Chen, and V. Srinivasan. A minimal and com-plete set of operators for the development of robust manifoldmesh modelers. Graphical Models Journal, Special issue onInternational Conference on Shape Modeling and Applications2002, 65(5):286–304, 2003.

[4] E. Akleman, J. Chen, Q. Xing, and J. Gross. Cyclic plain-weaving with extended graph rotation systems. ACM Trans-actions on Graphics; Proceedings of SIGGRAPH’2009, pages78.1–78.8, 2009.

[5] E. Akleman, J. Chen, Q. Xing, and J. Gross. Single cyclicplain-woven objects. Proceedings of Shape Modeling Interna-tional’2010, pages 90 – 99, June 2010.

[6] E. Akleman and V. Srinivasan. Honeycomb subdivision. InProceedings of ISCIS’02, 17th International Symposium onComputer and Information Sciences, volume 17, pages 137–141, November 2002.

[7] E. Akleman, V. Srinivasan, Z. Melek, and P. Edmundson.Semi-regular pentagonal subdivision. In Proceedings of ShapeModeling International, pages 110–118, 2004.

[8] Ergun Akleman and Jianer Chen. Regular meshes. In Pro-ceedings of the 2005 ACM symposium on Solid and physicalmodeling, pages 213–219. ACM, 2005.

[9] Ergun Akleman and Jianer Chen. Regular mesh constructionalgorithms using regular handles. In Proceedings of IEEE Int.Conference on Shape Modeling and Applications, (SMI 06),pages 171–181, 2006.

[10] Ergun Akleman, Jianer Chen, and Vinod Srinivasan. A newparadigm for changing topology during subdivision modeling.In Computer Graphics and Applications, 2000. Proceedings.The Eighth Pacific Conference on, pages 192–201. IEEE, 2000.

[11] Ergun Akleman, Jianer Chen, and Vinod Srinivasan. An inter-active shape modeling system for robust design of functional3d shapes. Proceedings of ACADIA, pages 248–257, 2001.

[12] Ergun Akleman, Jianer Chen, and Vinod Srinivasan. A proto-type system for robust, interactive and user-friendly modelingof orientable 2-manifold meshes. In Shape Modeling Interna-tional, 2002. Proceedings, pages 43–50. IEEE, 2002.

[13] Ergun Akleman, Jianer Chen, Vinod Srinivasan, and FusunEryoldas. A new corner cutting scheme with tension andhandle-face reconstruction. International Journal of ShapeModeling, 7(2):111–128, 2001.

[14] Ergun Akleman, Vinod Srinivasan, and Esan Mandal. Remesh-ing schemes for semi-regular tilings. In Proceedings of IEEEInt. Conference on Shape Modeling and Applications, pages44–50. IEEE, 2005.

[15] Marc Alexa, Johannes Behr, Daniel Cohen-Or, Shachar Fleish-man, David Levin, and Claudio T Silva. Computing and ren-dering point set surfaces. Visualization and Computer Graph-ics, IEEE Transactions on, 9(1):3–15, 2003.

[16] Chandrajit Bajaj, Scott Schaefer, Joe Warren, and GuoliangXu. A subdivision scheme for hexahedral meshes. The visualcomputer, 18(5):343–356, 2002.

[17] Michael F Barnsley. Fractals Everywhere: New Edition.Courier Dover Publications, 2013.

[18] Richard H Bartels, John C Beatty, and Brian A Barsky. Anintroduction to splines for use in computer graphics and geo-metric modeling. Morgan Kaufmann, 1987.

[19] Bruce G Baumgart. Winged edge polyhedron representation.Technical report, Technical Report, Stanford University, 1972.

[20] Bruce G Baumgart. A polyhedron representation for computervision. In Proceedings of the May 19-22, 1975, national com-puter conference and exposition, pages 589–596. ACM, 1975.

[21] Alexander I Bobenko, John M Sullivan, and Peter Schr. Dis-crete differential geometry. Springer, 2008.

[22] David Bommes, Henrik Zimmer, and Leif Kobbelt. Mixed-integer quadrangulation. In ACM Transactions On Graphics(TOG), volume 28, page 77. ACM, 2009.

[23] Mario Botsch, Mark Pauly, Christian Rossl, Stephan Bischoff,and Leif Kobbelt. Geometric modeling based on trianglemeshes. In ACM SIGGRAPH 2006 Courses, page 1. ACM,2006.

[24] Erik Brisson. Representing geometric structures in d dimen-sions: topology and order. In Proceedings of the fifth an-nual symposium on Computational geometry, pages 218–227.ACM, 1989.

[25] Elisabetta Bruzzone and Leila De Floriani. Two data struc-tures for building tetrahedralizations. The Visual Computer,6(5):266–283, 1990.

[26] Swen Campagna, Leif Kobbelt, and Hans-Peter Seidel. Di-rected edgesa scalable representation for triangle meshes. Jour-nal of Graphics tools, 3(4):1–11, 1998.

[27] Edwin Catmull and James Clark. Recursively generated b-spline surfaces on arbitrary topological meshes. Computer-aided design, 10(6):350–355, 1978.

[28] Yu-Sung Chang, Kevin T McDonnell, and Hong Qin. A newsolid subdivision scheme based on box splines. In Proceedingsof the seventh ACM symposium on Solid modeling and appli-cations, pages 226–233. ACM, 2002.

[29] Paolo Cignoni, Leila De Floriani, Peter Lindstrom, ValerioPascucci, Jarek Rossignac, and Claudio Silva. Multi-resolutionmodeling, visualization and streaming of volume meshes. Eu-rographics 2004, Tutorials 2: Multi-resolution Modeling, Vi-sualization and Streaming of Volume Meshes, 2004.

[30] Marston Conder and Peter Dobcsanyi. Determination of allregular maps of small genus. Journal of Combinatorial Theory,

17

Page 18: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

Series B, 81(2):224–242, 2001.[31] Marston Conder, Robert Jajcay, and Tom Tucker. Regular t-

balanced cayley maps. Journal of Combinatorial Theory, Se-ries B, 97(3):453–473, 2007.

[32] John H Conway, Heidi Burgiel, and Chaim Goodman-Strauss.The symmetries of things. AMC, 10:12, 2008.

[33] Harold Scott Macdonald Coxeter. Regular polytopes. CourierDover Publications, 1973.

[34] Emanuele Danovaro, Leila De Floriani, Michael Lee, andHanan Samet. Multiresolution tetrahedral meshes: an analy-sis and a comparison. In Shape Modeling International, 2002.Proceedings, pages 83–91. IEEE, 2002.

[35] Leila De Floriani and Annie Hui. A scalable data structure forthree-dimensional non-manifold objects. In Proceedings of the2003 Eurographics/ACM SIGGRAPH symposium on Geometryprocessing, pages 72–82. Eurographics Association, 2003.

[36] Leila De Floriani and Annie Hui. Data structures for simplicialcomplexes: An analysis and a comparison. In Symposium onGeometry Processing, pages 119–128, 2005.

[37] David P Dobkin and Michael J Laszlo. Primitives for the ma-nipulation of three-dimensional subdivisions. In Proceedingsof the third annual symposium on Computational geometry,pages 86–99. ACM, 1987.

[38] Shen Dong, Peer-Timo Bremer, Michael Garland, ValerioPascucci, and John C Hart. Spectral surface quadrangula-tion. ACM Transactions on Graphics (TOG), 25(3):1057–1066, 2006.

[39] Daniel Doo and Malcolm Sabin. Behaviour of recursive divi-sion surfaces near extraordinary points. Computer-Aided De-sign, 10(6):356–360, 1978.

[40] J. Bloomenthal (Editor). Introduction to implicit surfaces.Morgan Kaufmann, 1997.

[41] Sharif Elcott and Peter Schroder. Building your own dec athome. In ACM SIGGRAPH 2006 Courses, pages 55–59. ACM,2006.

[42] Helaman Ferguson, Alyn Rockwood, and Jordan Cox. Topo-logical design of sculptured surfaces. In ACM SIGGRAPHComputer Graphics, volume 26, pages 149–156. ACM, 1992.

[43] NA Friedman and CH Sequin. Keizo ushio’s sculptures, splittori and mobius bands. Journal of Mathematics and the Arts,1(1):47–57, 2007.

[44] Rao V Garimella. Mstk-a flexible infrastructure library for de-veloping mesh based applications. In IMR, pages 213–220,2004.

[45] ND Gilbert and Timothy Porter. Knots and surfaces. OxfordUniversity Press, 1994.

[46] Jonathan L Gross and Thomas W Tucker. Topological graphtheory. Courier Dover Publications, 2001.

[47] Jonathan L Gross and Jay Yellen. Handbook of graph theory;Page: 723. CRC press, 2003.

[48] Branko Grunbaum and Geoffrey C Shephard. Satins and twills:An introduction to the geometry of fabrics. Mathematics Mag-azine, pages 139–161, 1980.

[49] Branko Grunbaum and Geoffrey C Shephard. A catalogue ofisonemal fabrics. Annals of the New York Academy of Sciences,440(1):279–298, 1985.

[50] Leonidas Guibas and Jorge Stolfi. Primitives for the manipu-lation of general subdivisions and the computation of voronoi.ACM Transactions on Graphics (TOG), 4(2):74–123, 1985.

[51] Lucye Guilbeau. The history of the solution of the cubic equa-tion. Mathematics News Letter, pages 8–12, 1930.

[52] Topraj Gurung and Jarek Rossignac. Sot: compact represen-tation for tetrahedral meshes. In 2009 SIAM/ACM Joint Con-ference on Geometric and Physical Modeling, pages 79–88.ACM, 2009.

[53] George W Hart. Rapid prototyping of geometric models. InProceedings of Canadian Conference on Computational Ge-ometry. Citeseer, 2001.

[54] Ulrich Hartmann and Frithjof Kruggel. A fast algorithm forgenerating large tetrahedral 3d finite element meshes frommagnetic resonance tomograms. In Biomedical Image Anal-ysis, 1998. Proceedings. Workshop on, pages 184–192. IEEE,1998.

[55] Sven Havemann and Dieter W Fellner. Generative paramet-ric design of gothic window tracery. In Proceedings of the5th International conference on Virtual Reality, Archaeologyand Intelligent Cultural Heritage, pages 193–201. Eurograph-ics Association, 2004.

[56] Sven Havemann and Dieter W Fellner. Generative mesh mod-eling. PhD thesis, University of Braunschweig-Institute ofTechnology, 2005.

[57] Paul Hildebrandt and Steven Rogers. Connections for geomet-ric modeling kit, 2002.

[58] C Hoffmann and G Vanecek. Fundamental techniques for geo-metric and solid modeling. Advances in control and dynamics,48:101–166, 1991.

[59] Christoph M Hoffmann. Geometric and solid modeling. Mor-gan Kaufmann, 1989.

[60] Shiyu Hu, Qing Xing, Ergun Akleman, Jianer Chen, andJonathan Gross. Pattern mapping with quad-pattern-coverablequad-meshes. Computers & Graphics, 36(5):455–465, 2012.

[61] Martin Isenburg, Peter Lindstrom, Stefan Gumhold, andJonathan Shewchuk. Streaming compression of tetrahedralvolume meshes. In Proceedings of Graphics Interface 2006,pages 115–121. Canadian Information Processing Society,2006.

[62] William H Jaco. Lectures on three-manifold topology, vol-ume 43. American Mathematical Soc., 1980.

[63] NW Johnson. Uniform polytopes. Cambridge University Press,2000.

[64] Kenneth I Joy, Justin Legakis, and Ron MacCracken. Datastructures for multiresolution representation of unstructuredmeshes. In Hierarchical and Geometrical Methods in Scien-tific Visualization, pages 143–170. Springer, 2003.

[65] Felix Kalberer, Matthias Nieser, and Konrad Polthier.Quadcover-surface parameterization using branched cover-ings. In Computer Graphics Forum, volume 26, pages 375–384. Wiley Online Library, 2007.

[66] Eric Landreneau, Ergun Akleman, and John Keyser. Interac-tive face-replacements for modeling detailed shapes. In Geo-metric Modeling and Processing-GMP 2006, pages 602–608.Springer Berlin Heidelberg, 2006.

[67] Eric Landreneau, Ergun Akleman, and Vinod Srinivasan. Localmesh operators: Extrusions revisited. In Proceedings of IEEEInt. Conference on Shape Modeling and Applications, pages349–354. IEEE, 2005.

[68] Bruno Levy and Yang Liu. L p centroidal voronoi tessellationand its applications. ACM Transactions on Graphics (TOG),29(4):119, 2010.

[69] Pascal Lienhardt. Subdivisions of n-dimensional spaces and n-dimensional generalized maps. In Proceedings of the fifth an-nual symposium on Computational geometry, pages 228–236.ACM, 1989.

[70] Pascal Lienhardt. N-dimensional generalized combinatorialmaps and cellular quasi-manifolds. International Journalof Computational Geometry & Applications, 4(03):275–324,1994.

[71] Yang Liu, Wenping Wang, Bruno Levy, Feng Sun, Dong-MingYan, Lin Lu, and Chenglei Yang. On centroidal voronoi tessel-lationenergy smoothness and fast computation. ACM Transac-

18

Page 19: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

tions on Graphics (ToG), 28(4):101, 2009.[72] Helio Lopes and Geovan Tavares. Structural operators for

modeling 3-manifolds. In Proceedings of the fourth ACMsymposium on Solid modeling and applications, pages 10–18.ACM, 1997.

[73] Benoit B Mandelbrot. The fractal geometry of nature, volume173. Macmillan, 1983.

[74] Martti Mantyla. An introduction to solid modeling. 1988.[75] Hiroshi Masuda. Topological operators and boolean operations

for complex-based nonmanifold geometric models. Computer-Aided Design, 25(2):119–129, 1993.

[76] Hiroshi Masuda and Ryutarou Ohbuchi. Coding topolog-ical structure of 3d cad models. Computer-Aided Design,32(5):367–375, 2000.

[77] Edward LF Moore and Thomas J Peters. Computational topol-ogy for geometric design and molecular design. Mathematicsfor Industry: Challenges and Frontiers. SIAM, pages 125–137,2005.

[78] Henry P Moreton and Carlo H Sequin. Functional optimizationfor fair surface design, volume 26. ACM, 1992.

[79] John W Morgan and Frederick Tsz-Ho Fong. Ricci flow andgeometrization of 3-manifolds, volume 53. American Mathe-matical Soc., 2010.

[80] James F O’brien, Adam W Bargteil, and Jessica K Hodgins.Graphical modeling and animation of ductile fracture. In ACMTransactions on Graphics (TOG), volume 21, pages 291–294.ACM, 2002.

[81] James F O’Brien and Jessica K Hodgins. Graphical model-ing and animation of brittle fracture. In Proceedings of the26th annual conference on Computer graphics and interactivetechniques, pages 137–146. ACM Press/Addison-Wesley Pub-lishing Co., 1999.

[82] Renato Pajarola, Jarek Rossignac, and Andrzej Szymczak. Im-plant sprays: Compression of progressive tetrahedral meshconnectivity. In Proceedings of the conference on Visualiza-tion’99: celebrating ten years, pages 299–305. IEEE Com-puter Society Press, 1999.

[83] Alberto Paoluzzi, Fausto Bernardini, Carlo Cattani, and Vin-cenzo Ferrucci. Dimension-independent modeling with sim-plicial complexes. ACM Transactions on Graphics (TOG),12(1):56–102, 1993.

[84] Thomas J. Peters and Hugh Cassidy. Topologically informed,geometrically robust molecular visualization. SIAM Confer-ence on Geometric and Physical Modeling, 2013.

[85] Les A Piegl and Wayne Tiller. The nurbs book (monographs invisual communication). 1996.

[86] Franco P Preparatat and Michael Ian Shamos. Computationalgeometry: an introduction. 1985.

[87] Aristid Lindenmayer Przemyslaw Prusinkiewicz, Aristid Lin-denmayer, James S Hanan, F David Fracchia, and DeborahFowler. The algorithmic beauty of plants with. 1990.

[88] Dale Rolfsen. Knots and links, volume 7. Publish or perishBerkeley, 1976.

[89] J. Rossignac and M. O’Connor. Sgc: A dimension-independentmodel for point-sets with internal structures and incompleteboundaries. In Geometric Modeling for Product Engineering,pages 145–180, 1989.

[90] Scott Schaefer, Jan Hakenberg, and J Warren. Smooth subdi-vision of tetrahedral meshes. In Proceedings of the 2004 Euro-graphics/ACM SIGGRAPH symposium on Geometry process-ing, pages 147–154. ACM, 2004.

[91] RLE Schwarzenberger. The 17 plane symmetry groups. TheMathematical Gazette, pages 123–131, 1974.

[92] Carlo H Sequin. Torus immersions and transformations. Tech-nical report, UCB Tech Report (EECS-2011-83), 2011.

[93] Carlo H Sequin. On the number of klein bottle types. Journalof Mathematics and the Arts, 7(2):51–63, 2013.

[94] Carlo H Sequin et al. My search for symmetrical embeddingsof regular maps. In Proceedings of Bridges 2010: Mathemat-ics, Music, Art, Architecture, Culture, pages 85–94. Tessella-tions Publishing, 2010.

[95] David Spring. The golden age of immersion theory in topol-ogy: 1959–1973. a mathematical survey from a historicalperspective. Bulletin of the American Mathematical Society,42(2):163–180, 2005.

[96] Vinod Srinivasan and Ergun Akleman. Connected & manifoldsierpinsky polyhedra. In Proceedings of the ninth ACM sym-posium on Solid modeling and applications, pages 261–266.Eurographics Association, 2004.

[97] Hugo Steinhaus. Mathematical snapshots. Courier Dover Pub-lications, 1999.

[98] Andrzej Szymczak and Jarek Rossignac. Grow & fold: Com-pression of tetrahedral meshes. In Proceedings of the fifth ACMsymposium on Solid modeling and applications, pages 54–64.ACM, 1999.

[99] David Tall. Building theories: The three worlds of mathemat-ics. For the Learning of Mathematics, pages 29–32, 2004.

[100] William P Thurston. On proof and progress in mathematics.arXiv preprint math/9404236, 1994.

[101] Jarke J Van Wijk. Symmetric tiling of closed surfaces: Visu-alization of regular maps. In ACM Transactions on Graphics(TOG), volume 28, page 49. ACM, 2009.

[102] Kevin Weiler. Edge-based data structures for solid modeling incurved-surface environments. Computer Graphics and Appli-cations, IEEE, 5(1):21–40, 1985.

[103] Kevin Weiler. The radial edge structure: a topological repre-sentation for non-manifold geometric boundary modeling. Ge-ometric modeling for CAD applications, 1988:3–36, 1988.

[104] Manfred Weiler, Paula N Mallon, Martin Kraus, and ThomasErtl. Texture-encoded tetrahedral strips. In Volume Visualiza-tion and Graphics, 2004 IEEE Symposium on, pages 71–78.IEEE, 2004.

[105] Robert Williams. The geometrical foundation of natural struc-ture. Dover Publications, 1979.

[106] Q. Xing, G. Esquivel, E. Akleman, J. Chen, and J. Gross. Banddecomposition of 2-manifold meshes for physical constructionof large structures. ACM SIGGRAPH’2011, Late BreakingPoster and Talk, ACM Digital Library, August 2011.

[107] Muyang Zhang, Jin Huang, Xinguo Liu, and Hujun Bao. Awave-based anisotropic quadrangulation method. ACM Trans-actions on Graphics (TOG), 29(4):118, 2010.

[108] Denis Zorin and Peter Schroder. A unified framework for pri-mal/dual quadrilateral subdivision schemes. Computer AidedGeometric Design, 18(5):429–454, 2001.

19

Page 20: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

Appendices

In these Appendices, we briefly discuss how blockmeshes can be visualized and used in practical shapemodeling applications by employing concept of immer-sion. These Appendices are mainly to demonstrate thepractical usage of block decompositions in robust shapemodeling.

In Appendix A, we introduce four types of immersionsthat can be used for visualizing block meshes. In Ap-pendix B, we provide modeling approaches that stemsfrom immersions of block meshes. In the last section,we give three examples that demonstrate how the mini-mal operations can be used to manipulate the topologyof the block meshes.

Appendix A. Immersion Types

Immersions are significantly useful for the conceptu-alization and visual representation of block meshes.Topologically, an immersion means that at every pointx of the given shape, there is a neighborhood N(x) suchthat the restriction of the immersion to N(x) is a home-omorphism. A lower-dimensional example of an im-mersion is a drawing of a graph (for instance, the Ku-ratowski graph K5) in the plane with self-intersections.Our representation of a topological immersion omitsthe self-intersected parts and lets the designer visualizethem in the locations defined by their boundaries.

Our implementation of an immersion consists oftwo stages: (1) remove self-intersected or higher-dimensional parts, and (2) view the remaining parts withor without a thickening. These visual (or sculptural)representations can be designed, modeled, and manip-ulated with a minimal set of operators in 3D, as if weare working with 3-space objects. In particular, noviceusers can manipulate shapes as if they are simply work-ing with 3D-shapes.

The simplest implementation of an immersion is to re-move everything except vertices. This process results ina type of shape called a point set in computer graphics[15]. In computer graphics, the vertices turn into splats(oriented 3D-circles) or balls (spheres or ellipsoids) foreasy visualization [15]. The the former correspond to2D-thickening and the latter to 3D-thickening . A pointset is an appropriate visualization if the geometric posi-tions of vertices reasonably well provide an interpreta-tion of the actual shape.

Edges provide additional information about relation-ships among vertices. The second simplest represen-tation of an immersion is obtained by adding edges tovertices. In 3-space this is always possible without anyedge-intersections. The resulting shape actually repre-sents a graph that is embedded in a 3-space. However,if the original shape has twisted edges, then the graphdoes not provide a good visualization of the immersedblock mesh. Therefore, to understand the true structureof the block mesh it is better to use a “geometric” 3D-thickening. Figure A.23(a) shows a representation of a3D-thickened graph that is embedded in a 3-space, rep-resented by one vertex, three edges,one face, and onechamber, which is fewer (of course) than the object it-self.

(a) 3D-Thickened Graph (b) Thickened Face Boundary

Figure A.23: This figure shows two 3-space immersions of a blockmesh with one vertex, three edges, one face, and once chamber. Theoriginal graph is given in Figure 3(I). In this case, prisms that corre-spond to 3-edges are twisted.

Another recently invented 3-space immersion methoduses face-boundary walks in 3-space to form linksand knots in 3D. This property has been used to con-struct weaving in 3-space. The resulting knots andlinks are actually representations of immersions of non-orientable 2-manifold meshes in 3-space. Figure A.24shows a few immersions from some recent works [5,106]. These woven shapes are 2-fold fabrics that aremapped on surfaces. Here, the number 2 is the thick-ness of the weaving, which is defined as the maximumnumber of cycles intersecting at any point. Using blockmeshes, it is possible to construct k-fold fabrics, wherek can be any positive number. Figure A.23(b) shows ak-fold structure that is obtained from the face-boundarywalk of a block mesh with one vertex, three edges, oneface and one chamber. By using block meshes it is pos-sible to construct more complicated structures such asbraids and many-layered fabrics. This representationalpower can be particularly useful when modeling com-posite materials for engineering applications.

20

Page 21: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

(a) Plain-woven Bunny (b) Twill-woven Bunny

Figure A.24: Two 3-space immersions of the same non-orientablemesh. The resulted woven objects can also be considered as 2-foldfabrics on polygonal meshes. An important challenge is that ourframework should similarly provide different 3-space immersions ofthe same manifolds.

Work is needed on the representations of immersionsof twists. Our current framework cannot differentiateamong 3-space immersions of twists. In general, formodeling fabrics, it is important to differentiate amonga wide variety of possible immersions. Although thisis outside the scope of this paper, we expect that an in-teger attached to 3-edges and 3-faces, similar to the 2-manifold case, could be used to distinguish among im-mersions [106].

Appendix B. Modeling Approaches

The main objective of 3D-GRS is to provide a unifyingmethod for a wide variety of shape-modeling applica-tions. In this section, we provide modeling approachesthat stems from immersions of block meshes. We haveidentified four types of immersions that lead to four dif-ferent modeling approaches: (1) Solid Modeling, (2)Architectural Modeling, (3) High Genus Surface Mod-eling and (4) Knot and link modeling.

A major advantage of 3D-GRS is that all of these ap-plications can be based on the same model with thesame minimal operation set. The only differences comefrom the chosen types of immersion. This approach pro-vides a unified paradigm for designing a wide varietyof shapes and topological objects, from 3D-fractals tok-fold fabrics and knots and links. Another advantageof 3D-GRS is that the high-level operators can be im-plemented using a minimal set of low-level operations.Using these high-level operators, designers can add newtools and methods without having full knowledge of theunderlying kernel. This flexible structure can encouragescientists, engineers and artists to create objects withproperties that are presently unexpected.

Appendix B.1. Solid Modeling with 3D-GRS

A straightforward application of 3D-GRS is solid mod-eling. Representing and modeling solids is particularlyuseful for engineering applications, such as, in finiteelement analysis [54, 44], in discrete exterior calcu-lus [21, 41], or in modeling fractures [81, 80]. If wemake some chambers transparent, the resulting visualstructure describes solids and can be used for modelingsolids.

Having 3D-GRS can extend existing replacement sys-tems into solid modeling by allowing chambers andblocks as additional entities. 2D-GRS is useful forreplacement systems, such as fractal geometry or L-systems [73, 17, 87], by guaranteeing the manifoldproperty (e.g., Akleman created generalized, connected,and manifold versions of the “Sierpinsky tetrahedron”[17] with topological mesh-modeling [96]). 2D-GRSis also useful for face-replacements [67, 66]. Subdivi-sion schemes such as [27, 39]) are also replacement sys-tems, and development of subdivision algorithms with2D-GRS is straightforward [13, 6, 7, 14].

These examples of replacements work on surfaces, andtheir power is limited, based on the elements theycan replace. To obtain more complicated replacementschemes, there is a need to extend these methods to han-dle solid structures. Allowing chambers and blocks pro-vides that additional capability to the replacement sys-tems. For instance, a Menger sponge is a 3D-fractalshape. To represent a 3D Menger sponge [73], we needto interactively remove cube-shaped blocks from theinitial block. In 2-manifold modeling, it is impossible tokeep track of blocks, since they do not exists as separateentities. By way of contrast, in 3D-GRS modeling, wecan develop high-level operators that can simply sub-divide an initial block into a set of blocks. Then theremove operation deletes some of these blocks. Sincethe result of the operation is always a set of blocks, wecan iterate the process to create fractal shapes.

3D-GRS can also help to develop high-level operationsfor general subdivision schemes on block meshes. Ex-isting subdivision schemes for solids are overwhelm-ingly based on hexahedral or tetrahedral meshes (suchas [16, 28, 90]). On the other hand, in 3-space there ex-ist a large number of space-filling polyhedra such as the“gyrobifastigium” [63], which can be used for subdivi-sion. Moreover, some combinations of different kindsof polyhedron (e.g., of tetrahedra and octahedra) can fill3-space [97]. Having a set of minimal operators and amesh representation with generalized blocks can facili-

21

Page 22: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

tate the development of high-level operators for subdivi-sion schemes that allow iterative subdivision of 3-spaceinto space-filling polyhedra.

A 3D-GRS can also specify 1-sided embeddings andimmersions of non-orientable surfaces into 3-space.(For instance, any immersion of a Klein bottle in 3-space is 1-sided.) This flexibility of 3D-GRS is usefulin dealing with unusual shapes. Since 3D-GRS can rep-resent 1-sided surfaces, it can efficiently represent cutssimilar to Ushio’s 1-sided cuts (see Figure 1). Since 1-sided surfaces in 3-space can be thickened, we can rep-resent shapes such as Ushio’s toroidal sculptures withblock meshes. Another advantage of our approach isthat these models can be very simple. For instance, bothof Ushio’s sculptures can be represented by one vertex,four (curved) edges, and two (curved) faces in terms of3D-GRS. The number of blocks can be either one (whenone of the faces is one-sided) or two (when both of thefaces are two-sided) by not counting the outside block.

Appendix B.2. Architectural Modeling with 3D-GRS

Architecture is another important direction for applica-tions, since powerful visualization and modeling sys-tems are needed for the design and construction of rev-olutionary types of shapes for buildings and sculptures.Architects already explore such interesting forms, butthe design and construction process is still very costly.For the design of shapes, architects use a wide varietyof approaches. For instance, Frank Gehry’s designs arecreated by using free-form surfaces [18, 85] (i.e., de-fined by control parameters, such as a Bezier or B-splinesurface). Examples of Gehry-designed buildings are theDisney Concert Hall in Los Angeles and the Guggen-heim Museum in Bilbao, Spain. The shape of the Kun-sthaus, Graz Art Museum, designed by Peter Cook andColin Fournier is given by an implicitly defined surface[40]. Classical graph rotation systems, 2D-GRS, al-ready have the power to provide both free-form and im-plicit surfaces. With graph rotation systems along withsubdivision schemes [27, 39], it is possible to obtainshapes that correspond to implicit surfaces, by allow-ing the topology to change during interactive modeling,as described in [10, 12, 11].

A 3D-GRS model is directly applicable to designing ar-chitectural shapes, since a 3D-thickened 3D-GRS canrepresent the kind of architectural structures that can bebuilt. If we model rooms by chambers, then these cham-bers serve as a design for a building. As discussed be-fore, a 3D-thickening of the 3-vertices, 3-edges, and 3-

faces turns them into balls, beams, and plates. In archi-tectural modeling, plates can correspond to walls, win-dows, or doors of a building. More importantly for ar-chitectural modeling, we can label the faces to differen-tiate between different kinds of architectural elements,such as doors or walls.

Appendix B.3. High-genus Modeling with 3D-GRS

Restricting the “geometric” 3D-thickening to verticesand edges corresponds to Schlegel diagrams [33], whichare used by mathematical sculptors to visualize regu-lar convex 4-dimensional polytopes such as the 120-cell [33]. In 3D Schlegel diagrams, edges are drawn ascylinders, using construction tools such as Zome-tool[57]. In the new method, by way of contrast, thick-ened edges turn into prisms that may be curved andtwisted. This gives us additional modeling capacity, be-yond Schlegel diagrams.

The resulting shapes can be of very high genus, andreminiscent of the creations of contemporary sculptors,such as George Hart [53], Eva Hild, Rinus Roelofs,Helaman Ferguson [42], Bathsheba Grossman, BrentCollins, and Carlo Sequin [78], who successfully com-bine art and mathematics to create unusual sculpturessuch as infinite polyhedra. These sculptures have closerelations with mathematical ideas such as space-fillingpolyhedra [105], periodic and symmetric polyhedra[105, 32], regular maps [30, 31], and regular meshes[8, 9]. We have also developed a method to constructregular meshes. Recently, J. van Wijk discovered an-other general method to create regular maps [101, 94].Since space-filling polyhedra and infinite symmetricpolyhedra can be used in solid representation for effec-tive partition of 3-space, these methods can eventuallybe useful in engineering and scientific analysis.

Appendix B.4. Knot and link modeling and k-fold wo-ven fabrics

Akleman et al. [4] describe how the face-boundarywalks of a 2-manifold mesh in 3-space with edge-twisting are cycles (closed 3D-curves) that correspondto knots and links in 3-space [88, 45]. When we 2D-thicken these cycles within the underlying surface forthe mesh, the resulting face-boundary walks correspondto threads of a weaving. This allows a 2D-GRS on anon-orientable 2-manifold to be used to specify a 2-foldfabric as a link (or a knot) immersed on a closed ori-entable surface in 3-space, so that there are never morethan two strands crossing each other at any given point

22

Page 23: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

Figure B.25: This figure demonstrates how a cube-shaped block can be subdivided into two with our operations. (A) shows the initial structure,where each circle represents a 3-vertex, and each line represents a 3-edge. For the initial structures, we did not draw 3-faces, in order to showthe structure. (B) shows four new 3-vertices that are created by SubdivideEdge operations. (C) shows four new 3-edges that are created byInsertEdgePipe operations. These 3-edges subdivide the original 3-faces. (D) shows a 3-face that is created by ChamberSplit operation. Thisoperation subdivides the whole block into two blocks, whose boundaries are rectangular prisms.

Figure B.26: This figure demonstrates how a structure with unresolvable self-intersections can be created by our operations. (A) shows the initialstructure, which is the shape we obtained in Figure B.25(d). (B) shows four new 3-vertices that are created by SubdivideEdge operations. (C)shows four new 3-edges that are created by InsertEdgePipe operations. Unlike the case of Figure B.25, here insertion of edges combines the two3-faces. As a result, the two chambers also combined, resulting in a genus-1 surface. Visually there is a self-intersection. We can resolve thatself-intersection by transforming the shape. (D) shows a 3-face that is created again by ChamberSplit operation. However, this operation does notsubdivide the block into two since it is applied to a non-contractible cycle. The resulting self-intersection cannot be resolved in 3-space.

Figure B.27: This figure demonstrates how similar-looking structures can be quite different topologically. (A) shows the initial structure, which isthe shape obtained in Figure B.25(d). (B) shows six new 3-vertices created by SubdivideEdge operations. (C) shows six new 3-edges created byInsertEdgePipe operations. Each inserted edge subdivides the face to which it belongs, since it is inserted between two corners of the same 3-face.Note that the 3-face drawn as a green wall is also subdivided into two. (D) shows two 3-faces created by two ChamberSplit operations. In thiscase, the operations subdivide the underlying blocks, since they are applied to contractible cycles. The result is four blocks inside the original cube.

23

Page 24: Block Meshes: Topologically Robust Shape Modeling with ...gross/...ACG-CompGraphics.pdf · Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun

of the surface. (See [48, 49] for discussion of 2-foldfabrics.) Since an edge has only two incident faces ina surface, only a 2-fold fabric can be created by twist-ing edges of a 2-manifold mesh for that surface. Fig-ure A.24 shows two examples of such surfaces. By wayof contrast, twisting the edges of a block mesh withina 3D-GRS yields a k-fold fabric, since the number ofincident faces on each edge can be any integer k ≥ 2.

Appendix C. Examples

In this section, we give three examples that demon-strate how these operations can be used to manipulatethe topology of the block meshes. We also show thatit is possible to create unresolvable self-intersections,even with simple operations. As discussed earlier, 3D-thickenings are just conceptual, and 3D-vertices looklike points; i.e. all green edges are of zero length. 3D-edges are curve segments and each purple edge in thering has exactly the same shape. 3D-faces look likeinfinitely thin sheets. In these examples, we draw 3-vertices as circles and 3-edges as black line-segments.We did not draw some faces, and the ones we drew areslightly transparent to reveal the structure.

Our first example, shown in Figure B.25, demonstrateshow a cube-shaped block can be subdivided into twowith our operators. Figure B.26 demonstrates how astructure with unresolvable self-intersections can eas-ily be created with simple operations. We also demon-strate how the structures that are significantly differentcan be visually similar (see Figures B.26 and B.27). Itis therefore important to provide higher level operatorsfor practitioners.

It is also possible to create interesting operations usingtwist operations. For instance, a 1-twist applied to oneof the boundary edges of the green quadrilateral in Fig-ure B.25 combines all blocks into one, by creating a sin-gle chamber from three chambers.

24