A C++ library for exact 2D Delaunay triangulation, Voronoi diagrams, and constrained triangulations with super-stable numerical predicates.
DelaBella is a C++ library for exact 2D Delaunay triangulation and related geometric computations. It implements the s-hull algorithm with adaptive-exact numerical predicates to solve problems like mesh generation, Voronoi diagram construction, and constrained triangulation with guaranteed stability.
Computational geometry researchers, game developers needing robust mesh generation, GIS software engineers, and anyone implementing geometric algorithms requiring exact Delaunay triangulations.
Developers choose DelaBella for its combination of exact numerical stability, comprehensive feature set (including constrained triangulations and Voronoi diagrams), and performance with large point sets—all in a minimalistic C++ interface.
2D Delaunay triangulation (dela) - super stable (bella!)
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses adaptive-exact predicates for guaranteed robustness in geometric calculations, as emphasized in the README's focus on handling edge cases without floating-point errors.
Supports Delaunay triangulation, Voronoi diagrams, constrained triangulations, and flood-fill operations, evidenced by the multiple examples and images provided in the README.
Benchmarked to efficiently handle millions of points, with performance metrics detailed in the bar graph and benchmark documentation linked in the README.
Offers a straightforward interface with clear usage examples, such as the Triangulate function shown in the minimalistic code snippet, reducing integration complexity.
Lacks bindings for other languages like Python or JavaScript, limiting its use in multi-language projects or for developers outside the C++ ecosystem.
Requires external tools for rendering results, as the library focuses solely on computation without graphical output features, forcing additional work for visualization.
The README provides basic examples but lacks detailed API references or tutorials for complex use cases, potentially requiring users to delve into source code for advanced needs.