CGAL project

C++ library of computational geometry and geometry processing

Technologies
python, c++, git, swig
Topics
computational geometry, mesh processing, arrangement, geometry processing, point set processing
C++ library of computational geometry and geometry processing

CGAL is a software library that offers a number of reliable geometric data structures and algorithms. CGAL components operate in 2D and 3D, and sometime in arbitrary dimensions. Examples of components include convex hulls, convex decomposition, Delaunay triangulations, Voronoi diagrams, polygonal surface mesh data-structures, mesh generation, Boolean operations, envelope computations, intersection detection, surface reconstruction, and subdivision surfaces.

CGAL is used in a variety of application domains such as CAD/CAM (computer aided design and modeling), GIS (geographic information systems), geophysics, image processing, molecular biology, robotics, motion planning, and graphics.

CGAL is written in C++ and rigorously adheres to the generic-programming paradigm.

CGAL became an Open Source project in 2003. Most of CGAL is under the GPL v3+ license, and some core parts are under the LGPL v3+. The semi-annual releases have currently about 10,000 downloads. CGAL is commercially supported by the spin-off company GeometryFactory.

2019 Program

Successful Projects

Contributor
Necip Fazil Yildiran
Mentor
Simon Giraudot, Nicolas Mellado
Organization
CGAL project
Make OpenGR be able to work directly with CGAL point clouds
CGAL’s components are used with other libraries to achieve complex tasks, some of which are suffering from the lack of interoperability while some...
Contributor
Jasmeet Singh
Mentor
Guillaume Damiand
Organization
CGAL project
Basic Viewers in CGAL: Extending viewers to new datastructures
CGAL provides now basic viewers, i.e. global functions allowing to visualize in 3D some CGAL data-structures. These small viewers are very usefull in...
Contributor
Saurabh Singh
Mentor
Efi Fogel
Organization
CGAL project
Enhancing the 2D Arrangement Demo
The 2D Arrangement package can be used to construct, maintain, alter, and display arrangements in the plane. Once an arrangement is constructed, the...
Contributor
Krezhairo
Mentor
Efi Fogel
Organization
CGAL project
Enhancing the 2D Regularized Boolean Set Operations Demo
CGAL works on computational geometry. It has a Demo version of a package named '2D Regularized Boolean Set Operations'. With the use of generic...
Contributor
Baskin Burak Senbaslar
Mentor
Mael
Organization
CGAL project
Improvements of the Surface Mesh Simplification package
The project will include adding new approaches to already existing triangulated mesh simplification framework of CGAL. The current approach depends...
Contributor
Thien Hoang
Mentor
Guillaume Damiand
Organization
CGAL project
Compute a shortest non-contractible cycle on a surface
A new package about the computation of some topological invariants on surfaces is under development in CGAL. The goal of this project is to add a new...
Contributor
Xiao Xiao
Mentor
Andreas Fabri
Organization
CGAL project
K-DOP tree
Intersection problems are common in many engineering applications, for example, enforcement of non-penetration constraints in contact mechanics,...
Contributor
Martin Skrodzki
Mentor
Young J. Kim, Sebastien Loriot
Organization
CGAL project
Implementing a Fast Distance Computation between Triangle Meshes
Measuring the similarity between two geometric models is an important problem in diverse fields, including computer graphics, computer games, and...
Contributor
Gennadii Sytov
Mentor
Dmitry Anisimov
Organization
CGAL project
Generalized Global Regularization
For this project, I would like to create a new CGAL package that combines the global regularization algorithm from Section 3 of the KIPPI paper,...