The public CGAL repository, see the README below
Go to file
Sebastien Loriot 7fdd7c1eca
Warning on no matching class member (#9108)
The overnight documentation build gives a warning (with the doxygen
master version):
```
/home/cgal-testsuite/cgal_doc_build/CGAL-6.2-Ic-24/include/CGAL/Frechet_distance/Neighbor_search.h:106: warning: no matching class member found for
  template < PointRange, Traits >
  std::vector< std::size_t > CGAL::Frechet_distance::Neighbor_search< PointRange, Traits >::get_close_curves(const PointRange &curve, double distance, Sequential_tag) ->std::vector< std::size_t >
Possible candidates:
  'template < ConcurrencyTag >
  std::vector< std::size_t > CGAL::Frechet_distance::Neighbor_search< PointRange, Traits >::get_close_curves(const PointRange &query, double distance)' at line 79 of file /home/cgal-testsuite/cgal_doc_build/CGAL-6.2-Ic-24/include/CGAL/Frechet_distance/Neighbor_search.h
  'std::vector< std::size_t > CGAL::Frechet_distance::Neighbor_search< PointRange, Traits >::get_close_curves(const PointRange &query, double distance, Sequential_tag)' at line 90 of file /home/cgal-testsuite/cgal_doc_build/CGAL-6.2-Ic-24/include/CGAL/Frechet_distance/Neighbor_search.h
```

In principle the code is correct but due to the double usage of
`std::vector< std::size_t >` doxygen has a small problem (since the
integration of the fix for
https://github.com/doxygen/doxygen/issues/11787). The workaround as used
by CGAL is not necessary.

(tested documentation against doxygen master version and dixygen 1.9.6)
2025-12-29 11:51:31 +01:00
.devcontainer/doxygen-cgal
.github build_doc Github action: display env variables 2025-12-17 12:20:57 +01:00
AABB_tree Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-12-19 17:37:15 +01:00
Advancing_front_surface_reconstruction
Algebraic_foundations Fix some links 2025-09-19 13:26:36 +02:00
Algebraic_kernel_d
Algebraic_kernel_for_circles
Algebraic_kernel_for_spheres
Alpha_shapes_2
Alpha_shapes_3
Alpha_wrap_3 AW3: Use more iterations in tetrahedral remeshing example (#8903) 2025-06-10 14:08:59 +02:00
Apollonius_graph_2 CGAL: An Halfedge 2025-11-03 14:37:50 +00:00
Arithmetic_kernel typos 2025-12-29 11:19:56 +01:00
Arrangement_on_surface_2 typos 2025-12-29 11:19:56 +01:00
BGL Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-12-19 17:37:15 +01:00
Barycentric_coordinates_2 Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-11-06 10:07:15 +01:00
Basic_viewer Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Boolean_set_operations_2 Removed Has_do_intersect_category 2025-12-10 13:21:18 +02:00
Bounding_volumes Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-11-06 10:07:15 +01:00
Box_intersection_d
CGAL_Core Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-09-09 19:55:42 +02:00
CGAL_ImageIO missing string_field 2025-08-05 14:44:03 +02:00
CGAL_ipelets Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-11-06 10:07:15 +01:00
Cartesian_kernel Mesh_3: fix a few clangd warnings (#9208) 2025-12-26 12:08:17 +01:00
Circular_kernel_2 Re-organize macro calls for clarity 2025-09-19 15:14:06 +02:00
Circular_kernel_3 Test API of previously missing overloads 2025-09-19 15:13:35 +02:00
Circulator Merge remote-tracking branch 'cgal/master' into Triangulation_3-CDT_3-lrineau 2025-06-10 11:18:38 +02:00
Classification Merge remote-tracking branch 'cgal/main' into Point_set-reduce_dependencies-GF 2025-11-20 10:14:49 +00:00
Combinatorial_map Spelling correction 2025-12-03 12:20:10 +01:00
Cone_spanners_2
Constrained_triangulation_3 Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-12-19 17:37:15 +01:00
Convex_decomposition_3
Convex_hull_2
Convex_hull_3 Merge remote-tracking branch 'cgal/6.0.x-branch' into `cgal/6.1.x-branch` 2025-12-12 17:48:59 +01:00
Convex_hull_d
Data/data Merge branch 'main' into SD_RG_face_normal_map 2025-12-07 11:30:52 +01:00
Distance_2
Distance_3 Merge pull request #8186 from lrineau/Triangulation_3-CDT_3-lrineau 2025-06-26 21:57:17 +02:00
Documentation/doc Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-12-26 12:13:31 +01:00
Envelope_2
Envelope_3
Filtered_kernel Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-09-28 17:11:10 +02:00
Frechet_distance Warning on no matching class member (#9108) 2025-12-29 11:51:31 +01:00
Generalized_map CGAL: An Halfedge 2025-11-03 14:37:50 +00:00
Generator Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-11-06 10:07:15 +01:00
GraphicsView Fix leftover qt5 2025-11-24 21:23:08 +01:00
HalfedgeDS CGAL: An Halfedge 2025-11-03 14:37:50 +00:00
Hash_map
Heat_method_3 Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Homogeneous_kernel
Hyperbolic_triangulation_2 CGAL: An Halfedge 2025-11-03 14:37:50 +00:00
Inscribed_areas
Installation Shape_detection: Add a way to pass input normal to faces (#8638) 2025-12-29 11:09:20 +01:00
Interpolation
Intersections_2 Add missing header 2025-09-19 16:22:33 +02:00
Intersections_3
Interval_skip_list Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-11-21 17:41:27 +01:00
Interval_support
Isosurfacing_3 adding support for Eigen3 5.0.0 (6.1 version) 2025-11-06 10:06:29 +01:00
Jet_fitting_3 Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Kernel_23 Merge branch 'main' into SD_RG_face_normal_map 2025-12-07 11:30:52 +01:00
Kernel_d Spelling correction 2025-10-22 11:38:11 +02:00
Kinetic_space_partition Merge remote-tracking branch 'cgal/main' into Point_set-reduce_dependencies-GF 2025-11-20 10:14:49 +00:00
Kinetic_surface_reconstruction Merge remote-tracking branch 'cgal/main' into Point_set-reduce_dependencies-GF 2025-11-20 10:14:49 +00:00
LEDA
LICENSES
Lab Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-12-04 18:44:41 +01:00
Linear_cell_complex add default parameter 2025-11-21 15:01:14 +01:00
Maintenance Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-11-21 17:41:27 +01:00
Matrix_search
Mesh_2 CI... 2025-08-29 10:28:48 +02:00
Mesh_3 Mesh_3: fix a few clangd warnings (#9208) 2025-12-26 12:08:17 +01:00
Mesher_level
Minkowski_sum_2
Minkowski_sum_3
Miscellany/doc/Miscellany CGAL: An Halfedge 2025-11-03 14:37:50 +00:00
Modifier
Modular_arithmetic
Nef_2 Use \link / \ref to add missing links of functions with parameters 2025-09-19 00:26:17 +02:00
Nef_3
Nef_S2
NewKernel_d Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-11-06 10:07:15 +01:00
Number_types typos 2025-12-29 11:19:56 +01:00
Optimal_bounding_box Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Optimal_transportation_reconstruction_2 Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-10-13 09:41:18 +02:00
Optimisation_basic
Orthtree Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Partition_2 reverted change to Partition_2 (unused variable) 2025-09-11 15:30:50 +02:00
Periodic_2_triangulation_2 Do not define _USE_MATH_DEFINES 2025-10-06 13:47:12 +01:00
Periodic_3_mesh_3 Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-11-06 10:07:15 +01:00
Periodic_3_triangulation_3 Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-12-03 11:54:47 +01:00
Periodic_4_hyperbolic_triangulation_2 removing unused variables or adding CGAL_USE 2025-09-01 13:21:53 +02:00
Point_set_2
Point_set_3 Merge remote-tracking branch 'cgal/main' into Point_set-reduce_dependencies-GF 2025-11-20 10:14:49 +00:00
Point_set_processing_3 Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-12-19 17:37:15 +01:00
Poisson_surface_reconstruction_3 adding support for Eigen3 5.0.0 (6.1 version) 2025-11-06 10:06:29 +01:00
Polygon Use \link / \ref to add missing links of functions with parameters 2025-09-19 00:26:17 +02:00
Polygon_mesh_processing Shape_detection: Add a way to pass input normal to faces (#8638) 2025-12-29 11:09:20 +01:00
Polygon_repair Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-12-26 12:13:31 +01:00
Polygonal_surface_reconstruction Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Polyhedron CGAL: An Halfedge 2025-11-03 14:37:50 +00:00
Polyline_simplification_2 Merge pull request #9049 from soesau/CGAL-warnings-GF 2025-09-22 12:01:07 +02:00
Polynomial Spelling correction 2025-06-27 13:04:28 +02:00
Polytope_distance_d
Principal_component_analysis Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Principal_component_analysis_LGPL
Profiling_tools
Property_map merge cgal/main 2025-11-13 08:48:43 +00:00
QP_solver Incorrect use of backticks 2025-07-14 18:14:16 +02:00
Random_numbers
Ridges_3 Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
SMDS_3 Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-12-19 17:37:15 +01:00
STL_Extension Shape_detection: Add a way to pass input normal to faces (#8638) 2025-12-29 11:09:20 +01:00
Scale_space_reconstruction_3 Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Scripts Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-12-19 17:37:15 +01:00
SearchStructures
Segment_Delaunay_graph_2 Use \link / \ref to add missing links of functions with parameters 2025-09-19 00:26:17 +02:00
Segment_Delaunay_graph_Linf_2
Set_movable_separability_2 CGAL: An Halfedge 2025-11-03 14:37:50 +00:00
Shape_detection adding check for collinear segments in case of strict parameters 2025-12-10 14:56:12 +01:00
Shape_regularization Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Skin_surface_3
Snap_rounding_2 cleanup an example 2025-11-13 11:05:26 +00:00
Solver_interface Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Spatial_searching Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Spatial_sorting
Straight_skeleton_2 CGAL: An Halfedge 2025-11-03 14:37:50 +00:00
Straight_skeleton_extrusion_2
Stream_lines_2 Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-10-30 20:24:05 +01:00
Stream_support Fix writing 64 bits integer into PLY files (#9175) 2025-12-26 12:10:15 +01:00
Subdivision_method_3
Surface_mesh Explicit 'std::size_t' as an accepted value type of SM pmap for write_PLY 2025-12-19 09:49:31 +01:00
Surface_mesh_approximation Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Surface_mesh_deformation Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-11-06 10:07:15 +01:00
Surface_mesh_parameterization Merge remote-tracking branch 'cgal/6.1.x-branch' into CGAL-fix_missing_inline_keywords-6.1.x-GF 2025-12-18 15:44:02 +01:00
Surface_mesh_segmentation Use \link / \ref to add missing links of functions with parameters 2025-09-19 00:26:17 +02:00
Surface_mesh_shortest_path
Surface_mesh_simplification leftover from Eigen5 update 2025-11-06 10:08:56 +01:00
Surface_mesh_skeletonization Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Surface_mesh_topology CGAL: An Halfedge 2025-11-03 14:37:50 +00:00
Surface_mesher \link-less link fixes 2025-09-19 00:28:04 +02:00
Surface_sweep_2 Commented out formal unused variable 2025-09-10 18:36:08 +03:00
TDS_2
TDS_3 Add missing function doc links (#9074) 2025-10-17 15:29:09 +02:00
Testsuite
Tetrahedral_remeshing Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-12-19 17:37:15 +01:00
Three Merge remote-tracking branch 'cgal/master' into Triangulation_3-CDT_3-lrineau 2025-06-10 11:18:38 +02:00
Triangulation Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-11-06 10:07:15 +01:00
Triangulation_2 Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-12-26 12:13:31 +01:00
Triangulation_3 Merge remote-tracking branch 'cgal/6.1.x-branch' into `cgal/main` 2025-12-12 17:49:36 +01:00
Triangulation_on_hyperbolic_surface_2 precompiled demos for CGAL-6.1 2025-11-13 13:29:35 +01:00
Triangulation_on_sphere_2 Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
Union_find fix Prevent_deref<Union_find::iterator> 2025-09-19 11:53:02 +02:00
Visibility_2
Voronoi_diagram_2 Merge remote-tracking branch 'cgal/6.1.x-branch' into 'cgal/main' 2025-11-06 10:07:15 +01:00
Weights Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch' 2025-11-06 10:04:46 +01:00
.clang-format refactor debug API so that cdt_3_from_off can use the official API 2025-10-29 14:12:50 +01:00
.clang-tidy
.gitattributes
.gitignore Merge remote-tracking branch 'cgal/6.1.x-branch' into CGAL-fix_missing_inline_keywords-6.1.x-GF 2025-12-18 15:44:02 +01:00
.markdownlint.json
CGALConfig.cmake
CGALConfigVersion.cmake
CMakeLists.txt
INSTALL.md
LICENSE.md
README.md master > main across scripts and documentation 2025-09-19 16:08:27 +02:00
REUSE.toml
cmake_uninstall.cmake.in
copyright

README.md

CGAL

The Computational Geometry Algorithms Library (CGAL) is a C++ library that aims to provide easy access to efficient and reliable algorithms in computational geometry.

CGAL Releases

The primary vector of distribution of CGAL are source tarballs, released twice a year, announced on the web site of CGAL.

Getting Started with CGAL

Since version 5.0, CGAL is a header-only library, meaning that it is no longer needed to build CGAL libraries before it can be used.

Head over to the CGAL manual for usage guides and tutorials that will get you started smoothly.

License

See the file LICENSE.md.

CGAL Git Repository Layout

The Git repository of CGAL has a different layout from release tarballs. It contains a CMakeLists.txt file that serves as anchor for configuring and building programs, and a set of subfolders, so called packages. Most packages implement a data structure or an algorithm for CGAL (e.g., Convex_hull_2, or Triangulation_3); however some packages serve special needs:

  • Installation - meta-files and CMake-support
  • Maintenance - infrastructural support
  • Core, CGALimageIO, Qt_widget, GraphicsView - component libraries
  • Scripts - scripts to simplify developer's and user's work
  • Testsuite - infrastructure for testsuite
  • Documentation - infrastructure for CGAL's manual
  • STL_Extension - extensions to the standard template library

More Information