Representing Geometric Structures in d Dimensions: Topology and Order
1. Representing Geometric Structures in d Dimensions: Topology and Order
Erik Brisson1
Department of Computer Science
University of Washington
Seattle, Washington 98195
1.1. Abstract
We develop a representation for the topological structure of subdivided manifolds (with and without boundary) of dimension which allows straightforward access of the available order information. It is shown that there exists a large amount of ordering information in subdivided manifolds: given a -cell in the boundary of a -cell, , all of the - and -cells 'between them' can be ordered 'around' the -cell. This includes the usual orderings in 2- and 3-dimensional objects. We introduce the 'cell-tuple structure', a simple, uniform representation of the incidence and ordering information in a subdivided manifold. It includes the quad-edge data structure of Guibas and Stolfi [GS 85] and the facet-edge data structure of Dobkin and Laszlo [DL 87] as special cases in dimensions 2 and 3, respectively.
1This work was supported by the National Science Foundation, under grant CCR-8657562, and Digital Equipment Corporation.
Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appear, and notice is given that copying is by permission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specific permission.
1.2. 1 Introduction
A traditional method of representing geometric objects is as a collection of simple building blocks along with a relation between them. For instance, the building blocks could be simplices or convex polytopes of various dimensions, and the relation could be incidence. One might implement such a description by a separate instance of a data structure for each building block, and a monolithic data structure for the relation. Alternatively, it is possible to use a single type of basic unit, and represent both the building blocks and the relation implicitly. The aim of this paper is to investigate such alternative data structures in the general case of , representing both topological structure and available ordering information in a simple, uniform way.
Subdivided manifolds: Let be a topological -manifold, and a finite collection of disjoint open -cells whose union is (for , is an open -cell if it is homeomorphic to the open unit -ball). Informally, the pair is a subdivided -manifold if the boundary of every -cell is non-self-intersecting and is equal to a union of cells in of lower dimension.
Examples of subdivided manifolds:
The diagram shows two manifolds. On the left is a 2-sphere, represented as a circle with a dashed line indicating its 3D nature. On the right is a Klein bottle, represented as a square grid with labels. The grid is divided into four quadrants labeled A, B, C, and D. The top-left quadrant (A) contains labels 7, A, 3, B, 8. The top-right quadrant (B) contains labels c, 5, d, 6, c. The bottom-left quadrant (C) contains labels b, 1, a, 2, b. The bottom-right quadrant (D) contains labels 8, C, 4, D, 7. The grid is surrounded by arrows indicating its topology.
is a 2-sphere
is a Klein bottle
A 3D wireframe diagram of a rectangular prism with a triangular prism attached to its top surface, representing a 3-manifold-with-boundary.
is a 3-manifold-with-boundary
The cell-tuple structure: We will define the cell-tuple structure, which represents a subdivided -manifold as a set of -tuples acted on by simple operators for . Theorem I will show that two subdivided manifolds are topologically equivalent if and only if their cell-tuple structures are equivalent. The cell-tuple structure may be thought of as: a set of tuples, acted on by a uniform set of operations following simple algebraic rules; as a graph with labelled edges; or as a triangulation of the underlying manifold. It may be implemented as a relational database or as a pointer structure. Because of its uniformity, one implementation may be written for all values of .
Ordering: Many algorithms in computational geometry have made use of ordering information. Two examples are the three dimensional convex hull algorithm of Preparata and Hong [PR 77], and the Delaunay diagram algorithm of Guibas and Stolfi [GS 85]. Both
give optimal divide-and-conquer algorithms using ordering in 2-dimensional subdivisions. Some examples of ordering:
A 2D diagram showing a triangulation of a polygon. Two vertices are labeled A and B. Arrows indicate the ordering of cells around these vertices.
In two dimensions
A 3D diagram showing a cube with internal diagonals. Three vertices are labeled A, B, and C. Arrows indicate the ordering of cells around these vertices.
In three dimensions
In case A, we are ordering 1- and 2-cells about a 0-cell, and in case B we are ordering 0- and 1-cells 'within' a 2-cell. In case C, we are ordering 2- and 3-cells about a 1-cell, in case D we are ordering the 1- and 2-cells within a 3-cell and about a 0-cell, and in case E we are ordering 0- and 1-cells within a 2-cell. All of these cases will be put into one framework, and Theorem II will show that this type of ordering information exists for all .
Manifolds-with-boundary: The objects being modelled in applications often have boundaries. To be useful, any representation of geometric structures must be able to handle objects with boundaries as elegantly and uniformly as those without boundaries. The definition for a subdivision of a manifold-with-boundary is similar to that for the subdivision of a manifold.
The dual subdivision: For every -cell in , a dual -cell can be defined, giving the dual subdivision. There is a 1-1 correspondence between the original cells and the dual cells, and incidence and order are preserved when going to the dual. It is often useful to maintain both the original subdivision and its dual simultaneously, and to be able to access both with equal ease. For instance, the Voronoi diagram and Delaunay diagrams are dual to each other, as are the convex hull and halfspace intersection. Producing one implicitly produces the other.
Previous work: Guibas and Stolfi [GS 85] pioneered the idea of such alternatives with the introduction of the ‘quad-edge data structure’ for the representation of subdivisions of 2-manifolds (without boundaries). Dobkin and Laszlo [DL 87] defined an analogous structure, the ‘facet-edge data structure’, to represent subdivisions of 3-manifolds which are homeomorphic to open or closed unit 3-balls. Both the quad-edge and facet-edge data structures represent their subdivisions up to topological equivalence, represent the dual and original subdivisions in a similar fashion, and allow cell boundaries to self-intersect under appropriate restrictions. Note that our definition allows a larger class of manifolds, by allowing arbitrary manifolds with or without boundary, but restricts the class of cells by not allowing self-intersecting cell boundaries.
1.3. 2 The Cell-Tuple Structure
In this section we will define a partial ordering on the set of cells, introduce the switch operator, and define the cell-tuple structure. Then we will state Theorem I, give several characterizations of the cell-tuple structure, and briefly discuss implementation.
We gave an informal definition of subdivided manifolds in the introduction. Using terminology from algebraic topology, a subdivided -manifold is a finite, regular CW complex whose underlying space is the topological -manifold . (The reader is referred to [Br 88] for details, and to [Mu 75] and [Mu 84] for definitions of basic topological terms.) If is contained in the boundary of we will write , and say that is a face of . In addition, , we will write , and say that and are incident. Two subdivided -manifolds are equivalent if there is a homeomorphism between and carrying -cells onto -cells. For notational convenience, we assume the existence of a cell of dimension and a cell of dimension , such that for all . This is notation only; for example, when we write , where , it will be understood that if , this simply means , and if , it means .
An important fact, interesting in its own right, is given by the following lemma.
Lemma 1: If is a subdivided -manifold, , where , , and , then there is a unique such that .
Proof : See Appendix or [Br 88]. ■
Under the conditions of this claim, define the switch operator, . For example, in the Klein bottle example, , , and .
If , then the -tuple will be called a cell-tuple. The set of all cell-tuples formed by cells in will be denoted by . If is a cell-tuple and , we denote the component by . If , define , where . The cell-tuple structure, , is simply the set of cell-tuples taken with the operations, for . Pictorially, each cell-tuple can be thought of as a dot in cell , ‘near’ each of the cells . The following figures illustrate this for the 2-sphere example pictured in the introduction:
(M, C)
as dots, with ,
Two cell-tuple structures are equivalent if there is a bijection which preserves the switch operation, by which we mean . The following theorem shows that the cell-tuple structure represents subdivided manifolds up to equivalence:
Theorem I: If and are subdivided -manifolds, then and are equivalent if and only if and are equivalent.
Proof : See Appendix or [Br 88]. ▀
It is useful to think of as an undirected graph with labelled edges. The vertex set is , and two vertices and are joined by an edge labelled if (the edges are well-defined, as for all ). This allows the use of results from graph theory, and the application of graph algorithms.
If , define
If , define , and let be . In terms of the graph, is the set of all vertices reachable from using edges whose labels are in . Let . Then .
If is a -cell of , the set of cell-tuples will be called the set of associated cell-tuples of . The next lemma describes the basic relationship between cells of and orbits in :
Lemma 2: There is a 1-1 correspondence between -cells and -orbits: if is a -cell, and such that , then .
Proof : See Appendix or [Br 88]. ▀
Examples of assoc
The following lemma, interesting in its own right, gives an algebraic characterization of , and will prove useful in connecting to earlier work:
Lemma 3: If and , then:
Proof : See Appendix or [Br 88]. ■
A natural way to implement a data structure for is by creating two -vectors for each cell-tuple . The entry in the first vector represents the cell , and the entry in the second vector points to . The cell-vectors may be thought of as forming a database, allowing relational queries, and graph algorithms may be applied to the pointers in the switch-vectors.
For instance, if is a -cell, may be obtained by a relational query asking for all cell-vectors whose entry is . Alternatively, by choosing a cell-tuple such that , a depth-first search of all edges of whose label is not gives in linear time, since . Either method gives a way of accessing incidence information.
The set of cells forming the boundary of a cell may be formed in a similar way, by either a relational query or a graph search. If then the boundary of a -cell is a -subdivided manifold, and a -dimensional cell-tuple structure may be created for the boundary by creating , where , and simply ignoring all but the first entries of the cell-tuples. Taken in reverse, this gives a natural way of building objects recursively (on dimension) by constructing boundaries of -cells, associating these boundaries with -cells, and then attaching these to each other by 'identifying faces' to give a subdivided -manifold.
Two important issues which will be explored in future work are the size of the cell-tuple structure, and the maintenance of the connection between topological structure and geometric information.
1.4. 3 Order Information in the Topology
The examples of ordering given in the introduction may be put into one framework, and generalized to the general case of . If , where , is a -cell, and is a -cell, let
It is this set which can be ordered. Note that in the cases that and , the cells
and , respectively, are only notational conveniences — only one actual cell is specified, as long as . In the special case of , it must be that , , and ; a circular ordering is possible only if is connected. This is the only exception which must be treated separately.
Let . A circular ordering of is an ordering of its cells such that:
- (1) is a -cell if is even, and is a -cell if is odd,
- (2) and are incident for .
(A more descriptive way of stating condition (2) is to say that and 'share' .)
The idea is that given a -cell contained in the boundary of a -cell, all of the cells 'between' them may be put into a circular order 'around' the -cell. This order alternates between -cells and -cells so that two cells are consecutive in the ordering if and only if they are incident. Recalling the Klein bottle example, one possible circular ordering of is . The reason this idea is not more obvious when trying to generalize from two and three dimensions is that of the five cases, namely and , only one case specifies two cells; in the other four, either or . Theorem II shows that circular orderings involving - and -cells are always present for , and that the cell-tuple structure contains this ordering information in a directly accessible form via the switch operator.
Theorem II: Under the conditions given above there exists a circular ordering of . Furthermore, if such that and , define
Then is a circular ordering of .
Proof : See Appendix or [Br 88]. ■
This gives a straightforward way of accessing order information by alternating applications of switchk and switchk-1.
1.5. 4 Extensions
1.5.1. 4.1 Manifolds-with-Boundary
In generalizing the cell-tuple structure from manifolds to manifolds-with-boundary, the problem is that is not defined when . Stated in terms of cell-tuples, is not defined if .
There are two possible approaches. The first is to set to some special value in the undefined cases, indicating that an attempt was made to 'pierce the boundary.' Then the definition of circular ordering may be modified so that when and , the ordering is a simple path rather than a simple cycle. The theorems may then be proved as before.
The second approach may be described intuitively as imagining that the space 'outside' of the -manifold-with-boundary is simply another -cell (though in general, the complement of a -manifold-with-boundary embedded in is not a -cell). An abstract object is added to , such that for every contained in , . Now may be defined as before on the set , and all of the results for subdivided manifolds can be proved for subdivided manifolds-with-boundary (see [Br 88] for details). In addition, this makes it possible to find the 'next' cell on the boundary. An example of circular ordering at the boundary:
The diagram shows two approaches to handling manifolds-with-boundary. The first approach shows a V-shaped region with cells and cell-tuples . The second approach adds a cell to the first approach, showing a similar V-shaped region with an additional cell and cell-tuples .
1.5.2. 4.2 The Dual Complex
For every -cell in , a dual -cell can be easily defined (see [Br 88]). There is a 1-1 correspondence between original cells and dual cells, and incidence and order are preserved when going between the original and the dual. The cell-tuple structure maintains both the original and dual complexes simultaneously. To operate in the dual, note that in the original subdivided manifold is the same thing as in the dual. Thus the same ordering results apply in the dual, by replacing with , and one way to think of operating on the dual is to think of substituting for every use of .
An alternative, which will make the connection with earlier work straightforward, is to introduce a new operation which reverses the order of a cell-tuple's entries, , and define . Thus maps onto and vice versa.
The diagram illustrates the operation. It shows a V-shaped region with cells and cell-tuples . The diagram shows the original cell-tuple and the dual cell-tuple after applying .
Examples of
Consider the set of tuples , acted on by and . A new property may be added to (CT0) – (CT3) of Lemma 3:
(CT4) .
1.5.3. 4.3 The Augmented Incidence Poset
If is a subdivided manifold, the relation is a strict partial ordering on . The resulting partially ordered set represents the topology of ; a theorem analogous to Theorem I may be proved. This is essentially the same thing as the familiar incidence graph. By adding the operation, all ordering information becomes directly accessible — given , a circular ordering is obtained by applying a sequence of operations: if and then
gives a circular ordering of . Such and always exist.
Any data structure for representing graphs will suffice to represent the incidence poset. The operator may be represented for any subset of ; for a given , this means representing a function whose domain is the set of all cell-triples and whose range is the set of -cells. This may be an advantage if ordering information is needed in only a small number of dimensions. If is included for all , the resulting augmented incidence poset contains all of the ordering information via the switch operations.
1.6. 5 Relation to Earlier Work
1.6.1. 5.1 The Quad-Edge Data Structure
Guibas and Stolfi [GS 85] introduced the quad-edge data structure for the representation of subdivided 2-manifolds (without boundaries), in which cell boundaries are allowed to self-intersect under appropriate restrictions. Subdivisions are represented up to equivalence, and the dual subdivision is represented in a symmetric fashion to that of the original subdivision. Four ‘directed, oriented edges’ are produced for each edge in the original and dual subdivisions, corresponding to the four ways of giving direction and orientation to the edge. We will draw a directed, oriented edge as a large arrow giving the direction, with a small arrow sticking from its side giving the orientation (which direction ‘to rotate in’). There are three operations defined on directed, oriented edges: Flip reverses the orientation, Rot essentially rotates about the midpoint by 90 degrees (into the dual), and Next gives the next directed, oriented edge encountered when rotating about the larger arrow’s base. These operations satisfy ten algebraic rules.
Eight directed, oriented edges
Examples of Flip, Rot, and Next
Corresponding section of
There is a 1-1 correspondence between directed, oriented edges in the quad-edge data structure and cell-tuples in . A cell-tuple represents a directed, oriented original edge: gives the edge, gives the direction (as the base of the larger arrow), and gives the orientation (which face the little arrow points into). Similarly, if , represents a directed, oriented dual edge, by taking the duals of and . The connection between the operations in the two structures is given by: , , . To show that the quad-edge data structure and are equivalent on the structures for which they are both defined (subdivided 2-manifolds as defined in this paper) means showing that the properties (CT0) – (CT4) hold if and only if the ten rules for quad-edge operations hold. It is interesting to note that the explicit inclusion of dual elements is not necessary in the quad-edge data structure for representational power. Using only directed, oriented original edges, and the operations Next, Flip and Sym ( can be written as ) gives a structure equivalent to .
1.6.2. 5.2 The Facet-Edge Data Structure
Dobkin and Laszlo [DL 87] created the facet-edge data structure to represent subdivided 3-manifolds, which is analogous to the quad-edge data structure. For every (face, edge) pair such that the face and edge are incident, there are four ‘facet-edges’, corresponding to the ways of defining ‘clockwise’ directions within the face, and around the edge. Similar basic units are created for pairs in the dual. An original facet-edge may be represented by a cell-tuple as follows: gives the edge, gives the face, gives the direction within the face, and gives the direction around the edge. A similar representation holds for dual pairs and dual cell-tuples. The basic operations can be rewritten in terms of the switch operations: , , , , . The underlying spaces are 3-manifolds which are homeomorphic to open or closed unit 3-balls, and cell boundaries are allowed to self-intersect under appropriate restrictions.
Acknowledgement: I would like to thank my advisor, Richard Anderson, for introducing me to [GS 85] and for his continuing help, support, and encouragement.
1.7. Appendix – Proofs
In this appendix we will give proof sketches for the lemmas and theorems.
Define an order relation on the index sets to agree with on cells: If , then . Also, let . Let denote the resulting incidence poset on indices. Two such posets and are equivalent if there exists a bijection between their index sets preserving and . We briefly describe a method of triangulating a subdivided manifold, such that there is a 1-1 correspondence between cell-tuples and -simplices. This allows the use of theorems from algebraic topology which apply to triangulated manifolds, when proving properties of . If is a subdivided -manifold or a subdivided manifold-with-boundary, define . is an abstract simplicial complex. Two such abstract simplicial complexes and are equivalent if there exists a bijection between their vertex sets which preserves and simplices. Let be any geometric realization of (which always exists by [Mu 84] Theorem 3.1.a), and let be its underlying space. For each , let be the corresponding vertex in , and define . Let be the -simplex defined by . and are equivalent if there exists a linear simplicial map which is bijective and preserves label. The following lemma makes an important connection between any such and :
Lemma 4: If is a subdivided -manifold
or a subdivided -manifold-with-boundary, then such that:
- (a) is a homeomorphism,
- (b) ,
where , and the set of sequences over which the union is taken includes the sequence consisting only of .
Proof : A construction of such a is given in the proof sketch of [LW 69] Theorem III.1.7. A construction is also given in [Br 88]. ■
Let . is a subdivided manifold itself, which will be called the generalized barycentric subdivision of . (Note that this generalization is different than that given in [Mu 84], and that the generalized barycentric subdivision in two dimensions is called the ‘completion’ in [GS 85].) Because the characteristic maps which define are not part of the definition of subdivided -manifolds, the barycentric subdivision is not unique, but is unique up to equivalence.
By their definitions, there is a 1-1 correspondence between the cell-tuples in and the -simplices in : corresponds to . Furthermore, if , and are the corresponding -simplices in , then is a -simplex labelled by . Using this, and [Mu 84] exercise 35.4, it is easy to prove that if , then there exists a such that , . Lemma 1 follows from this correspondence, the definition of cell-tuples, and [Mu 84] exercise 35.4.
We can now sketch the proof for a generalization of Lemma 2. First generalize the definition of assoc: If , then . If , let .
Lemma 2': If , and such that , , then , where .
Proof (sketch) : To see that is easy: If , then doesn't change for any . So if , for any , then for all , i.e. .
That follows from this claim: If , where , and , then the subgraph of induced by is connected and its edges are all labelled by elements of . This claim is proved by first showing that in is a compact triangulated relative homology -manifold. Then connectivity follows from [Mu 84] Corollary 70.3 and the correspondence between cell-tuples and -simplices. If , then they agree on all components in , so that if , then . This gives the claim. Details in [Br 88]. ■
Now we can prove Lemma 3.
Lemma 3: If and , then:
- (CT0) and ,
- (CT1) ,
- (CT2) if , s.t. ,
- (CT3) if , then .
Proof : CT0 and CT1 follow from Lemma 1 and the definition of switch.
Let , and . Let for , so that . The subgraph of induced by is connected, by Lemma 2'. Since every vertex is incident to exactly one edge labelled and one labelled , this subgraph is a cycle, with alternating edges labelled and . If , this gives CT2. If , then there are exactly two -cells , satisfying and there are exactly two -cells , satisfying . Thus has exactly four elements. This gives CT3. ■
We give a generalization of Theorem I, which shows that both the cell-tuple structure and the incidence poset are powerful enough to represent subdivided manifolds up to equivalence. For each of the structures discussed, the symbol means 'is equivalent'.
Theorem I': If and are subdivided -manifolds, then the following are equivalent:
- (1) ,
- (2) ,
- (3) .
Proof (sketch) :
: Let give an equivalence between and . Define an equivalence by .
: Let give an equivalence between and . First show that preserves simplices, hence gives an equivalence between and . The result then follows from [Mu 84] Theorem 3.1.b, when it is noted that the isomorphism produced there preserves labels.
: Let give an equivalence between and . Let and be maps giving generalized barycentric subdivisions. These exist by Lemma 4. Define by . This is a composition of homeomorphisms, so is a homeomorphism. Now show that takes -cells onto -cells, using Lemma 4, the definition of , and the fact that is an equivalence.
: Let be an equivalence between and . Define by . The desired properties follow from the 1-1 correspondence between maximal paths in and cell-tuples in , and the fact that if and only if and agree on all components except the .
: Let give an equivalence between and . Define by . If is a -cell, and such that , then for a unique -cell . This, and the fact that (as a function from to ) is bijective with its range, gives , so is well-defined and preserves dim. is bijective, since is bijective with its range, and and are bijective. To show that preserves order, use these two facts: ; and and .
See [Br 88] for details. ■
Finally, Theorem II follows from Lemma 2' in the same way that property (CT2) of Lemma 3 did.
1.8. References
- [Br 88] Brisson, Erik, "Representing Geometric Structures in Dimensions: Topology and Order," Tech. Report 88-11-07, Dept. of Computer Science, Univ. of Washington, 1988.
- [DL 87] Dobkin, David P. and Laszlo, Michael J., "Primitives for the Manipulation of Three-Dimensional Subdivisions," Proc. 3rd ACM Symp. on Comp. Geometry, 1987. pp. 86-99.
- [GS 85] Guibas, Leonidas and Stolfi, Jorge, "Primitives for the Manipulation of General Subdivisions and the Computation of Voronoi Diagrams," ACM Trans. Graphics, Vol. 4, No. 2, 1985. pp. 74-123.
- [LW 69] Lundell, Albert T. and Weingram, Stephen, The Topology of CW Complexes, Van Nostrand Reinhold, 1969.
- [Mu 75] Munkres, James R., Topology: A First Course, Prentice-Hall, 1975.
- [Mu 84] Munkres, James R., Elements of Algebraic Topology, Addison-Wesley, 1984.
- [PR 77] Preparata, F. P. and Hong, S. J., "Convex Hulls of Finite Sets of Points in Two and Three Dimensions," Comm. of the ACM, Vol. 20, No. 2, 1977. pp. 87-93.