|
template<class HalfedgeDS_with_id > |
void | set_halfedgeds_items_id (Polyhedron_with_id &P) |
| Given a CGAL::Polyhedron_3 , for each simplex type (vertex, halfedge, facet) associates an index from 0 to the number of simplices minus 1 to each simplex of hds . More...
|
|
template<typename Triangulation > |
void | set_triangulation_ids (Triangulation &tr) |
| This function initializes vertex, edge, and face indices of the triangulation tr and must be called prior to using tr as a BGL graph in an algorithm that requires vertex, halfedge, edge, or face indices. More...
|
|
template<typename Graph > |
Iterator_range< Halfedge_around_source_iterator< Graph > > | halfedges_around_source (typename boost::graph_traits< Graph >::halfedge_descriptor h, const Graph &g) |
| returns an iterator range over all halfedges with vertex source(h,g) as source.
|
|
template<typename Graph > |
Iterator_range< Halfedge_around_source_iterator< Graph > > | halfedges_around_source (typename boost::graph_traits< Graph >::vertex_descriptor v, const Graph &g) |
| returns an iterator range over all halfedges with vertex v as source.
|
|
template<typename Graph > |
Iterator_range< Halfedge_around_target_iterator< Graph > > | halfedges_around_target (typename boost::graph_traits< Graph >::halfedge_descriptor h, const Graph &g) |
| returns an iterator range over all halfedges with vertex target(h,g) as target.
|
|
template<typename Graph > |
Iterator_range< Halfedge_around_target_iterator< Graph > > | halfedges_around_target (typename boost::graph_traits< Graph >::vertex_descriptor v, const Graph &g) |
| returns an iterator range over all halfedges with vertex v as target.
|
|
template<typename Graph > |
Iterator_range< Halfedge_around_face_iterator< Graph > > | halfedges_around_face (typename boost::graph_traits< Graph >::halfedge_descriptor h, const Graph &g) |
| returns an iterator range over all halfedges incident to the same face or border as h .
|
|
template<typename Graph > |
Iterator_range< Face_around_target_iterator< Graph > > | faces_around_target (typename boost::graph_traits< Graph >::halfedge_descriptor h, const Graph &g) |
| returns an iterator range over all faces around vertex target(h,g) .
|
|
template<typename Graph > |
Iterator_range< Face_around_face_iterator< Graph > > | faces_around_face (typename boost::graph_traits< Graph >::halfedge_descriptor h, const Graph &g) |
| returns an iterator range over all edge-adjacent faces to the same face face(h,g) .
|
|
template<typename Graph > |
Iterator_range< Vertex_around_target_iterator< Graph > > | vertices_around_target (typename boost::graph_traits< Graph >::halfedge_descriptor h, const Graph &g) |
| returns an iterator range over all vertices adjacent to the vertex target(h,g) .
|
|
template<typename Graph > |
Iterator_range< Vertex_around_face_iterator< Graph > > | vertices_around_face (typename boost::graph_traits< Graph >::halfedge_descriptor h, const Graph &g) |
| returns an iterator range over all vertices adjacent to the face face(h,g) .
|
|
template<typename FaceGraph > |
bool | 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 | 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 | 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 > | 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 | is_closed (const FaceGraph &g) |
| returns true if there are no border edges.
|
|
template<typename FaceGraph > |
bool | 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 | is_bivalent_mesh (const FaceGraph &g) |
| returns true if all vertices have exactly two incident edges.
|
|
template<typename FaceGraph > |
bool | 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 | is_trivalent_mesh (const FaceGraph &g) |
| returns true if all vertices have exactly three incident edges.
|
|
template<typename FaceGraph > |
bool | 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 | 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 | is_triangle_mesh (const FaceGraph &g) |
| returns true if all faces are triangles.
|
|
template<typename FaceGraph > |
bool | 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 | 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 | is_quad_mesh (const FaceGraph &g) |
| returns true if all faces are quadrilaterals.
|
|
template<typename FaceGraph > |
bool | 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 Graph > |
bool | is_valid_halfedge_graph (const Graph &g, bool verb=false) |
| checks the integrity of g . More...
|
|
template<typename Graph > |
bool | is_valid_face_graph (const Graph &g, bool verb=false) |
| checks the integrity of g . More...
|
|
template<typename Mesh > |
bool | is_valid_polygon_mesh (const Mesh &g, bool verb=false) |
| checks the integrity of g . More...
|
|
template<typename FaceGraph > |
bool | 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 FaceGraph > |
void | clear (FaceGraph &g) |
| removes all vertices, faces and halfedges from a graph. More...
|
|
template<typename FaceGraph > |
bool | is_empty (const FaceGraph &g) |
| checks whether the graph is empty, by checking that it does not contain any vertex. More...
|
|
template<typename Graph > |
int | vertex_index_in_face (const typename boost::graph_traits< Graph >::vertex_descriptor vd, const typename boost::graph_traits< Graph >::face_descriptor fd, const Graph &g) |
| returns the number of calls to next() one has to apply to the halfedge hd for source(hd, mesh) == vd to be true, starting from hd = halfedge(fd, tm) . More...
|
|
template<typename Graph > |
int | halfedge_index_in_face (typename boost::graph_traits< Graph >::halfedge_descriptor he, const Graph &g) |
| returns the number of calls to next(hd, tm) one has to apply to hd for hd == he to be true, starting from hd = halfedge(face(he, tm), tm) . More...
|
|
template<typename Graph , typename P > |
boost::graph_traits< Graph >::halfedge_descriptor | make_triangle (const P &p0, const P &p1, const P &p2, Graph &g) |
| Creates an isolated triangle with its vertices initialized to p0 , p1 and p2 , and adds it to the graph g . More...
|
|
template<typename Graph , typename P > |
boost::graph_traits< Graph >::halfedge_descriptor | make_quad (const P &p0, const P &p1, const P &p2, const P &p3, Graph &g) |
| Creates an isolated quad with its vertices initialized to p0 , p1 , p2 , and p3 , and adds it to the graph g . More...
|
|
template<typename Graph , typename P > |
boost::graph_traits< Graph >::halfedge_descriptor | 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 with its vertices initialized to p0 , p1 , ... , and p7 , and adds it to the graph g . More...
|
|
template<typename Graph , typename P > |
boost::graph_traits< Graph >::halfedge_descriptor | make_tetrahedron (const P &p0, const P &p1, const P &p2, const P &p3, Graph &g) |
| Creates an isolated tetrahedron with its vertices initialized to p0 , p1 , p2 , and p3 , and adds it to the graph g . More...
|
|
template<class Graph , class P > |
boost::graph_traits< Graph >::halfedge_descriptor | make_regular_prism (typename boost::graph_traits< Graph >::vertices_size_type nb_vertices, Graph &g, const P &base_center=P(0, 0, 0), typename CGAL::Kernel_traits< P >::Kernel::FT height=1.0, typename CGAL::Kernel_traits< P >::Kernel::FT radius=1.0, bool is_closed=true) |
| Creates a triangulated regular prism, outward oriented, having nb_vertices vertices in each of its bases and adds it to the graph g . More...
|
|
template<class Graph , class P > |
boost::graph_traits< Graph >::halfedge_descriptor | make_pyramid (typename boost::graph_traits< Graph >::vertices_size_type nb_vertices, Graph &g, const P &base_center=P(0, 0, 0), typename CGAL::Kernel_traits< P >::Kernel::FT height=1.0, typename CGAL::Kernel_traits< P >::Kernel::FT radius=1.0, bool is_closed=true) |
| Creates a pyramid, outward oriented, having nb_vertices vertices in its base and adds it to the graph g . More...
|
|
template<class Graph , class P > |
boost::graph_traits< Graph >::halfedge_descriptor | make_icosahedron (Graph &g, const P ¢er=P(0, 0, 0), typename CGAL::Kernel_traits< P >::Kernel::FT radius=1.0) |
| Creates an icosahedron, outward oriented, centered in center and adds it to the graph g . More...
|
|
template<class Graph , class CoordinateFunctor > |
boost::graph_traits< Graph >::halfedge_descriptor | make_grid (typename boost::graph_traits< Graph >::vertices_size_type i, typename boost::graph_traits< Graph >::vertices_size_type j, Graph &g, const CoordinateFunctor &calculator, bool triangulated=false) |
| Creates a row major ordered grid with i cells along the width and j cells along the height and adds it to the graph g . More...
|
|
template<class FaceRange , class FaceGraph , class IsFaceSelectedPMap , class OutputIterator > |
OutputIterator | expand_face_selection (const FaceRange &selection, FaceGraph &fg, unsigned int k, IsFaceSelectedPMap is_selected, OutputIterator out) |
| augments a selection with faces of fg that are adjacent to a face in selection . More...
|
|
template<class FaceRange , class FaceGraph , class IsFaceSelectedPMap , class OutputIterator > |
OutputIterator | reduce_face_selection (const FaceRange &selection, FaceGraph &fg, unsigned int k, IsFaceSelectedPMap is_selected, OutputIterator out) |
| diminishes a selection of faces from faces adjacent to a non-selected face. More...
|
|
template<typename TriangleMesh , typename IsSelectedMap , typename NamedParameters > |
void | regularize_face_selection_borders (TriangleMesh &mesh, IsSelectedMap is_selected, double weight, const NamedParameters &np) |
| regularizes a selection in order to minimize the length of the border of the selection. More...
|
|
template<class HalfedgeRange , class FaceGraph , class OutputIterator > |
OutputIterator | select_incident_faces (const HalfedgeRange &hedges, FaceGraph &fg, OutputIterator out) |
| Discovers and puts in out all faces incident to the target vertex of a halfedge in hedges . More...
|
|
template<class EdgeRange , class HalfedgeGraph , class IsEdgeSelectedPMap , class OutputIterator > |
OutputIterator | expand_edge_selection (const EdgeRange &selection, HalfedgeGraph &fg, unsigned int k, IsEdgeSelectedPMap is_selected, OutputIterator out) |
| augments a selection with edges of fg that are adjacent to an edge in selection . More...
|
|
template<class EdgeRange , class HalfedgeGraph , class IsEdgeSelectedPMap , class OutputIterator > |
OutputIterator | reduce_edge_selection (const EdgeRange &selection, HalfedgeGraph &fg, unsigned int k, IsEdgeSelectedPMap is_selected, OutputIterator out) |
| diminishes a selection of edges from edges adjacent to a non-selected edge. More...
|
|
template<class VertexRange , class HalfedgeGraph , class IsVertexSelectedPMap , class OutputIterator > |
OutputIterator | expand_vertex_selection (const VertexRange &selection, HalfedgeGraph &fg, unsigned int k, IsVertexSelectedPMap is_selected, OutputIterator out) |
| augments a selection with vertices of fg that are adjacent to a vertex in selection . More...
|
|
template<class VertexRange , class HalfedgeGraph , class IsVertexSelectedPMap , class OutputIterator > |
OutputIterator | reduce_vertex_selection (const VertexRange &selection, HalfedgeGraph &fg, unsigned int k, IsVertexSelectedPMap is_selected, OutputIterator out) |
| diminishes a selection of vertices from vertices adjacent to a non-selected vertex. More...
|
|
template<class TriangleMesh , class FaceRange , class IsSelectedMap > |
void | expand_face_selection_for_removal (const FaceRange &faces_to_be_deleted, TriangleMesh &tm, IsSelectedMap is_selected) |
| Expands a selection of faces so that their removal does not create any non manifold vertex. More...
|
|
template<typename Graph , typename Visitor , typename IsTerminal > |
void | split_graph_into_polylines (const Graph &graph, Visitor &polyline_visitor, IsTerminal is_terminal) |
| splits into polylines the graph g at vertices of degree greater than 2 and at vertices for which is_terminal(v,graph)==true . More...
|
|
template<typename SourceMesh , typename TargetMesh , typename NamedParameters1 , typename NamedParameters2 > |
void | copy_face_graph (const SourceMesh &sm, TargetMesh &tm, const NamedParameters1 &np1, const NamedParameters2 &np2) |
| copies a source model of FaceListGraph into a target model of a FaceListGraph . More...
|
|
template<typename FaceGraph , typename NamedParameters > |
bool | write_wrl (std::ostream &os, const FaceGraph &g, const NamedParameters &np) |
| writes the graph g in the wrl format (VRML 2.0). More...
|
|
template<typename FaceGraph , typename NamedParameters > |
bool | write_off (std::ostream &os, const FaceGraph &g, const NamedParameters &np) |
| writes the graph g in the OFF format. More...
|
|
template<typename FaceGraph , typename NamedParameters > |
bool | write_off (const char *fname, const FaceGraph &g, const NamedParameters &np) |
| writes the graph g in the OFF format into a file named fname . More...
|
|
template<typename FaceGraph , typename NamedParameters > |
bool | read_off (std::istream &is, FaceGraph &g, NamedParameters np) |
| reads the graph g from data in the OFF format. More...
|
|
template<typename FaceGraph , typename NamedParameters > |
bool | read_off (const char *fname, FaceGraph &g, NamedParameters np) |
| reads the graph g from data in the OFF format. More...
|
|
template<class TriangleMesh , class NamedParameters > |
void | write_vtp (std::ostream &os, const TriangleMesh &mesh, const NamedParameters &np) |
| writes a triangulated surface mesh in the PolyData XML format. More...
|
|
template<typename InputGraph , typename EdgeCostMap , typename VertexLabelCostMap , typename VertexLabelMap , typename NamedParameters > |
double | alpha_expansion_graphcut (const InputGraph &input_graph, EdgeCostMap edge_cost_map, VertexLabelCostMap vertex_label_cost_map, VertexLabelMap vertex_label_map, const NamedParameters &np) |
| regularizes a partition of a graph into n labels using the alpha expansion algorithm [1]. More...
|
|
enum | vertex_index_t |
| The constant vertex_index is a property tag which identifies the index property of a vertex of a Bgl Graph . More...
|
|
enum | halfedge_index_t |
| The constant halfedge_index is a property tag which identifies the index property of a halfedge of a HalfedgeGraph . More...
|
|
enum | edge_index_t |
| The constant edge_index is a property tag which identifies the index property of an edge of a Bgl Graph . More...
|
|
enum | face_index_t |
| The constant face_index is a property tag which identifies the index property of a face of a FaceGraph . More...
|
|
enum | vertex_point_t |
| The constant vertex_point is a property tag which refers to the geometric embedding property of a vertex of a HalfedgeGraph . More...
|
|