CGAL 6.3 - Triangulated Surface Mesh Deformation
Loading...
Searching...
No Matches
SurfaceMeshDeformationWeights Concept Reference

Definition

Concept describing the set of requirements for calculating weights for halfedges.

Example:

// a simple model to `SurfaceMeshDeformationWeights` concept, which provides uniform weights
template <class TriangleMesh>
struct Identity_weight
{
typedef TriangleMesh Triangle_mesh;
template<class VertexPointMap>
double operator()(typename boost::graph_traits<TriangleMesh>::halfedge_descriptor /*e*/, const TriangleMesh& /*p*/, VertexPointMap /*v*/)
{ return 1.0; }
};
unspecified_type Triangle_mesh
a model of HalfedgeGraph
Definition SurfaceMeshDeformationWeights.h:27
double operator()(boost::graph_traits< Triangle_mesh >::halfedge_descriptor he, const Triangle_mesh &triangle_mesh, VertexPointMap vpm)
Function computing the halfedge weight of halfedge he.

Types

typedef unspecified_type Triangle_mesh
 a model of HalfedgeGraph

Creation

 SurfaceMeshDeformationWeights ()
 Default constructor. Required only if the default parameter is used in the constructor of CGAL::Surface_mesh_deformation.

Operations

template<class VertexPointMap>
double operator() (boost::graph_traits< Triangle_mesh >::halfedge_descriptor he, const Triangle_mesh &triangle_mesh, VertexPointMap vpm)
 Function computing the halfedge weight of halfedge he.

Member Function Documentation

◆ operator()()

template<class VertexPointMap>
double SurfaceMeshDeformationWeights::operator() ( boost::graph_traits< Triangle_mesh >::halfedge_descriptor he,
const Triangle_mesh & triangle_mesh,
VertexPointMap vpm )

Function computing the halfedge weight of halfedge he.

Template Parameters
VertexPointMapa model of ReadWritePropertyMap with boost::graph_traits<Triangle_mesh>::vertex_descriptor as key and a 3D point from a CGAL Kernel as value type