CGAL 4.11 - Triangulated Surface Mesh Skeletonization
|
FaceListGraph
concept.
doc+code: mention that to get a better skeleton that is closer to the medial axis, the surface must be sufficiently well sampled so that the Voronoi poles lie on the media axis (see Amenta's paper). Propose the usage of the isotropic remeshing and see if we add a boolean to do it automatically in the api (correspondance would be broken)
code: implement the random sampling of surface using the work started by Alexandru during its gsoc to get a better approximation of poles
code: expose in polygon mesh processing the function to compute the voronoi pole of a close triangle mesh
code: expose in polygon mesh processing the function to remesh locally a triangle mesh with the angle and edge length parameters
code: avoid using EPEC for the triangulation
Modules | |
Concepts | |
Classes | |
class | CGAL::Mean_curvature_flow_skeletonization< TriangleMesh, Traits_, VertexPointMap_, SolverTraits_ > |
Function object that enables to extract the mean curvature flow skeleton of a triangulated surface mesh. More... | |
Functions | |
template<class TriangleMesh > | |
void | CGAL::extract_mean_curvature_flow_skeleton (const TriangleMesh &tmesh, typename Mean_curvature_flow_skeletonization< TriangleMesh >::Skeleton &skeleton) |
extracts a medially centered curve skeleton for the triangle mesh tmesh . This function uses the class CGAL::Mean_curvature_flow_skeletonization with the default parameters. This function is provided only if Eigen 3.2 (or greater) is available and CGAL_EIGEN3_ENABLED is defined. More... | |
void CGAL::extract_mean_curvature_flow_skeleton | ( | const TriangleMesh & | tmesh, |
typename Mean_curvature_flow_skeletonization< TriangleMesh >::Skeleton & | skeleton | ||
) |
extracts a medially centered curve skeleton for the triangle mesh tmesh
. This function uses the class CGAL::Mean_curvature_flow_skeletonization with the default parameters. This function is provided only if Eigen 3.2 (or greater) is available and CGAL_EIGEN3_ENABLED
is defined.
tmesh
is a triangle mesh without borders and having exactly one connected component. boost::property_map<TriangleMesh, CGAL::vertex_point_t>::type
and get(vertex_point, tmesh)
are defined. boost::property_map<TriangleMesh, CGAL::vertex_point_t>::type
is a point type from a CGAL Kernel.TriangleMesh | a model of FaceListGraph |
tmesh | input mesh |
skeleton | graph that will contain the skeleton of tmesh . For each vertex descriptor vd of skeleton , the corresponding point and the set of input vertices that contracted to vd can be retrieved using skeleton[vd].point and skeleton[vd].vertices respectively. |
#include <CGAL/extract_mean_curvature_flow_skeleton.h>