CGAL 6.0 - Approximation of Ridges and Umbilics on Triangulated Surface Meshes
Loading...
Searching...
No Matches
CGAL::Umbilic_approximation< TriangleMesh, VertexFTMap, VertexVectorMap > Class Template Reference

#include <CGAL/Umbilics.h>

Definition

template<typename TriangleMesh, typename VertexFTMap, typename VertexVectorMap>
class CGAL::Umbilic_approximation< TriangleMesh, VertexFTMap, VertexVectorMap >

The class Umbilic_approximation computes the approximation of umbilics on a triangular polyhedral surface.

Template Parameters
TriangleMeshis the surface type. In the following let K be Kernel_traits<boost::property_traits<TriangleMesh,CGAL::vertex_point_t>::value_type>::Kernel
VertexFTMapA property map with boost::graph_traits<TriangleMesh>::vertex_descriptor as key type and K::FT as value type.
VertexVectorMapA property map with boost::graph_traits<TriangleMesh>::vertex_descriptor as key type and K::Vector_3 as value type.
Precondition
(checked at compile time)
The types K::FT and boost::property_traits<VertexFTMap>::value_type must coincide.
The types K::Vector_3 and boost::property_traits<VertexVectorMap>::value_type must coincide.
The types boost::graph_traits<TriangleMesh>::vertex_descriptor, and boost::property_traits<VertexFTMap>::key_type, and boost::property_traits<VertexVectorMap>::key_type must coincide.
See also
Umbilic

Types

typedef TriangleMesh::Traits::FT FT
 

Creation

 Umbilic_approximation (const TriangleMesh &tm, VertexFTMap vertex_k1_pm, VertexFTMap vertex_k2_pm, VertexVectorMap vertex_d1_pm, VertexVectorMap vertex_d2_pm)
 Constructor.
 

Operations

template<class OutputIterator >
OutputIterator compute (OutputIterator it, FT size)
 Performs the approximation.
 

Constructor & Destructor Documentation

◆ Umbilic_approximation()

template<typename TriangleMesh , typename VertexFTMap , typename VertexVectorMap >
CGAL::Umbilic_approximation< TriangleMesh, VertexFTMap, VertexVectorMap >::Umbilic_approximation ( const TriangleMesh &  tm,
VertexFTMap  vertex_k1_pm,
VertexFTMap  vertex_k2_pm,
VertexVectorMap  vertex_d1_pm,
VertexVectorMap  vertex_d2_pm 
)

Constructor.

Parameters
tmthe triangle mesh
vertex_k1_pmmaximal principal curvatures
vertex_k2_pmminimal principal curvatures
vertex_d1_pmmaximal principal directions of curvature
vertex_d2_pmminimal principal directions of curvature

Member Function Documentation

◆ compute()

template<typename TriangleMesh , typename VertexFTMap , typename VertexVectorMap >
template<class OutputIterator >
OutputIterator CGAL::Umbilic_approximation< TriangleMesh, VertexFTMap, VertexVectorMap >::compute ( OutputIterator  it,
FT  size 
)

Performs the approximation.

The value of size determines the size of the patches around vertices, taken as size times the size of the 1-ring. Umbilics are inserted into it.

Template Parameters
OutputIteratoran output iterator with value type Umbilic*.