Programming with CGAL
1999, Proceedings of the fifteenth annual symposium on Computational geometry
https://doi.org/10.1145/304893.305001Abstract
AI
AI
The Computational Geometry Algorithms Library (CGAL) aims to provide robust, flexible, and efficient implementations of geometric algorithms and data structures. With a focus on object-oriented and generic programming techniques, CGAL encompasses a large codebase to support industrial applications and educational purposes. Key functions include handling geometric objects and providing debugging tools for visualizing geometric computations in real-time.
FAQs
AI
What are the main components of the CGAL library architecture?
The CGAL library is organized into three parts: the kernel, the basic library, and the support library, encompassing 100,000 lines of C++ code.
How do Delaunay and constrained triangulations function in CGAL?
Delaunay triangulations are used for shape reconstruction, while constrained triangulations mesh polygonal domains, demonstrating flexibility in handling complex geometric structures.
What enables non-intrusive debugging in geometric code using CGAL?
Non-intrusive debugging is facilitated through multi-threading, allowing simultaneous execution of geometric code and a visualization viewer without modifying the original source code.
What characteristics define the triangulation classes in CGAL?
Triangulation classes in CGAL are templated with a geometric traits class to provide essential geometric objects and predicates, enhancing the flexibility of triangulation representation.
How does CGAL ensure robustness in geometric computations?
CGAL emphasizes robustness by managing degenerate geometric configurations efficiently, using state-of-the-art arithmetic tools that do not compromise algorithmic efficiency.
References (4)
- But971 D. Butenhof. Programming with POSIX Threads.
- Addison-Wesley, 1997.
- F. Cazals. Non-intrusive debugging and incremental vi- sualization of geometric code. Submitted, 1999.
- F. Mueller. Implementing posix threads under Unix: de- scription of work in progress. In Proc. of the Znd soft- zuare engeneering research forum, Melbourne, Florida, 1992.