Results 1 - 10
of
19
On the design of CGAL a computational geometry algorithms library
- Softw. – Pract. Exp
, 1998
"... CGAL is a Computational Geometry Algorithms Library written in C++, which is being developed by research groups in Europe and Israel. The goal is to make the large body of geometric algorithms developed in the field of computational geometry available for industrial application. We discuss the major ..."
Abstract
-
Cited by 82 (15 self)
- Add to MetaCart
CGAL is a Computational Geometry Algorithms Library written in C++, which is being developed by research groups in Europe and Israel. The goal is to make the large body of geometric algorithms developed in the field of computational geometry available for industrial application. We discuss the major design goals for CGAL, which are correctness, flexibility, ease-of-use, efficiency, and robustness, and present our approach to reach these goals. Generic programming using templates in C++ plays a central role in the architecture of CGAL. We give a short introduction to generic programming in C++, compare it to the object-oriented programming paradigm, and present examples where both paradigms are used effectively in CGAL. Moreover, we give an overview of the current structure of the CGAL-library and consider software engineering aspects in the CGAL-project. Copyright c ○ 1999 John Wiley & Sons, Ltd. KEY WORDS: computational geometry; software library; C++; generic programming;
Arrangements and Their Applications
- Handbook of Computational Geometry
, 1998
"... The arrangement of a finite collection of geometric objects is the decomposition of the space into connected cells induced by them. We survey combinatorial and algorithmic properties of arrangements of arcs in the plane and of surface patches in higher dimensions. We present many applications of arr ..."
Abstract
-
Cited by 72 (17 self)
- Add to MetaCart
The arrangement of a finite collection of geometric objects is the decomposition of the space into connected cells induced by them. We survey combinatorial and algorithmic properties of arrangements of arcs in the plane and of surface patches in higher dimensions. We present many applications of arrangements to problems in motion planning, visualization, range searching, molecular modeling, and geometric optimization. Some results involving planar arrangements of arcs have been presented in a companion chapter in this book, and are extended in this chapter to higher dimensions. Work by P.A. was supported by Army Research Office MURI grant DAAH04-96-1-0013, by a Sloan fellowship, by an NYI award, and by a grant from the U.S.-Israeli Binational Science Foundation. Work by M.S. was supported by NSF Grants CCR-91-22103 and CCR-93-11127, by a Max-Planck Research Award, and by grants from the U.S.-Israeli Binational Science Foundation, the Israel Science Fund administered by the Israeli Ac...
Using Generic Programming for Designing a Data Structure for Polyhedral Surfaces
- Comput. Geom. Theory Appl
, 1999
"... Appeared in Computational Geometry -- Theory and Applications 13, 1999, 65-90. Software design solutions are presented for combinatorial data structures, such as polyhedral surfaces and planar maps, tailored for program libraries in computational geometry. Design issues considered are flexibility, ..."
Abstract
-
Cited by 40 (6 self)
- Add to MetaCart
Appeared in Computational Geometry -- Theory and Applications 13, 1999, 65-90. Software design solutions are presented for combinatorial data structures, such as polyhedral surfaces and planar maps, tailored for program libraries in computational geometry. Design issues considered are flexibility, time and space efficiency, and ease-of-use. We focus on topological aspects of polyhedral surfaces and evaluate edge-based representations with respect to our 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. Key words: Library design; Generic programming; Combinatorial data structure; Polyhedral surface; Halfedge data structure 1 Introduction Combinatorial structures, such as planar maps, are fundamental in computational geometry. In order to be useful in practice, a solid library for compu...
The Design and Implementation of Planar Maps in CGAL
- Special Issue, selected papers of the Workshop on Algorithm Engineering (WAE
, 1999
"... 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 ..."
Abstract
-
Cited by 36 (16 self)
- Add to MetaCart
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
Robust Geometric Computing in Motion
, 2000
"... In this paper we discuss the gap between the theory and practice of geometric algorithms. We then describe effors to settle this gap and facilitate the successful implementation of geometric algorithms in general and of algorithms for geometric arrangements and motion planning in particular. ..."
Abstract
-
Cited by 15 (2 self)
- Add to MetaCart
In this paper we discuss the gap between the theory and practice of geometric algorithms. We then describe effors to settle this gap and facilitate the successful implementation of geometric algorithms in general and of algorithms for geometric arrangements and motion planning in particular.
The Design and Implementation of Planar Arrangements of Curves in CGAL
, 2000
"... Contents Acknowledgments iii 1 Introduction 3 2 Preliminaries and Related Work 9 2.1 CGAL and Generic Programming . . . . . . . . . . . . . . . . 9 2.2 Robustness in Geometric Computation . . . . . . . . . . . . . 11 2.2.1 Exact Arithmetic . . . . . . . . . . . . . . . . . . . . . 12 2.2.2 Floating ..."
Abstract
-
Cited by 12 (1 self)
- Add to MetaCart
Contents Acknowledgments iii 1 Introduction 3 2 Preliminaries and Related Work 9 2.1 CGAL and Generic Programming . . . . . . . . . . . . . . . . 9 2.2 Robustness in Geometric Computation . . . . . . . . . . . . . 11 2.2.1 Exact Arithmetic . . . . . . . . . . . . . . . . . . . . . 12 2.2.2 Floating Point Filters . . . . . . . . . . . . . . . . . . . 13 2.3 Planar Maps in CGAL . . . . . . . . . . . . . . . . . . . . . . 16 2.3.1 Geometric Traits . . . . . . . . . . . . . . . . . . . . . 16 2.3.2 Point Location Strategies . . . . . . . . . . . . . . . . . 17 2.4 Computing the Combinatorial Structure of an Arrangement . 18 2.4.1 Conditions for Curves . . . . . . . . . . . . . . . . . . 18 2.4.2 Isolation of Intersection Points . . . . . . . . . . . . . . 21 3 Arrangements in CGAL 23 3.1 Hierarchy Tree . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.2 Design and Implementation Details . . . . . . . . . . . . . . . 26 3.2.1 General Design . . . . . . .
Circular Incident Edge Lists: a Data Structure for Rendering Complex Unstructured Grids
, 2001
"... We present the Circular Incident Edge Lists (CIEL), a new data structure and a high-performance algorithm for generating a series of iso-surfaces in a highly unstructured grid. Slicing-based volume rendering is also considered. The CIEL data structure represents all the combinatorial information of ..."
Abstract
-
Cited by 7 (2 self)
- Add to MetaCart
We present the Circular Incident Edge Lists (CIEL), a new data structure and a high-performance algorithm for generating a series of iso-surfaces in a highly unstructured grid. Slicing-based volume rendering is also considered. The CIEL data structure represents all the combinatorial information of the grid, making it possible to optimize the classical propagation from local minima paradigm. The usual geometric structures are replaced by a more efficient combinatorial structure. An active edges list is maintained, and iteratively propagated from an iso-surface to the next one in a very efficient way. The intersected cells incident to each active edge are retrieved, and the intersection polygons are generated by circulating around their facets. This latter feature enables arbitrary irregular cells to be treated, such as those encountered in certain computational fluid dynamics (CFD) simulations. Since the CIEL data structure solely depends on the connections between the cells, it is possible to take into account dynamic changes in the geometry of the mesh and in property values, which only requires the sorted extrema list to be updated. Experiments have shown that our approach is significantly faster than classical methods. The major drawback of our method is its memory consumption, higher than most classical methods. However, experimental results show that it stays within a practical range.
Is This A Quadrisected Mesh?
- Proceedings of ACM Solid Modeling Symposium 2001
, 2001
"... In this paper we introduce a fast and efficient linear time and space algorithm to detect and reconstruct uniform Loop subdivision structure, or triangle quadrisection, in irregular triangular meshes. Instead of a naive sequential traversal algorithm, and motivated by the concept of covering surface ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
In this paper we introduce a fast and efficient linear time and space algorithm to detect and reconstruct uniform Loop subdivision structure, or triangle quadrisection, in irregular triangular meshes. Instead of a naive sequential traversal algorithm, and motivated by the concept of covering surface in Algebraic Topology, we introduce a new algorithm based on global connectivity properties of the covering mesh. We consider two main applications for this algorithm. The first one is to enable interactive modelling systems that support Loop subdivision surfaces, to use popular interchange file formats which do not preserve the subdivision structure, such as VRML, without loss of information. The second application is to # California Institute of Technology, MS-136-93, Pasadena, CA 91125, taubin@caltech.edu. On Sabbatical from IBM T.J. Watson Research Center, Yorktown Heights, NY 10598 taubin@us.ibm.com improve the compression efficiency of existing lossless connectivity compression schemes, by optimally compressing meshes with Loop subdivision connectivity. Extensions to other popular uniform subdivision schemes such as Catmull-Clark and Doo-Sabin, are relatively straightforward but will be studied elsewhere. CR Categories: I.3.5 [Computer Graphics]: Computational Geometry and Object Modelling---surface, solid, and object representations Keywords: Subdivision surfaces, 3D Geometry Compression, Algorithms, Graphics. 1
Overlaying surface meshes, part I: Algorithms
- INT. J. COMPUT. GEOM. APPL.
, 2004
"... We describe an efficient and robust algorithm for computing a common refinement of two meshes modeling the same surface of arbitrary shape by overlaying them on lop of each other. A common refinement is an important data structure for transferring data between meshes that have different combinatoria ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
We describe an efficient and robust algorithm for computing a common refinement of two meshes modeling the same surface of arbitrary shape by overlaying them on lop of each other. A common refinement is an important data structure for transferring data between meshes that have different combinatorial structures. Our algorithm is optimal in time and space, with linear complexity, and is robust even with inexact computations, through the techniques of error analysis, detection of topological inconsistencies, and automatic resolution of such inconsistencies. We present the verification and some further enhancement of robustness in Part II.
Detecting and Reconstructing Subdivision Connectivity
, 2001
"... In this paper we introduce fast and efficient inverse subdivision algorithms, with linear time and space complexity, to detect and reconstruct uniform Loop, Catmull-Clark, and Doo-Sabin subdivision structure in irregular triangular, quadrilateral, and polygonal meshes. We consider two main applicati ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
In this paper we introduce fast and efficient inverse subdivision algorithms, with linear time and space complexity, to detect and reconstruct uniform Loop, Catmull-Clark, and Doo-Sabin subdivision structure in irregular triangular, quadrilateral, and polygonal meshes. We consider two main applications for these algorithm. The first one is to enable interactive modeling systems that support uniform subdivision surfaces, to use popular interchange file formats which do not preserve the subdivision structure, such as VRML, without loss of information. The second application is to improve the compression efficiency of existing lossless connectivity compression schemes, by optimally compressing meshes with Loop subdivision connectivity. Our Loop inverse subdivision algorithm is based on global connectivity properties of the covering mesh, a concept motivated by the covering surface from Algebraic Topology. Although the same approach can be used for other subdivision schemes such as Catmull-Clark, we present a Catmull-Clark inverse subdivision algorithm based on a much simpler graph coloring algorithm, and a Doo-Sabin inverse subdivision algorithm based on properties of the dual mesh. Straightforward extensions of these approaches to other popular uniform subdivision schemes are also discussed.

