## Designing a Data Structure for Polyhedral Surfaces (1998)

### Cached

### Download Links

- [www.cs.unc.edu]
- [www.cs.unc.edu]
- [www.mpi-sb.mpg.de]
- DBLP

### Other Repositories/Bibliography

Venue: | In Proc. 14th Annu. ACM Sympos. Comput. Geom |

Citations: | 30 - 2 self |

### BibTeX

@INPROCEEDINGS{Kettner98designinga,

author = {Lutz Kettner},

title = {Designing a Data Structure for Polyhedral Surfaces},

booktitle = {In Proc. 14th Annu. ACM Sympos. Comput. Geom},

year = {1998},

pages = {146--154}

}

### Years of Citing Articles

### OpenURL

### Abstract

Design solutions for a program library are presented for combinatorial data structures in computational geometry, such as planar maps and polyhedral surfaces. Design issues considered are genericity, flexibility, time and space efficiency, and ease-of-use. We focus on topological aspects of polyhedral surfaces. Edge-based representations for polyhedrons are evaluated with respect to the design goals. A design for polyhedral surfaces in a halfedge data structure is developed following the generic programming paradigm known from the Standard Template Library STL for C++. Connections are shown to planar maps and face-based structures managing holes in facets. 1 Introduction Combinatorial structures, such as planar maps, are fundamental in computational geometry. In order to use computational geometry in practice, a solid library must provide generic and flexible solutions as one of its fundamental cornerstones. Other design criteria are time and space efficiency. Ease-of-use is necessar...

### Citations

5269 | Design patterns: elements of reusable objectoriented software - Gamma, Helm, et al. - 1995 |

1496 | The C++ Programming Language
- Stroustrup
- 1997
(Show Context)
Citation Context ...e time during the template instantiation, no need for extra storage or additional indirections during function calls, and full support of inline member functions and code optimization at compile time =-=[32]-=-. One disadvantage is the lack of a formal scheme in the language for expressing the requirements of template arguments, the equivalent to the virtual base class in the object-oriented programming par... |

972 | O.: Computational Geometry: Algorithms and Applications - Berg, Kreveld, et al. - 1997 |

637 | LEDA: A platform for combinatorial and geometric computing
- Mehlhorn, Naher
- 1995
(Show Context)
Citation Context ...nique explored for this in CGAL is an extension of the traits classes [26] known from the C++ standard library, see [7, 9, 3]. 6 Previous Work The Library of Efficient Datatypes and Algorithms (LEDA) =-=[22, 23]-=- contains no data structure tailored for three-dimensional polyhedrons, but it provides a general data structure for graphs and one for planar maps derived from graphs. Additional information can be a... |

456 | Primitives for the Manipulation of General Subdivisions and the Computation of Voronoi Diagrams - Guibas, Stol - 1985 |

266 |
An Introduction to Solid Modeling
- Mäntylä
- 1988
(Show Context)
Citation Context ...edral Surfaces A boundary representation of a polyhedral surface consists of a set of vertices V , a set of edges E, a set of facets F and an incidence relation on them. Introductions can be found in =-=[13, 21]-=-. For a living example see Figure 1. The two types of boundary representations are 2-manifold and non-manifold surfaces. A 2-manifold surface is a surface where for each point on the surface there exi... |

157 | Geometric and Solid Modeling: An Introduction - Hoffmann - 1989 |

140 | A Polyhedron Representation for Computer Vision - Baumgart - 1975 |

117 |
The STL Tutorial and Reference Guide: C++ Programming with the Standard Template Library
- Musser, Derge, et al.
- 2002
(Show Context)
Citation Context ...entations. In the second part we start with a short introduction to the modern design principles available in C++ and known as the generic programming paradigm from the Standard Template Library, STL =-=[4, 25, 29]-=-. We derive design goals and evaluate previous work. We continue with an overview of our design, present several aspects in more detail and conclude with its evaluation. The two main advantages of our... |

87 |
Edçe-Based Data Structures for Solid Modeling in Curved-Surface Environment
- Weiler
- 1990
(Show Context)
Citation Context ...e when the surface is seen from the outside. This data structure is able to model orientable 2-manifolds. It is even sufficient for curved-surface environments where loops and multi-edges are allowed =-=[33]-=-. The basic operations include traversal around a vertex and around a facet. High-level operations maintaining integrity are Euler operators. The next edge counterclockwise around a vertex v for an ed... |

80 |
Vorlesungen über die Theorie der Polyeder unter Einschluss der Elemente der Topologie. Reprint der 1934 Auflage. Grundlehren der Mathematischen Wissenschaften
- Steinitz, Rademacher
- 1976
(Show Context)
Citation Context ...nts between their two endpoints and the facets are simple, planar polygons. Other classes might allow curved surfaces as facets. We now present a definition for polyhedral surfaces following Steinitz =-=[30]-=-. It is the basis for the combinatorial integrity definition of the polyhedral surface data structure and will lead to a stricter class of representable surfaces, which provides more insight in the co... |

