\( \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 - 2D Arrangements
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
ArrangementDcelFace Concept Reference

Definition

A face record in a Dcel data structure. A face may either be unbounded, otherwise it has an incident halfedge along the chain defining its outer boundary. A face may also contain holes and isolated vertices in its interior.

See also
ArrangementDcel
ArrangementDcelVertex
ArrangementDcelHalfedge

Types

The non-mutable iterators Hole_const_iterator, and Isolated_vertex_const_iterator are also defined.

typedef unspecified_type Vertex
 the corresponding Dcel vertex type. More...
 
typedef unspecified_type Halfedge
 the corresponding Dcel halfedge type. More...
 
typedef unspecified_type Hole_iterator
 a bidirectional iterator over the holes in inside the face. More...
 
typedef unspecified_type Isolated_vertex_iterator
 a bidirectional iterator over the isolated vertices in inside the face. More...
 

Creation

 Arr_dcel_face ()
 default constructor. More...
 
void assign (const Self &other)
 assigns f with the contents of the other face. More...
 

Access Functions

All functions below also have const counterparts, returning non-mutable pointers or iterators:

bool is_unbounded () const
 returns whether the face is unbounded. More...
 
Halfedgehalfedge ()
 returns an incident halfedge along the outer boundary of the face. More...
 
size_t number_of_holes () const
 returns the number of holes inside f. More...
 
Hole_iterator holes_begin ()
 returns a begin-iterator for the holes inside f. More...
 
Hole_iterator holes_end ()
 returns a past-the-end iterator for the holes inside f. More...
 
size_t number_of_isolated_vertices () const
 returns the number of isolated vertices inside f. More...
 
Isolated_vertex_iterator isolated_vertices_begin ()
 returns a begin-iterator for the isolated vertices inside f. More...
 
Isolated_vertex_iterator isolated_vertices_end ()
 returns a past-the-end iterator for the isolated vertices inside f. More...
 

Modifiers

void set_unbounded (bool flag)
 sets the face as unbounded (if flag is true), or as a bounded face (if it is false). More...
 
void set_halfedge (Halfedge *e)
 sets the incident halfedge. More...
 
void add_hole (Halfedge *e)
 adds e as a hole inside f. More...
 
void erase_hole (Hole_iterator it)
 removes the hole that it points to from inside f. More...
 
void add_isolated_vertex (Vertex *v)
 adds v as an isolated vertex inside f. More...
 
void erase_isolated_vertex (Isolated_vertex_iterator it)
 removes the isolated vertex that it points to from inside f. More...
 

Member Typedef Documentation

the corresponding Dcel halfedge type.

a bidirectional iterator over the holes in inside the face.

Its value-type is Halfedge*.

a bidirectional iterator over the isolated vertices in inside the face.

Its value-type is Vertex*.

the corresponding Dcel vertex type.

Member Function Documentation

void ArrangementDcelFace::add_hole ( Halfedge e)

adds e as a hole inside f.

void ArrangementDcelFace::add_isolated_vertex ( Vertex v)

adds v as an isolated vertex inside f.

ArrangementDcelFace::Arr_dcel_face ( )

default constructor.

void ArrangementDcelFace::assign ( const Self &  other)

assigns f with the contents of the other face.

void ArrangementDcelFace::erase_hole ( Hole_iterator  it)

removes the hole that it points to from inside f.

void ArrangementDcelFace::erase_isolated_vertex ( Isolated_vertex_iterator  it)

removes the isolated vertex that it points to from inside f.

Halfedge* ArrangementDcelFace::halfedge ( )

returns an incident halfedge along the outer boundary of the face.

If f has no outer boundary, the function returns NULL.

Hole_iterator ArrangementDcelFace::holes_begin ( )

returns a begin-iterator for the holes inside f.

Hole_iterator ArrangementDcelFace::holes_end ( )

returns a past-the-end iterator for the holes inside f.

bool ArrangementDcelFace::is_unbounded ( ) const

returns whether the face is unbounded.

Isolated_vertex_iterator ArrangementDcelFace::isolated_vertices_begin ( )

returns a begin-iterator for the isolated vertices inside f.

Isolated_vertex_iterator ArrangementDcelFace::isolated_vertices_end ( )

returns a past-the-end iterator for the isolated vertices inside f.

size_t ArrangementDcelFace::number_of_holes ( ) const

returns the number of holes inside f.

size_t ArrangementDcelFace::number_of_isolated_vertices ( ) const

returns the number of isolated vertices inside f.

void ArrangementDcelFace::set_halfedge ( Halfedge e)

sets the incident halfedge.

void ArrangementDcelFace::set_unbounded ( bool  flag)

sets the face as unbounded (if flag is true), or as a bounded face (if it is false).