Provides some utilities for 3D meshes: clipping of a mesh to the volume bounded by another mesh, decomposition into convex parts, distance between a mesh and a point, Hausdorff distance between two meshes, triangulation, geodesic distance, Boolean operations (intersection, union, difference), Minkowski sum, subdivision algorithms, random sampling on a mesh, volume, area, and centroid. Also provides two algorithms for surface reconstruction from a cloud of points. Meshes are represented by R6 classes. All algorithms are performed by the 'C++' library 'CGAL' (< https://www.cgal.org/>).
R6 based utilities for 3D meshes.
















Stanford bunny:

Stanford dragon:

Dummy head:

Skull:

Octahedron + sphere:

Tetrahedron + truncated icosahedron:

Septuaginta + great stellated dodecahedron:

Stanford bunny + sphere:

Volume, area, centroid, distance between a point and a mesh, connected components, Haussdorf distance, random sampling on the surface of a mesh.
There are more features in the github branch, to install with:
remotes::install_github("stla/cgalMeshes@github", dependencies = TRUE, build_vignettes = TRUE)
Spider cage:

Here is a series of three images which show the effect of this spacing
parameter (0.05, 0.02, 0.005):

Stanford bunny:

Stanford dragon:

Hopf torus:

Stanford bunny:





This package is provided under the GPL-3 license but it uses the C++ library CGAL. If you wish to use CGAL for commercial purposes, you must obtain a license from the GeometryFactory.