Classes and functions that answer queries about a polygon mesh or its elements.
template<typename PolygonMesh , typename NamedParameters = parameters::Default_named_parameters>
bool CGAL::Polygon_mesh_processing::is_degenerate_edge (typename boost::graph_traits< PolygonMesh >::edge_descriptor e, const PolygonMesh &pm, const NamedParameters &np=parameters::default_values ())
checks whether an edge is degenerate. More...
template<typename EdgeRange , typename TriangleMesh , typename OutputIterator , typename NamedParameters = CGAL::parameters::Default_named_parameters>
OutputIterator CGAL::Polygon_mesh_processing::degenerate_edges (const EdgeRange &edges, const TriangleMesh &tm, OutputIterator out, const NamedParameters &np=parameters::default_values ())
collects the degenerate edges within a given range of edges. More...
template<typename TriangleMesh , typename OutputIterator , typename NamedParameters = CGAL::parameters::Default_named_parameters>
OutputIterator CGAL::Polygon_mesh_processing::degenerate_edges (const TriangleMesh &tm, OutputIterator out, const NamedParameters &np=parameters::default_values ())
calls the function degenerate_edges()
with the range: edges(tm)
. More...
template<typename TriangleMesh , typename NamedParameters = parameters::Default_named_parameters>
bool CGAL::Polygon_mesh_processing::is_degenerate_triangle_face (typename boost::graph_traits< TriangleMesh >::face_descriptor f, const TriangleMesh &tm, const NamedParameters &np=parameters::default_values ())
checks whether a triangle face is degenerate. More...
template<typename FaceRange , typename TriangleMesh , typename OutputIterator , typename NamedParameters = CGAL::parameters::Default_named_parameters>
OutputIterator CGAL::Polygon_mesh_processing::degenerate_faces (const FaceRange &faces, const TriangleMesh &tm, OutputIterator out, const NamedParameters &np=parameters::default_values ())
collects the degenerate faces within a given range of faces. More...
template<typename TriangleMesh , typename OutputIterator , typename NamedParameters = CGAL::parameters::Default_named_parameters>
OutputIterator CGAL::Polygon_mesh_processing::degenerate_faces (const TriangleMesh &tm, OutputIterator out, const NamedParameters &np=parameters::default_values ())
calls the function degenerate_faces()
with the range: faces(tm)
. More...
template<typename TriangleMesh , typename NamedParameters = parameters::Default_named_parameters>
boost::graph_traits< TriangleMesh >::halfedge_descriptor CGAL::Polygon_mesh_processing::is_needle_triangle_face (typename boost::graph_traits< TriangleMesh >::face_descriptor f, const TriangleMesh &tm, const double threshold, const NamedParameters &np=parameters::default_values ())
checks whether a triangle face is needle. More...
template<typename TriangleMesh , typename NamedParameters = parameters::Default_named_parameters>
boost::graph_traits< TriangleMesh >::halfedge_descriptor CGAL::Polygon_mesh_processing::is_cap_triangle_face (typename boost::graph_traits< TriangleMesh >::face_descriptor f, const TriangleMesh &tm, const double threshold, const NamedParameters &np=parameters::default_values ())
checks whether a triangle face is a cap. More...
template<typename TriangleMesh , typename NamedParameters = parameters::Default_named_parameters>
boost::graph_traits<TriangleMesh>::halfedge_descriptor CGAL::Polygon_mesh_processing::is_needle_triangle_face
(
typename boost::graph_traits< TriangleMesh >::face_descriptor
f ,
const TriangleMesh &
tm ,
const double
threshold ,
const NamedParameters &
np = parameters::default_values ()
)
#include <CGAL/Polygon_mesh_processing/shape_predicates.h>
checks whether a triangle face is needle.
A triangle is said to be a needle if its longest edge is much longer than its shortest edge.
Template Parameters
Parameters
f a triangle face of tm
tm triangle mesh containing f
threshold a bound on the ratio of the longest edge length and the shortest edge length
np an optional sequence of Named Parameters among the ones listed below
Optional Named Parameters
vertex_point_map
a property map associating points to the vertices of tm
Type: a class model of ReadablePropertyMap
with boost::graph_traits<TriangleMesh>::vertex_descriptor
as key type and Point_3
as value type
Default: boost::get(CGAL::vertex_point, tm)
geom_traits
an instance of a geometric traits class
Type: The traits class must provide the nested type FT
, and the nested functor Compute_squared_distance_3
.
Default: a CGAL Kernel deduced from the point type, using CGAL::Kernel_traits
Extra: The geometric traits class must be compatible with the vertex point type.
Returns the shortest halfedge if the triangle face is a needle, and a null halfedge otherwise. If the face contains degenerate edges, a halfedge corresponding to one of these edges is returned.
See also is_cap_triangle_face()