\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)
CGAL 4.7 - 3D Polyhedral Surface
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
CGAL::Polyhedron_3< Traits >::Facet Class Reference

#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. 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.

See Also


typedef unspecified_type Vertex
 type of incident vertices.
typedef unspecified_type Halfedge
 type of incident halfedges.
typedef unspecified_type Plane_3
 plane equation type stored in facets.
typedef unspecified_type Vertex_handle
 handle to vertex.
typedef unspecified_type Halfedge_handle
 handle to halfedge.
typedef unspecified_type Facet_handle
 handle to facet.
typedef unspecified_type Halfedge_around_facet_circulator
 circulator of halfedges around a facet.
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.
typedef unspecified_type Supports_facet_plane
 \( \equiv\) CGAL::Tag_true or CGAL::Tag_false.


 Facet ()
 default constructor.

Operations available if Supports_facet_plane is CGAL::Tag_true

Plane_3plane ()
const Plane_3plane () const
 plane equation.

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.
Halfedge_around_facet_circulator facet_begin ()
Halfedge_around_facet_const_circulator facet_begin () const
 circulator of halfedges around the facet (counterclockwise).
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.
bool is_triangle () const
 returns true if the facet is a triangle.
bool is_quad () const
 returns true if the facet is a quadrilateral.

Member Function Documentation

template<typename Traits >
void CGAL::Polyhedron_3< Traits >::Facet::set_halfedge ( Halfedge_handle  h)

sets incident halfedge to h.

h is incident, i.e., h->facet() == *this.