CGAL 5.3 - Triangulated Surface Mesh Approximation
CGAL::Surface_mesh_approximation::L21_metric_plane_proxy< TriangleMesh, VertexPointMap, GeomTraits > Class Template Reference

#include <CGAL/Surface_mesh_approximation/L21_metric_plane_proxy.h>

Definition

template<typename TriangleMesh, typename VertexPointMap = typename boost::property_map<TriangleMesh, boost::vertex_point_t>::type, typename GeomTraits = typename Kernel_traits<typename boost::property_traits<VertexPointMap>::value_type>::Kernel>
class CGAL::Surface_mesh_approximation::L21_metric_plane_proxy< TriangleMesh, VertexPointMap, GeomTraits >

Approximation L21 metric of vector proxy.

Is Model Of:
ErrorMetricProxy
Template Parameters
TriangleMesha triangle FaceGraph
VertexPointMapa class model of ReadablePropertyMap with boost::graph_traits<TriangleMesh>::vertex_descriptor as key type, GeomTraits::Point_3 as value type
GeomTraitsa model of Kernel

Public Member Functions

FT compute_error (const face_descriptor f, const TriangleMesh &tm, const Proxy &px) const
 computes the L2,1 error from a face to a proxy. More...
 
template<typename FaceRange >
Proxy fit_proxy (const FaceRange &faces, const TriangleMesh &tm) const
 fits a proxy to a range of faces. More...
 

Types

typedef GeomTraits::Vector_3 Proxy
 Proxy type.
 

Constructor

 L21_metric_plane_proxy (const TriangleMesh &tm, const VertexPointMap &vpmap)
 Constructor. More...
 

Constructor & Destructor Documentation

◆ L21_metric_plane_proxy()

template<typename TriangleMesh , typename VertexPointMap = typename boost::property_map<TriangleMesh, boost::vertex_point_t>::type, typename GeomTraits = typename Kernel_traits<typename boost::property_traits<VertexPointMap>::value_type>::Kernel>
CGAL::Surface_mesh_approximation::L21_metric_plane_proxy< TriangleMesh, VertexPointMap, GeomTraits >::L21_metric_plane_proxy ( const TriangleMesh &  tm,
const VertexPointMap &  vpmap 
)

Constructor.

Parameters
tmtriangle mesh
vpmapvertex point map

Member Function Documentation

◆ compute_error()

template<typename TriangleMesh , typename VertexPointMap = typename boost::property_map<TriangleMesh, boost::vertex_point_t>::type, typename GeomTraits = typename Kernel_traits<typename boost::property_traits<VertexPointMap>::value_type>::Kernel>
FT CGAL::Surface_mesh_approximation::L21_metric_plane_proxy< TriangleMesh, VertexPointMap, GeomTraits >::compute_error ( const face_descriptor  f,
const TriangleMesh &  tm,
const Proxy px 
) const

computes the L2,1 error from a face to a proxy.

Parameters
tminput triangle mesh
fface_descriptor of a face
pxproxy
Returns
computed error

◆ fit_proxy()

template<typename TriangleMesh , typename VertexPointMap = typename boost::property_map<TriangleMesh, boost::vertex_point_t>::type, typename GeomTraits = typename Kernel_traits<typename boost::property_traits<VertexPointMap>::value_type>::Kernel>
template<typename FaceRange >
Proxy CGAL::Surface_mesh_approximation::L21_metric_plane_proxy< TriangleMesh, VertexPointMap, GeomTraits >::fit_proxy ( const FaceRange &  faces,
const TriangleMesh &  tm 
) const

fits a proxy to a range of faces.

Template Parameters
FaceRangerange of face descriptors, model of Range.
Parameters
facesthe range of faces to be fitted
tminput triangle mesh
Returns
fitted proxy