CGAL 5.1 - 3D Polyhedral Surface
|
#include <CGAL/Polyhedron_3.h>
A vertex optionally stores a point and a reference to an incident halfedge that points to the vertex. Type tags indicate whether these member functions are supported. Figure figurePolyOptionalMethods depicts the relationship between a halfedge and its incident halfedges, vertices, and facets. The circulator is assignable to the Halfedge_handle
. The circulator is bidirectional if the halfedge provided to the polyhedron with the Items
template argument provides a member function Halfedge::prev()
, otherwise it is of the forward category.
CGAL::Polyhedron_3::Halfedge
CGAL::Polyhedron_3::Facet
CGAL::Polyhedron_3<Traits>
Types | |
typedef unspecified_type | Halfedge |
type of incident halfedges. More... | |
typedef unspecified_type | Facet |
type of incident facets. More... | |
typedef unspecified_type | Point_3 |
point type stored in vertices. More... | |
typedef unspecified_type | Vertex_handle |
handle to vertex. More... | |
typedef unspecified_type | Halfedge_handle |
handle to halfedge. More... | |
typedef unspecified_type | Facet_handle |
handle to facet. More... | |
typedef unspecified_type | Halfedge_around_vertex_circulator |
circulator of halfedges around a vertex. More... | |
typedef unspecified_type | Vertex_const_handle |
typedef unspecified_type | Halfedge_const_handle |
typedef unspecified_type | Facet_const_handle |
typedef unspecified_type | Halfedge_around_vertex_const_circulator |
typedef unspecified_type | Supports_vertex_halfedge |
\( \equiv\) CGAL::Tag_true or CGAL::Tag_false . More... | |
typedef unspecified_type | Supports_vertex_point |
\( \equiv\) CGAL::Tag_true or CGAL::Tag_false . More... | |
Creation | |
Vertex () | |
default constructor. More... | |
Vertex (const Point &p) | |
vertex initialized with a point. More... | |
Operations available if Supports_vertex_point is CGAL::Tag_true | |
Point_3 & | point () |
const Point_3 & | point () const |
the point. More... | |
Operations available if Supports_vertex_halfedge is CGAL::Tag_true | |
Halfedge_handle | halfedge () |
Halfedge_const_handle | halfedge () const |
an incident halfedge that points to v . More... | |
Halfedge_around_vertex_circulator | vertex_begin () |
Halfedge_around_vertex_const_circulator | vertex_begin () const |
circulator of halfedges around the vertex (clockwise). More... | |
void | set_halfedge (Halfedge_handle h) |
sets incident halfedge to h . More... | |
std::size_t | vertex_degree () const |
the degree of the vertex, i.e., number of edges emanating from this vertex. More... | |
bool | is_bivalent () const |
returns true if the vertex has exactly two incident edges. More... | |
bool | is_trivalent () const |
returns true if the vertex has exactly three incident edges. More... | |
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Vertex::Facet |
type of incident facets.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Vertex::Facet_const_handle |
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Vertex::Facet_handle |
handle to facet.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Vertex::Halfedge |
type of incident halfedges.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Vertex::Halfedge_around_vertex_circulator |
circulator of halfedges around a vertex.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Vertex::Halfedge_around_vertex_const_circulator |
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Vertex::Halfedge_const_handle |
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Vertex::Halfedge_handle |
handle to halfedge.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Vertex::Point_3 |
point type stored in vertices.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Vertex::Supports_vertex_halfedge |
\( \equiv\) CGAL::Tag_true
or CGAL::Tag_false
.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Vertex::Supports_vertex_point |
\( \equiv\) CGAL::Tag_true
or CGAL::Tag_false
.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Vertex::Vertex_const_handle |
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Vertex::Vertex_handle |
handle to vertex.
CGAL::Polyhedron_3< Traits >::Vertex::Vertex | ( | ) |
default constructor.
CGAL::Polyhedron_3< Traits >::Vertex::Vertex | ( | const Point & | p | ) |
vertex initialized with a point.
Halfedge_handle CGAL::Polyhedron_3< Traits >::Vertex::halfedge | ( | ) |
Halfedge_const_handle CGAL::Polyhedron_3< Traits >::Vertex::halfedge | ( | ) | const |
an incident halfedge that points to v
.
bool CGAL::Polyhedron_3< Traits >::Vertex::is_bivalent | ( | ) | const |
returns true
if the vertex has exactly two incident edges.
bool CGAL::Polyhedron_3< Traits >::Vertex::is_trivalent | ( | ) | const |
returns true
if the vertex has exactly three incident edges.
Point_3& CGAL::Polyhedron_3< Traits >::Vertex::point | ( | ) |
const Point_3& CGAL::Polyhedron_3< Traits >::Vertex::point | ( | ) | const |
the point.
void CGAL::Polyhedron_3< Traits >::Vertex::set_halfedge | ( | Halfedge_handle | h | ) |
sets incident halfedge to h
.
h
is incident, i.e., h->vertex() ==
v
. Halfedge_around_vertex_circulator CGAL::Polyhedron_3< Traits >::Vertex::vertex_begin | ( | ) |
Halfedge_around_vertex_const_circulator CGAL::Polyhedron_3< Traits >::Vertex::vertex_begin | ( | ) | const |
circulator of halfedges around the vertex (clockwise).
std::size_t CGAL::Polyhedron_3< Traits >::Vertex::vertex_degree | ( | ) | const |
the degree of the vertex, i.e., number of edges emanating from this vertex.