64 |
Traits: a new and useful template technique
- Myers
- 1995
(Show Context)
Citation Context ...l issues will appear when considering geometry, for example flexibility with the point type and the geometric predicates. One technique explored for this in CGAL is an extension of the traits classes =-=[26]-=- known from the C++ standard library, see [7, 9, 3]. 6 Previous Work The Library of Efficient Datatypes and Algorithms (LEDA) [22, 23] contains no data structure tailored for three-dimensional polyhed... |

63 |
Finding the Intersection of Two Convex Polyhedra
- Muller, Preparata
- 1978
(Show Context)
Citation Context ...he traversal around a vertex or facet is no longer uniquely defined [33]. The winged-edge data structure where the wings PCCW and NCCW are omitted has been called Doubly Connected Edge List (DCEL) by =-=[24]-=- though this name is now more commonly used for the halfedge data structure [5]. 3 The two symmetric parts in the winged-edge correspond to the two possible orientations of the edge. The inefficient c... |

48 | The CGAL kernel: a basis for geometric computation - Fabri, Giezeman, et al. - 1996 |

42 |
Inside the C++ Object Model
- Lippman
- 1996
(Show Context)
Citation Context ...mory to each object derived from the base class (the so-called virtual function table pointer) and it adds an indirection through the virtual function table for each call to a virtual member function =-=[20]-=-. The latter one is of particular interest when considering runtime performance since virtual member functions can usually not be made inline and are therefore not subject to code optimization within ... |

35 |
Designing the computational geometry algorithms library CGAL
- Overmars
- 1996
(Show Context)
Citation Context ...er of a design accessible and to attract users. We report a solution proposed for the Computational Geometry Algorithms LibrarysCGAL 1 , which is a joint effort of seven academic institutes in Europe =-=[7, 6, 27]-=-. We focus on edge-based representations of three-dimensional polyhedral surfaces and illustrate connections to planar maps and face-based structures, which may have holes in their facets. We concentr... |

24 | VRML: The virtual reality modelling language version 1.0 specification - Bell, Parsis, et al. - 1995 |

20 | Contour edge analysis for polyhedron projections
- Kettner, Welzl
- 1997
(Show Context)
Citation Context ...rict properties imposed by the definitions: For example the definition for contour-edges is based on the orientable 2manifold property, and the lack of holes in facets simplifies certain algorithms 2 =-=[18]-=-. An initial implementation of the data structure made it easy to compute the silhouette for a polyhedral surface [14]. The extension of this data structure design and their advantages are presented i... |

11 |
Large Scale C++ Software Design
- Lakos
- 1996
(Show Context)
Citation Context ...face and the flexibility at runtime. There are four main disadvantages: This paradigm cannot provide strong type checking at compile time, enforces tight coupling through the inheritance relationship =-=[19]-=-, it adds additional memory to each object derived from the base class (the so-called virtual function table pointer) and it adds an indirection through the virtual function table for each call to a v... |

9 | Maintaining winged-edge models - Glassner - 1991 |

4 | Modellierung der Grundlagen: Erweiterbare Datenstrukturen zur Modellierung und Visualisierung polygonaler Welten - Bendels, Fellner, et al. - 1995 |

4 | Getting started with CGAL - Giezeman, Veltkamp, et al. - 1998 |

3 |
The standard template library. http://www.cs.rpi.edu/ ~musser/doc.ps
- Stepanov, Lee
- 1995
(Show Context)
Citation Context ...e prev() function is now implemented, the find prev() function simply calls it. This distinction can be resolved at compile time with a technique called compile-time tags, similar to iterator tags in =-=[31]-=-. The Polyhedron layer adds ease-of-use in terms of highlevel functions, high-level concepts for accessing the items, i.e. handles, iterators and circulators (pointers are no longer visible at this in... |

3 | Line-Sweep auf einem Gitter - Hoffmann - 1996 |

2 |
Geomview Manual: Geomview Version 1.5 for Silicon Graphics Workstations. The Geometry
- Phillips
- 1994
(Show Context)
Citation Context ...ology and the efficiency of their primi2 And holes are not represented in the file-formats that occur usually in visualization, for example VRML [12], Open Inventor [34] or the Object File Format OFF =-=[28]-=-. These consist of a list of vertices followed by a list of facets. Each facet is a list of indices denoting a subset of the points. Edges are not explicitly stored but can be derived from the vertice... |

2 |
The Inventor Mentor: Programming Object-Oriented 3D Graphics with Open Inventor, Release 2
- Wernicke
- 1994
(Show Context)
Citation Context ... their sufficiency for modeling topology and the efficiency of their primi2 And holes are not represented in the file-formats that occur usually in visualization, for example VRML [12], Open Inventor =-=[34]-=- or the Object File Format OFF [28]. These consist of a list of vertices followed by a list of facets. Each facet is a list of indices denoting a subset of the points. Edges are not explicitly stored ... |

2 | 3D-Polyhedral Surfaces - Kettner - 1998 |

1 | 2: Basic Library - Part - 1998 |