## The Design and Implementation of Planar Maps in CGAL (1999)

### Cached

### Download Links

- [www.cs.tau.ac.il]
- [www.math.tau.ac.il]
- [www.math.tau.ac.il]
- DBLP

### Other Repositories/Bibliography

Venue: | Special Issue, selected papers of the Workshop on Algorithm Engineering (WAE |

Citations: | 39 - 17 self |

### BibTeX

@INPROCEEDINGS{Flato99thedesign,

author = {Eyal Flato and Dan Halperin and Iddo Hanniel and Oren Nechushtan and Eti Ezra},

title = {The Design and Implementation of Planar Maps in CGAL},

booktitle = {Special Issue, selected papers of the Workshop on Algorithm Engineering (WAE},

year = {1999},

pages = {2000},

publisher = {Springer}

}

### Years of Citing Articles

### OpenURL

### Abstract

this paper has been supported in part by ESPRIT IV LTR Projects No. 21957 (CGAL) and No. 28155 (GALIA), by the USA-Israel Binational Science Foundation, by The Israel Science Foundation founded by the Israel Academy of Sciences and Humanities (Center for Geometric Computing and its Applications), by a Franco-Israeli research grant "factory of the future" (monitored by AFIRST/France and The Israeli Ministry of Science), and by the Hermann Minkowski -- Minerva Center for Geometry at Tel Aviv University

### Citations

5269 |
Design patterns: elements of reusable objectoriented software
- Gamma, Helm, et al.
- 1995
(Show Context)
Citation Context ...e (or below) the query point p. The design of the package separates between the planar map class and the pointlocation algorithm. The separation is done using a mechanism called the strategy pattern [=-=Gamma et al. 1995-=-]. The strategy pattern is used to define a family of algorithms, encapsulate each one, and make them interchangeable. The strategy mechanism lets the algorithms vary independently from clients that u... |

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

286 | Computational Geometry: An Introduction Through Randomized Algorithms - Mulmuley - 1994 |

266 |
An Introduction to Solid Modeling
- Mäntylä
- 1988
(Show Context)
Citation Context ... is the Doubly Connected Edge List (DCEL) structure. This representation belongs to a family of edge-based data structures in which each edge is represented as a pair of opposite halfedges; see e.g., =-=[5, 13, 15, 21]-=-. Consider Figure 1 for an illustration. A halfedge ~e is connecting two vertices---its endpoints: it is directed from its source endpoint to its target endpoint. Its twin halfedge, twin(~e), connects... |

242 | The Standard Template Library - Stepanov, Lee - 1994 |

117 | The STL Tutorial and Reference Guide: C++ Programming with the Standard Template Library - Musser, Derge, et al. - 2002 |

105 | Algorithmic Geometry - Boissonnat, Yvinec - 1998 |

87 |
Edçe-Based Data Structures for Solid Modeling in Curved-Surface Environment
- Weiler
- 1990
(Show Context)
Citation Context ... is the Doubly Connected Edge List (DCEL) structure. This representation belongs to a family of edge-based data structures in which each edge is represented as a pair of opposite halfedges; see e.g., =-=[5, 13, 15, 21]-=-. Consider Figure 1 for an illustration. A halfedge ~e is connecting two vertices---its endpoints: it is directed from its source endpoint to its target endpoint. Its twin halfedge, twin(~e), connects... |

83 |
Generic programming and the STL: using and extending the C++ Standard Template Library
- Austern
- 1998
(Show Context)
Citation Context ...are library of geometric data structures and algorithms. The library main design goals are robustness, genericity and efficiency. To achieve these goals Cgal adopted the generic programming paradigm [=-=Austern 1999-=-; Bronniman et al. 1998]. Our Cgal planar map package is designed for general curves. We tried to define the minimal geometric interface that will enable the construction and handling of a geometric m... |

83 |
A fast planar partition algorithm, I
- Mulmuley
- 1988
(Show Context)
Citation Context ...in practice. Note that the worst-case time complexity remains linear. RIC The RIC (Randomized Incremental Construction) algorithm is an implementation of the dynamic algorithm introduced by Mulmuley [=-=Mulmuley 1990-=-]. Unlike the naive or walk algorithms, this approach requires the maintenance of additional data structures. The implementation consists of two structures: (i) a trapezoidal map and (ii) a search str... |

64 |
Traits: a new and useful template technique
- Myers
- 1995
(Show Context)
Citation Context ...1, Xcurve c2, Point p) compares the y-coordinate of the curves at the x-coordinate of p. 2 The original usage of the term "traits class" is for associating related type information to built-=-=in types [Myers 1995-=-]. In CGAL, this term is used in a more general sense [Bronniman et al. 1998; Fabri et al. 2000]. The Design and Implementation of Planar Maps in CGAL \Delta 15 Fig. 7. A planar map of segments create... |

58 | Static analysis yields efficient exact integer arithmetic for computational geometry - Fortune, Wyk - 1996 |

48 | The CGAL kernel: a basis for geometric computation
- Fabri, Giezeman, et al.
- 1996
(Show Context)
Citation Context ... the design and implementation of a software package for constructing and efficiently searching in planar maps. Our package is part of Cgal---a Computational Geometry Algorithms Library [CGAL00 2000; =-=Fabri et al. 1996-=-; Fabri et al. 2000], which is a collaborative effort by several academic institutes in Europe and Israel to develop a C++ software library of geometric data structures and algorithms. The library mai... |

47 | Using generic programming for designing a data structure for polyhedral surfaces. Computational Geometry: Theory and Applications
- Kettner
- 1999
(Show Context)
Citation Context ...ed Edge List (DCEL) structure. This representation belongs to a family of edge-based data structures in which each edge is represented as a pair of opposite halfedges; see e.g., [de Berg et al. 1997; =-=Kettner 1999-=-; Mantyla 1988; Weiler 1985]. Consider Figure 1 for an illustration. A halfedge ~e connects two vertices---its endpoints: it is directed from its source endpoint to its target endpoint. Its twin halfe... |

40 | Polygon decomposition for efficient construction of minkowski sums
- Agarwal, Flato, et al.
(Show Context)
Citation Context ...ng a line RIC naive Fig. 10. Construction time for the random input (left-hand side) and for the robotics input (right-hand side) with different point-location algorithms by the program described in [=-=Agarwal et al. 2000-=-; Flato and Halperin 2000]. Each set has about 12000 segments. The geographic input (Figure 13) consists of 25000 segments describing a map of the world. In each experiment we choose a random permutat... |

30 | Designing a data structure for polyhedral surfaces - Kettner - 1998 |

28 | The LEDA platform for combinatorial and geometric computing - Melhorn, Näher - 1999 |

23 | Robuts and efficient construction of planar minkowski sums - Flato - 2000 |

18 |
A case study on the cost of geometric computing
- Schirra
- 1999
(Show Context)
Citation Context ...he differences that makes this traits class more efficient is the use of LEDA's primitive predicates (e.g., orientation) that are implemented using floating point "filters" [Fortune and van =-=Wyk 1996; Schirra 1999-=-] which speed up the exact computation. This traits class could not be made a special case of Pmsegmentexacttraits!R? since the usage of the more efficient LEDA rational kernel could not simply be par... |

15 | Applications of the generic programming paradigm in the design of CGAL
- Brönnimann, Kettner, et al.
- 2000
(Show Context)
Citation Context ...ware library of geometric data structures and algorithms. The library main design goals are robustness, genericity and efficiency. To achieve these goals Cgal adopted the generic programming paradigm =-=[2, 3]-=-. Our Cgal planar map package is designed for general curves. We employ geometric traits (see [3, 7]) which make our package flexible by enabling to use it with any family of curves as long as the use... |

14 | D (2000) Two-dimensional arrangements in CGAL and adaptive point location for parametric curves
- Hanniel, Halperin
- 1982
(Show Context)
Citation Context ...erior disjoint. We distinguish between planar maps and arrangements. An arrangement is a subdivision of the plane induced by a collection of curves that are possibly intersecting. Two of the authors [=-=Hanniel and Halperin 2000-=-] have recently developed an arrangement package on top of the package described in this paper; see Section 7. In this paper we deal with collections of curves that do not intersect in their interior.... |

9 | An Introduction to Solid Modelling - M - 1988 |

7 |
On the design
- Fabri, Giezeman, et al.
- 1998
(Show Context)
Citation Context ...r. We describe the design and implementation of a software package for constructing and efficiently searching in planar maps. Our package is part of Cgal---a Computational Geometry Algorithms Library =-=[4, 6, 7]-=-, which is a collaborative effort by several academic institutes in Europe and Israel to develop a C++ software library of geometric data structures and algorithms. The library main design goals are r... |

6 |
MAPC: a library for efficient manipulation of algebraic points and curves
- Keyser, Culver, et al.
- 1999
(Show Context)
Citation Context ...he family. We are not aware of any publicly available software for representing planar maps of general curves and which supports efficient access to regions of the map as ours does. The MAPC library [=-=Keyser et al. 1999-=-] has been applied to construct the arrangement of algebraic curves. However, this package is a library for manipulating algebraic points and curves and not a planar map implementation. Using the trai... |

4 |
Applications of the generic programming paradigm
- Bronniman, Kettner, et al.
- 1998
(Show Context)
Citation Context ...eometric data structures and algorithms. The library main design goals are robustness, genericity and efficiency. To achieve these goals Cgal adopted the generic programming paradigm [Austern 1999; Br=-=onniman et al. 1998-=-]. Our Cgal planar map package is designed for general curves. We tried to define the minimal geometric interface that will enable the construction and handling of a geometric map. Packaging those pre... |

2 |
Implementing geometric algorithms robustly
- Guibas
- 1996
(Show Context)
Citation Context ...point coordinates and curve equations---as geometric. This duality of information (geometric and topological) is the source of much of the difficulty in implementing geometric algorithms (see, e.g., [=-=Guibas 1996-=-]). Separating these two types of data makes the package modular and convenient to extend, as we show in the subsequent sections. Before we delve into the underlying structures and algorithms, we give... |

1 | The CGAL User Manual, Version 2.2. http://www.cgal.org - CGAL00 |

1 |
The Design and Implementation of Planar Maps in CGAL \Delta 23
- Fabri, Giezeman, et al.
- 2000
(Show Context)
Citation Context ...lementation of a software package for constructing and efficiently searching in planar maps. Our package is part of Cgal---a Computational Geometry Algorithms Library [CGAL00 2000; Fabri et al. 1996; =-=Fabri et al. 2000-=-], which is a collaborative effort by several academic institutes in Europe and Israel to develop a C++ software library of geometric data structures and algorithms. The library main design goals are ... |

1 |
Max-Planck-Insitut fur Informatik
- Mehlhorn, aher, et al.
- 1997
(Show Context)
Citation Context ...es and not a planar map implementation. Using the traits mechanism, incorporating the MAPC representations into our package is possible. LEDA, the Library of Efficient Data Structures and Algorithms [=-=Mehlhorn et al. 1997-=-; Melhorn and Naher 1999], provides tools for constructing planar maps of straight line segments, and for efficient point location in such maps. In the next section we review the basic terminology tha... |

1 | Static analysis yields exact integer arithmetic for computational geometry - Fortune, Wyk - 1996 |