CGAL 5.1 - 3D Polyhedral Surface
|
#include <CGAL/Polyhedron_3.h>
A facet optionally stores a plane equation, and a reference to an incident halfedge that points to the facet. Type tags indicate whether these member functions are supported. Note that the plane equation is not automatically computed nor maintained and should handled by the user (see Polyhedron/polyhedron_prog_planes.cpp for an example). 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::Vertex
CGAL::Polyhedron_3::Halfedge
CGAL::Polyhedron_3<Traits>
Types | |
typedef unspecified_type | Vertex |
type of incident vertices. More... | |
typedef unspecified_type | Halfedge |
type of incident halfedges. More... | |
typedef unspecified_type | Plane_3 |
plane equation type stored in facets. 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_facet_circulator |
circulator of halfedges around a facet. More... | |
typedef unspecified_type | Vertex_const_handle |
typedef unspecified_type | Halfedge_const_handle |
typedef unspecified_type | Facet_const_handle |
typedef unspecified_type | Halfedge_around_facet_const_circulator |
typedef unspecified_type | Supports_facet_halfedge |
\( \equiv\) CGAL::Tag_true or CGAL::Tag_false . More... | |
typedef unspecified_type | Supports_facet_plane |
\( \equiv\) CGAL::Tag_true or CGAL::Tag_false . More... | |
Creation | |
Facet () | |
default constructor. More... | |
Operations available if Supports_facet_plane is CGAL::Tag_true | |
Plane_3 & | plane () |
const Plane_3 & | plane () const |
plane equation. More... | |
Operations available if Supports_facet_halfedge is CGAL::Tag_true | |
Halfedge_handle | halfedge () |
Halfedge_const_handle | halfedge () const |
an incident halfedge that points to the facet. More... | |
Halfedge_around_facet_circulator | facet_begin () |
Halfedge_around_facet_const_circulator | facet_begin () const |
circulator of halfedges around the facet (counterclockwise). More... | |
void | set_halfedge (Halfedge_handle h) |
sets incident halfedge to h . More... | |
std::size_t | facet_degree () const |
the degree of the facet, i.e., number of edges on the boundary of this facet. More... | |
bool | is_triangle () const |
returns true if the facet is a triangle. More... | |
bool | is_quad () const |
returns true if the facet is a quadrilateral. More... | |
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Facet::Facet_const_handle |
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Facet::Facet_handle |
handle to facet.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Facet::Halfedge |
type of incident halfedges.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Facet::Halfedge_around_facet_circulator |
circulator of halfedges around a facet.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Facet::Halfedge_around_facet_const_circulator |
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Facet::Halfedge_const_handle |
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Facet::Halfedge_handle |
handle to halfedge.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Facet::Plane_3 |
plane equation type stored in facets.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Facet::Supports_facet_halfedge |
\( \equiv\) CGAL::Tag_true
or CGAL::Tag_false
.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Facet::Supports_facet_plane |
\( \equiv\) CGAL::Tag_true
or CGAL::Tag_false
.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Facet::Vertex |
type of incident vertices.
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Facet::Vertex_const_handle |
typedef unspecified_type CGAL::Polyhedron_3< Traits >::Facet::Vertex_handle |
handle to vertex.
CGAL::Polyhedron_3< Traits >::Facet::Facet | ( | ) |
default constructor.
Halfedge_around_facet_circulator CGAL::Polyhedron_3< Traits >::Facet::facet_begin | ( | ) |
Halfedge_around_facet_const_circulator CGAL::Polyhedron_3< Traits >::Facet::facet_begin | ( | ) | const |
circulator of halfedges around the facet (counterclockwise).
std::size_t CGAL::Polyhedron_3< Traits >::Facet::facet_degree | ( | ) | const |
the degree of the facet, i.e., number of edges on the boundary of this facet.
Halfedge_handle CGAL::Polyhedron_3< Traits >::Facet::halfedge | ( | ) |
Halfedge_const_handle CGAL::Polyhedron_3< Traits >::Facet::halfedge | ( | ) | const |
an incident halfedge that points to the facet.
bool CGAL::Polyhedron_3< Traits >::Facet::is_quad | ( | ) | const |
returns true
if the facet is a quadrilateral.
bool CGAL::Polyhedron_3< Traits >::Facet::is_triangle | ( | ) | const |
returns true
if the facet is a triangle.
Plane_3& CGAL::Polyhedron_3< Traits >::Facet::plane | ( | ) |
const Plane_3& CGAL::Polyhedron_3< Traits >::Facet::plane | ( | ) | const |
plane equation.
void CGAL::Polyhedron_3< Traits >::Facet::set_halfedge | ( | Halfedge_handle | h | ) |
sets incident halfedge to h
.
h
is incident, i.e., h->facet() ==
*this
.