|
CGAL 4.10.1 - CGAL and the Boost Graph Library
|
Functions | |
| template<typename FaceGraph > | |
| bool | CGAL::is_border (typename boost::graph_traits< FaceGraph >::halfedge_descriptor hd, const FaceGraph &g) |
returns true if the halfedge hd is on a border. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_border_edge (typename boost::graph_traits< FaceGraph >::halfedge_descriptor hd, const FaceGraph &g) |
returns true if the halfedge hd or the opposite halfedge is on a border. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_border (typename boost::graph_traits< FaceGraph >::edge_descriptor ed, const FaceGraph &g) |
returns true if the edge e is on a border. | |
| template<typename FaceGraph > | |
| boost::optional< typename boost::graph_traits< FaceGraph > ::halfedge_descriptor > | CGAL::is_border (typename boost::graph_traits< FaceGraph >::vertex_descriptor vd, const FaceGraph &g) |
returns a halfedge which is on a border and whose target vertex is vd, if such a halfedge exists. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_closed (const FaceGraph &g) |
returns true if there are no border edges. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_bivalent (typename boost::graph_traits< FaceGraph >::halfedge_descriptor hd, const FaceGraph &g) |
returns true if the target of hd has exactly two incident edges. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_bivalent_mesh (const FaceGraph &g) |
returns true if all vertices have exactly two incident edges. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_trivalent (typename boost::graph_traits< FaceGraph >::halfedge_descriptor hd, const FaceGraph &g) |
returns true if the target of hd has exactly three incident edges. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_trivalent_mesh (const FaceGraph &g) |
returns true if all vertices have exactly three incident edges. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_isolated_triangle (typename boost::graph_traits< FaceGraph >::halfedge_descriptor hd, const FaceGraph &g) |
returns true iff the connected component denoted by hd is a triangle. More... | |
| template<typename FaceGraph > | |
| bool | CGAL::is_triangle (typename boost::graph_traits< FaceGraph >::halfedge_descriptor hd, const FaceGraph &g) |
returns true iff the face denoted by hd is a triangle, that is it has three incident halfedges. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_triangle_mesh (const FaceGraph &g) |
returns true if all faces are triangles. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_isolated_quad (typename boost::graph_traits< FaceGraph >::halfedge_descriptor hd, const FaceGraph &g) |
returns true iff the connected component denoted by hd is a quadrilateral. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_quad (typename boost::graph_traits< FaceGraph >::halfedge_descriptor hd, const FaceGraph &g) |
returns true iff the face denoted by hd is a quad, that is it has four incident halfedges. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_quad_mesh (const FaceGraph &g) |
returns true if all faces are quadrilaterals. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_tetrahedron (typename boost::graph_traits< FaceGraph >::halfedge_descriptor hd, const FaceGraph &g) |
returns true iff the connected component denoted by hd is a tetrahedron. | |
| template<typename FaceGraph > | |
| bool | CGAL::is_hexahedron (typename boost::graph_traits< FaceGraph >::halfedge_descriptor hd, const FaceGraph &g) |
returns true iff the connected component denoted by hd is a hexahedron. | |
| template<typename Graph , typename P > | |
| boost::graph_traits< Graph > ::halfedge_descriptor | CGAL::make_triangle (const P &p0, const P &p1, const P &p2, Graph &g) |
Creates an isolated triangle with border edges in g having p0, p1, and p2 as points and adds it to the graph g. More... | |
| template<typename Graph , typename P > | |
| boost::graph_traits< Graph > ::halfedge_descriptor | CGAL::make_quad (const P &p0, const P &p1, const P &p2, const P &p3, Graph &g) |
Creates an isolated quad with border edges in g having p0, p1, p2, and p3 as points and adds it to the graph g. More... | |
| template<typename Graph , typename P > | |
| boost::graph_traits< Graph > ::halfedge_descriptor | CGAL::make_hexahedron (const P &p0, const P &p1, const P &p2, const P &p3, const P &p4, const P &p5, const P &p6, const P &p7, Graph &g) |
Creates an isolated hexahedron in g having p0, p1, ... , and p7 as points and adds it to the graph g. More... | |
| template<typename Graph , typename P > | |
| boost::graph_traits< Graph > ::halfedge_descriptor | CGAL::make_tetrahedron (const P &p0, const P &p1, const P &p2, const P &p3, Graph &g) |
Creates an isolated tetrahedron in g having p0, p1, p2, and p3 as points and adds it to the graph g. More... | |
| template<typename FaceGraph > | |
| void | CGAL::clear (FaceGraph &g) |
| removes all vertices, faces and halfedges from a graph. More... | |
| template<typename SourceMesh , typename TargetMesh , typename V2V = Emptyset_iterator, typename H2H = Emptyset_iterator, typename F2F = Emptyset_iterator, typename Src_vpm = typename boost::property_map<SourceMesh, vertex_point_t>::const_type, typename Tgt_vpm = typename boost::property_map<TargetMesh, vertex_point_t>::type> | |
| void | CGAL::copy_face_graph (const SourceMesh &sm, TargetMesh &tm, V2V v2v=V2V(), H2H h2h=H2H(), F2F f2f=F2F(), Src_vpm sm_vpm=get(vertex_point, sm), Tgt_vpm tm_vpm=get(vertex_point, tm)) |
copies a source model of FaceListGraph into a target model of a FaceListGraph. More... | |
| void CGAL::clear | ( | FaceGraph & | g) |
removes all vertices, faces and halfedges from a graph.
Calls remove_edge(), remove_vertex(), and remove_face() for each edge, vertex or face.
If the graph has a member function clear(), it will be called instead.
| FaceGraph | model of MutableHalfedgeGraph and MutableFaceGraph |
| g | the graph to clear |
#include <CGAL/boost/graph/helpers.h>
| void CGAL::copy_face_graph | ( | const SourceMesh & | sm, |
| TargetMesh & | tm, | ||
| V2V | v2v = V2V(), |
||
| H2H | h2h = H2H(), |
||
| F2F | f2f = F2F(), |
||
| Src_vpm | sm_vpm = get(vertex_point, sm), |
||
| Tgt_vpm | tm_vpm = get(vertex_point, tm) |
||
| ) |
copies a source model of FaceListGraph into a target model of a FaceListGraph.
OutputIterators can be provided to produce a mapping between source and target elements. The target graph is not cleared.
| SourceMesh | a model of FaceListGraph. The descriptor types boost::graph_traits<SourceMesh>::vertex_descriptor and boost::graph_traits<SourceMesh>::face_descriptor must be models of Hashable. |
| TargetMesh | a model of FaceListGraph |
| V2V | a model of OutputIterator accepting std::pair<sm_vertex_descriptor, tm_vertex_descriptor> |
| H2H | a model of OutputIterator accepting std::pair<sm_halfedge_descriptor, tm_halfedge_descriptor> |
| F2F | a model of OutputIterator accepting std::pair<sm_face_descriptor, tm_face_descriptor> |
| Src_vpm | a model of ReadablePropertyMap with sm_vertex_descriptor as key |
| Tgt_vpm | a model of WritablePropertyMap with tm_vertex_descriptor as key where the prefix sm_ and tm_ mean belonging to the source and target mesh respectively. |
The types sm_vertex_descriptor and sm_face_descriptor must be models of the concept Hashable.
| sm | the source mesh |
| tm | the target mesh |
| v2v | pairs of vertex_descriptors from sm and corresponding vertex_descriptors in tm are added to v2v |
| h2h | pairs of halfedge_descriptors from sm and corresponding halfedge_descriptors in tm are added to h2h |
| f2f | pairs of face_descriptors from sm and corresponding face_descriptors in tm are added to f2f |
| sm_vpm | vertex point map for sm |
| tm_vpm | vertex point map for tm |
The points from sm to tm are converted using CGAL::Cartesian_converter<SourceKernel, TargetKernel>. SourceKernel and TargetKernel are deduced using CGAL::Kernel_traits from the value types of Src_vpm and Tgt_vpm.
Other properties are not copied.
#include <CGAL/boost/graph/copy_face_graph.h>
| bool CGAL::is_isolated_triangle | ( | typename boost::graph_traits< FaceGraph >::halfedge_descriptor | hd, |
| const FaceGraph & | g | ||
| ) |
returns true iff the connected component denoted by hd is a triangle.
g must be valid. #include <CGAL/boost/graph/helpers.h>
| boost::graph_traits<Graph>::halfedge_descriptor CGAL::make_hexahedron | ( | const P & | p0, |
| const P & | p1, | ||
| const P & | p2, | ||
| const P & | p3, | ||
| const P & | p4, | ||
| const P & | p5, | ||
| const P & | p6, | ||
| const P & | p7, | ||
| Graph & | g | ||
| ) |
Creates an isolated hexahedron in g having p0, p1, ... , and p7 as points and adds it to the graph g.
p0, in the face with the vertices with the points p0, p1, p2, and p3. #include <CGAL/boost/graph/helpers.h>
| boost::graph_traits<Graph>::halfedge_descriptor CGAL::make_quad | ( | const P & | p0, |
| const P & | p1, | ||
| const P & | p2, | ||
| const P & | p3, | ||
| Graph & | g | ||
| ) |
Creates an isolated quad with border edges in g having p0, p1, p2, and p3 as points and adds it to the graph g.
p0. #include <CGAL/boost/graph/helpers.h>
| boost::graph_traits<Graph>::halfedge_descriptor CGAL::make_tetrahedron | ( | const P & | p0, |
| const P & | p1, | ||
| const P & | p2, | ||
| const P & | p3, | ||
| Graph & | g | ||
| ) |
Creates an isolated tetrahedron in g having p0, p1, p2, and p3 as points and adds it to the graph g.
p0, in the face with the vertices with the points p0, p1, and p2. #include <CGAL/boost/graph/helpers.h>
| boost::graph_traits<Graph>::halfedge_descriptor CGAL::make_triangle | ( | const P & | p0, |
| const P & | p1, | ||
| const P & | p2, | ||
| Graph & | g | ||
| ) |
Creates an isolated triangle with border edges in g having p0, p1, and p2 as points and adds it to the graph g.
p0. #include <CGAL/boost/graph/helpers.h>