-
a property map associating points to the vertices of
pmesh
-
Type: a class model of
ReadablePropertyMap
withboost::graph_traits<PolygonMesh>::vertex_descriptor
as key type andPoint_3
as value type -
Default:
boost::get(CGAL::vertex_point, pmesh)
CGAL 6.1 - Polygon Mesh Processing
|
Functions to compute discrete curvatures, lengths of edges and borders, areas of faces and patches, volumes of closed meshes.
Functions | |
template<typename PolygonMesh , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
FT | CGAL::Polygon_mesh_processing::angle_sum (typename boost::graph_traits< PolygonMesh >::vertex_descriptor v, const PolygonMesh &pmesh, const NamedParameters &np=parameters::default_values()) |
computes the sum of the angles around a vertex. | |
template<typename TriangleMesh , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
FT | CGAL::Polygon_mesh_processing::discrete_Gaussian_curvature (typename boost::graph_traits< TriangleMesh >::vertex_descriptor v, const TriangleMesh &tmesh, const NamedParameters &np=parameters::default_values()) |
computes the discrete Gaussian curvature at a vertex. | |
template<typename TriangleMesh , typename VertexCurvatureMap , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
void | CGAL::Polygon_mesh_processing::discrete_Gaussian_curvatures (const TriangleMesh &tmesh, VertexCurvatureMap vcm, const NamedParameters &np=parameters::default_values()) |
computes the discrete Gaussian curvatures at the vertices of a mesh. | |
template<typename TriangleMesh , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
FT | CGAL::Polygon_mesh_processing::discrete_mean_curvature (typename boost::graph_traits< TriangleMesh >::vertex_descriptor v, const TriangleMesh &tmesh, const NamedParameters &np=parameters::default_values()) |
computes the discrete mean curvature at a vertex. | |
template<typename TriangleMesh , typename VertexCurvatureMap , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
void | CGAL::Polygon_mesh_processing::discrete_mean_curvatures (const TriangleMesh &tmesh, VertexCurvatureMap vcm, const NamedParameters &np=parameters::default_values()) |
computes the discrete mean curvatures at the vertices of a mesh. | |
template<typename PolygonMesh , typename NamedParameters = parameters::Default_named_parameters> | |
FT | CGAL::Polygon_mesh_processing::edge_length (typename boost::graph_traits< PolygonMesh >::halfedge_descriptor h, const PolygonMesh &pmesh, const NamedParameters &np=parameters::default_values()) |
computes the length of an edge of a given polygon mesh. | |
template<typename PolygonMesh , typename NamedParameters = parameters::Default_named_parameters> | |
FT | CGAL::Polygon_mesh_processing::squared_edge_length (typename boost::graph_traits< PolygonMesh >::halfedge_descriptor h, const PolygonMesh &pmesh, const NamedParameters &np=parameters::default_values()) |
computes the squared length of an edge of a given polygon mesh. | |
template<typename PolygonMesh , typename NamedParameters = parameters::Default_named_parameters> | |
FT | CGAL::Polygon_mesh_processing::face_border_length (typename boost::graph_traits< PolygonMesh >::halfedge_descriptor h, const PolygonMesh &pmesh, const NamedParameters &np=parameters::default_values()) |
computes the length of the border polyline that contains a given halfedge. | |
template<typename PolygonMesh , typename NamedParameters = parameters::Default_named_parameters> | |
std::pair< halfedge_descriptor, FT > | CGAL::Polygon_mesh_processing::longest_border (const PolygonMesh &pmesh, const NamedParameters &np=parameters::default_values()) |
finds the longest border of a given triangulated surface and returns a halfedge that is part of this border as well as the length of this border. | |
template<typename TriangleMesh , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
FT | CGAL::Polygon_mesh_processing::face_area (typename boost::graph_traits< TriangleMesh >::face_descriptor f, const TriangleMesh &tmesh, const NamedParameters &np=parameters::default_values()) |
computes the area of a face of a given triangulated surface mesh. | |
template<typename TriangleMesh , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
FT | CGAL::Polygon_mesh_processing::squared_face_area (typename boost::graph_traits< TriangleMesh >::face_descriptor f, const TriangleMesh &tmesh, const NamedParameters &np=parameters::default_values()) |
computes the squared area of a face of a given triangulated surface mesh. | |
template<typename FaceRange , typename TriangleMesh , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
FT | CGAL::Polygon_mesh_processing::area (FaceRange face_range, const TriangleMesh &tmesh, const NamedParameters &np=parameters::default_values()) |
computes the area of a range of faces of a given triangulated surface mesh. | |
template<typename TriangleMesh , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
FT | CGAL::Polygon_mesh_processing::area (const TriangleMesh &tmesh, const NamedParameters &np=parameters::default_values()) |
computes the surface area of a triangulated surface mesh. | |
template<typename TriangleMesh , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
FT | CGAL::Polygon_mesh_processing::volume (const TriangleMesh &tmesh, const NamedParameters &np=parameters::default_values()) |
computes the volume of the domain bounded by a closed triangulated surface mesh. | |
template<typename TriangleMesh , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
FT | CGAL::Polygon_mesh_processing::face_aspect_ratio (typename boost::graph_traits< TriangleMesh >::face_descriptor f, const TriangleMesh &tmesh, const NamedParameters &np=parameters::default_values()) |
computes the aspect ratio of a face of a given triangulated surface mesh. | |
template<typename TriangleMesh , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
Point_3 | CGAL::Polygon_mesh_processing::centroid (const TriangleMesh &tmesh, const NamedParameters &np=parameters::default_values()) |
computes the centroid of a volume bounded by a closed triangulated surface mesh. | |
template<typename PolygonMesh1 , typename PolygonMesh2 , typename FacePairOutputIterator , typename FaceOutputIterator1 , typename FaceOutputIterator2 , typename NamedParameters1 = parameters::Default_named_parameters, typename NamedParameters2 = parameters::Default_named_parameters> | |
void | CGAL::Polygon_mesh_processing::match_faces (const PolygonMesh1 &m1, const PolygonMesh2 &m2, FacePairOutputIterator common, FaceOutputIterator1 m1_only, FaceOutputIterator2 m2_only, const NamedParameters1 &np1=parameters::default_values(), const NamedParameters2 &np2=parameters::default_values()) |
identifies faces only present in m1 and m2 as well as the faces present in both polygon meshes. | |
FT CGAL::Polygon_mesh_processing::angle_sum | ( | typename boost::graph_traits< PolygonMesh >::vertex_descriptor | v, |
const PolygonMesh & | pmesh, | ||
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/curvature.h>
computes the sum of the angles around a vertex.
The angle sum is given in degrees.
PolygonMesh | a model of FaceGraph |
NamedParameters | a sequence of Named Parameters |
v | the vertex whose sum of angles is computed |
pmesh | the polygon mesh to which v belongs |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
v
. The return type FT
is a number type either deduced from the geom_traits
Named Parameters if provided, or the geometric traits class deduced from the point property map of pmesh
.FT CGAL::Polygon_mesh_processing::area | ( | const TriangleMesh & | tmesh, |
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/measure.h>
computes the surface area of a triangulated surface mesh.
TriangleMesh | a model of FaceGraph |
NamedParameters | a sequence of Named Parameters |
tmesh | the triangulated surface mesh |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
tmesh
. The return type FT
is a number type either deduced from the geom_traits
Named Parameters if provided, or the geometric traits class deduced from the point property map of tmesh
.Kernel::FT
does not support the sqrt()
operation, the square root computation will be performed approximately.face_area()
FT CGAL::Polygon_mesh_processing::area | ( | FaceRange | face_range, |
const TriangleMesh & | tmesh, | ||
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/measure.h>
computes the area of a range of faces of a given triangulated surface mesh.
FaceRange | range of boost::graph_traits<PolygonMesh>::face_descriptor , model of Range . Its iterator type is InputIterator . |
TriangleMesh | a model of FaceGraph |
NamedParameters | a sequence of Named Parameters |
face_range | the range of faces of whose area is computed |
tmesh | the triangulated surface mesh to which the faces of face_range belong |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
faces
. The return type FT
is a number type either deduced from the geom_traits
Named Parameters if provided, or the geometric traits class deduced from the point property map of tmesh
.Kernel::FT
does not support the sqrt()
operation, the square root computation will be performed approximately.face_area()
Point_3 CGAL::Polygon_mesh_processing::centroid | ( | const TriangleMesh & | tmesh, |
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/measure.h>
computes the centroid of a volume bounded by a closed triangulated surface mesh.
TriangleMesh | a model of FaceListGraph |
NamedParameters | a sequence of Named Parameters |
tmesh | the closed triangulated surface mesh bounding the volume |
np | an optional sequence of Named Parameters among the ones listed below |
tmesh
is closed
| |
|
tmesh
. FT CGAL::Polygon_mesh_processing::discrete_Gaussian_curvature | ( | typename boost::graph_traits< TriangleMesh >::vertex_descriptor | v, |
const TriangleMesh & | tmesh, | ||
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/curvature.h>
computes the discrete Gaussian curvature at a vertex.
We refer to Meyer et al. [13] for the definition of discrete Gaussian curvature.
TriangleMesh | a model of FaceGraph |
NamedParameters | a sequence of Named Parameters |
v | the vertex whose discrete Gaussian curvature is being computed |
tmesh | the triangle mesh to which v belongs |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
v
. The return type FT
is a number type either deduced from the geom_traits
Named Parameters if provided, or the geometric traits class deduced from the point property map of tmesh
.tmesh
is a triangle mesh void CGAL::Polygon_mesh_processing::discrete_Gaussian_curvatures | ( | const TriangleMesh & | tmesh, |
VertexCurvatureMap | vcm, | ||
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/curvature.h>
computes the discrete Gaussian curvatures at the vertices of a mesh.
We refer to Meyer et al. [13] for the definition of discrete Gaussian curvature.
TriangleMesh | a model of FaceGraph |
VertexCurvatureMap | must be a model of WritablePropertyMap with key type boost::graph_traits<TriangleMesh>::vertex_descriptor and value type FT , which is either geom_traits::FT if this named parameter is provided, or kernel::FT with the kernel deduced from from the point property map of tmesh . |
NamedParameters | a sequence of Named Parameters |
tmesh | the triangle mesh to which v belongs |
vcm | the property map that contains the computed discrete curvatures |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
tmesh
is a triangle mesh FT CGAL::Polygon_mesh_processing::discrete_mean_curvature | ( | typename boost::graph_traits< TriangleMesh >::vertex_descriptor | v, |
const TriangleMesh & | tmesh, | ||
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/curvature.h>
computes the discrete mean curvature at a vertex.
We refer to Meyer et al. [13] for the definition of discrete mean curvature.
TriangleMesh | a model of FaceGraph |
NamedParameters | a sequence of Named Parameters |
v | the vertex whose discrete mean curvature is being computed |
tmesh | the triangle mesh to which v belongs |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
v
. The return type FT
is a number type either deduced from the geom_traits
Named Parameters if provided, or the geometric traits class deduced from the point property map of tmesh
.tmesh
is a triangle mesh void CGAL::Polygon_mesh_processing::discrete_mean_curvatures | ( | const TriangleMesh & | tmesh, |
VertexCurvatureMap | vcm, | ||
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/curvature.h>
computes the discrete mean curvatures at the vertices of a mesh.
We refer to Meyer et al. [13] for the definition of discrete mean curvature.
TriangleMesh | a model of FaceGraph |
VertexCurvatureMap | must be a model of WritablePropertyMap with key type boost::graph_traits<TriangleMesh>::vertex_descriptor and value type FT , which is either geom_traits::FT if this named parameter is provided, or kernel::FT with the kernel deduced from from the point property map of tmesh . |
NamedParameters | a sequence of Named Parameters |
tmesh | the triangle mesh to which v belongs |
vcm | the property map that contains the computed discrete curvatures |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
tmesh
is a triangle mesh FT CGAL::Polygon_mesh_processing::edge_length | ( | typename boost::graph_traits< PolygonMesh >::halfedge_descriptor | h, |
const PolygonMesh & | pmesh, | ||
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/measure.h>
computes the length of an edge of a given polygon mesh.
The edge is given by one of its halfedges, or the edge itself.
PolygonMesh | a model of HalfedgeGraph |
NamedParameters | a sequence of Named Parameters |
h | one halfedge of the edge whose length is computed |
pmesh | the polygon mesh to which h belongs |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
h
. The return type FT
is a number type either deduced from the geom_traits
Named Parameters if provided, or the geometric traits class deduced from the point property map of pmesh
.FT
does not support the sqrt()
operation, the square root computation will be performed approximately.FT CGAL::Polygon_mesh_processing::face_area | ( | typename boost::graph_traits< TriangleMesh >::face_descriptor | f, |
const TriangleMesh & | tmesh, | ||
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/measure.h>
computes the area of a face of a given triangulated surface mesh.
TriangleMesh | a model of FaceGraph |
NamedParameters | a sequence of Named Parameters |
f | the face whose area is computed |
tmesh | the triangulated surface mesh to which f belongs |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
f != boost::graph_traits<TriangleMesh>::null_face()
f
. The return type FT
is a number type either deduced from the geom_traits
Named Parameters if provided, or the geometric traits class deduced from the point property map of tmesh
.Kernel::FT
does not support the sqrt()
operation, the square root computation will be performed approximately.squared_face_area()
area()
FT CGAL::Polygon_mesh_processing::face_aspect_ratio | ( | typename boost::graph_traits< TriangleMesh >::face_descriptor | f, |
const TriangleMesh & | tmesh, | ||
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/measure.h>
computes the aspect ratio of a face of a given triangulated surface mesh.
TriangleMesh | a model of HalfedgeGraph |
NamedParameters | a sequence of Named Parameters |
f | the face whose aspect ratio is computed |
tmesh | the triangulated surface mesh to which f belongs |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
f != boost::graph_traits<TriangleMesh>::null_face()
f
. The return type FT
is a number type either deduced from the geom_traits
Named Parameters if provided, or the geometric traits class deduced from the point property map of tmesh
.Kernel::FT
does not support the sqrt()
operation, the square root computation will be performed approximately. FT CGAL::Polygon_mesh_processing::face_border_length | ( | typename boost::graph_traits< PolygonMesh >::halfedge_descriptor | h, |
const PolygonMesh & | pmesh, | ||
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/measure.h>
computes the length of the border polyline that contains a given halfedge.
PolygonMesh | a model of HalfedgeGraph |
NamedParameters | a sequence of Named Parameters |
h | a halfedge of the border polyline whose length is computed |
pmesh | the polygon mesh to which h belongs |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
face(h, pmesh)
. The return type FT
is a number type either deduced from the geom_traits
Named Parameters if provided, or the geometric traits class deduced from the point property map of pmesh
.Kernel::FT
does not support the sqrt()
operation, the square root computation will be performed approximately.edge_length()
std::pair< halfedge_descriptor, FT > CGAL::Polygon_mesh_processing::longest_border | ( | const PolygonMesh & | pmesh, |
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/measure.h>
finds the longest border of a given triangulated surface and returns a halfedge that is part of this border as well as the length of this border.
PolygonMesh | a model of HalfedgeGraph |
NamedParameters | a sequence of Named Parameters |
pmesh | the polygon mesh |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
first
: a halfedge on the longest border. The return type halfedge_descriptor
is a halfedge descriptor. It is deduced from the graph traits corresponding to the type PolygonMesh
. first
is among the halfedges reported by extract_boundary_cycles()
.second
: the length of the longest border The return type FT
is a number type either deduced from the geom_traits
Named Parameters if provided, or the geometric traits class deduced from the point property map of pmesh
Kernel::FT
does not support the sqrt()
operation, the square root computation will be performed approximately.void CGAL::Polygon_mesh_processing::match_faces | ( | const PolygonMesh1 & | m1, |
const PolygonMesh2 & | m2, | ||
FacePairOutputIterator | common, | ||
FaceOutputIterator1 | m1_only, | ||
FaceOutputIterator2 | m2_only, | ||
const NamedParameters1 & | np1 = parameters::default_values() , |
||
const NamedParameters2 & | np2 = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/measure.h>
identifies faces only present in m1
and m2
as well as the faces present in both polygon meshes.
Two faces are matching if they have the same orientation and the same points.
PolygonMesh1 | a model of HalfedgeListGraph and FaceListGraph |
PolygonMesh2 | a model of HalfedgeListGraph and FaceListGraph |
FaceOutputIterator1 | model of OutputIterator holding boost::graph_traits<PolygonMesh1>::face_descriptor . |
FaceOutputIterator2 | model of OutputIterator holding boost::graph_traits<PolygonMesh2>::face_descriptor . |
FacePairOutputIterator | model of OutputIterator holding std::pair<boost::graph_traits<PolygonMesh1>::face_descriptor, boost::graph_traits<PolygonMesh2>::face_descriptor . |
NamedParameters1 | a sequence of Named Parameters |
NamedParameters2 | a sequence of Named Parameters |
m1 | the first polygon mesh |
m2 | the second polygon mesh |
common | output iterator collecting the faces that are common to both meshes |
m1_only | output iterator collecting the faces that are only in m1 |
m2_only | output iterator collecting the faces that are only in m2 |
np1 | an optional sequence of Named Parameters among the ones listed below |
np2 | an optional sequence of Named Parameters among the ones listed below |
| |
|
FT CGAL::Polygon_mesh_processing::squared_edge_length | ( | typename boost::graph_traits< PolygonMesh >::halfedge_descriptor | h, |
const PolygonMesh & | pmesh, | ||
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/measure.h>
computes the squared length of an edge of a given polygon mesh.
The edge is given by one of its halfedges, or the edge itself.
PolygonMesh | a model of HalfedgeGraph |
NamedParameters | a sequence of Named Parameters |
h | one halfedge of the edge whose squared length is computed |
pmesh | the polygon mesh to which h belongs |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
h
. The return type FT
is a number type either deduced from the geom_traits
Named Parameters if provided, or the geometric traits class deduced from the point property map of pmesh
.edge_length()
face_border_length()
FT CGAL::Polygon_mesh_processing::squared_face_area | ( | typename boost::graph_traits< TriangleMesh >::face_descriptor | f, |
const TriangleMesh & | tmesh, | ||
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/measure.h>
computes the squared area of a face of a given triangulated surface mesh.
TriangleMesh | a model of FaceGraph |
NamedParameters | a sequence of Named Parameters |
f | the face whose squared area is computed |
tmesh | the triangulated surface mesh to which f belongs |
np | an optional sequence of Named Parameters among the ones listed below |
| |
|
f != boost::graph_traits<TriangleMesh>::null_face()
f
. The return type FT
is a number type either deduced from the geom_traits
Named Parameters if provided, or the geometric traits class deduced from the point property map of tmesh
.face_area()
FT CGAL::Polygon_mesh_processing::volume | ( | const TriangleMesh & | tmesh, |
const NamedParameters & | np = parameters::default_values() |
||
) |
#include <CGAL/Polygon_mesh_processing/measure.h>
computes the volume of the domain bounded by a closed triangulated surface mesh.
TriangleMesh | a model of HalfedgeGraph |
NamedParameters | a sequence of Named Parameters |
tmesh | the closed triangulated surface mesh bounding the volume |
np | an optional sequence of Named Parameters among the ones listed below |
tmesh
is closed
| |
|
tmesh
. The return type FT
is a number type either deduced from the geom_traits
Named Parameters if provided, or the geometric traits class deduced from the point property map of tmesh
.