BWAPI
Public Types | Public Member Functions | Protected Attributes
Arr_construction_subcurve< Traits_ > Class Template Reference

#include <Arr_construction_subcurve.h>

Inheritance diagram for Arr_construction_subcurve< Traits_ >:
Inheritance graph
[legend]
Collaboration diagram for Arr_construction_subcurve< Traits_ >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef Traits_ Traits_2
typedef Traits_2::Point_2 Point_2
typedef
Traits_2::X_monotone_curve_2 
X_monotone_curve_2
typedef Sweep_line_subcurve
< Traits_2
Base
typedef
Arr_construction_subcurve
< Traits_2
Self
typedef Base::Status_line_iterator Status_line_iterator
typedef void * Event_ptr
typedef std::list< unsigned int > Halfedge_indices_list

Public Member Functions

 Arr_construction_subcurve ()
 Arr_construction_subcurve (X_monotone_curve_2 &curve)
void init (const X_monotone_curve_2 &curve)
template<class SweepEvent >
void set_left_event (SweepEvent *left)
void set_last_event (Event_ptr e)
Event_ptr last_event () const
unsigned int index () const
void set_index (unsigned int i)
bool has_valid_index () const
void add_halfedge_index (unsigned int i)
void clear_halfedge_indices ()
bool has_halfedge_indices () const
Halfedge_indices_listhalfedge_indices_list ()

Protected Attributes

Event_ptr m_lastEvent
unsigned int m_index
Halfedge_indices_list m_halfedge_indices

Detailed Description

template<class Traits_>
class Arr_construction_subcurve< Traits_ >

a class that holds information about a curve that is added to the arrangement. In addition to the information that is contained in Sweep_line_subcurve, when an arrangement is constructed, a pointer to the last handled event on the curve is stored. This information is used to retrieve hints when a subcurve of this curve is inserted into the planar map.

Inherits from Sweep_line_subcurve

See also:
Sweep_line_subcurve

Member Typedef Documentation

template<class Traits_ >
typedef Sweep_line_subcurve<Traits_2> Arr_construction_subcurve< Traits_ >::Base
template<class Traits_ >
typedef void* Arr_construction_subcurve< Traits_ >::Event_ptr
template<class Traits_ >
typedef std::list<unsigned int> Arr_construction_subcurve< Traits_ >::Halfedge_indices_list
template<class Traits_ >
typedef Traits_2::Point_2 Arr_construction_subcurve< Traits_ >::Point_2

Reimplemented from Sweep_line_subcurve< Traits_ >.

Reimplemented in Arr_overlay_subcurve< Traits_ >.

Reimplemented from Sweep_line_subcurve< Traits_ >.

Reimplemented in Arr_overlay_subcurve< Traits_ >.

Reimplemented from Sweep_line_subcurve< Traits_ >.

Reimplemented in Arr_overlay_subcurve< Traits_ >.

template<class Traits_ >
typedef Traits_ Arr_construction_subcurve< Traits_ >::Traits_2

Reimplemented from Sweep_line_subcurve< Traits_ >.

Reimplemented in Arr_overlay_subcurve< Traits_ >.

template<class Traits_ >
typedef Traits_2::X_monotone_curve_2 Arr_construction_subcurve< Traits_ >::X_monotone_curve_2

Reimplemented from Sweep_line_subcurve< Traits_ >.

Reimplemented in Arr_overlay_subcurve< Traits_ >.


Constructor & Destructor Documentation

template<class Traits_ >
Arr_construction_subcurve< Traits_ >::Arr_construction_subcurve ( ) [inline]

Deafult constructor.

template<class Traits_ >
Arr_construction_subcurve< Traits_ >::Arr_construction_subcurve ( X_monotone_curve_2 curve) [inline]

Constructor from an x-monotone curve.


Member Function Documentation

template<class Traits_ >
void Arr_construction_subcurve< Traits_ >::add_halfedge_index ( unsigned int  i) [inline]

Add an index of a halfedge below the subcurve.

template<class Traits_ >
void Arr_construction_subcurve< Traits_ >::clear_halfedge_indices ( ) [inline]

Clear the indices of the halfedges below the subcurve.

Get the indices of the halfedges below the subcurve.

template<class Traits_ >
bool Arr_construction_subcurve< Traits_ >::has_halfedge_indices ( ) const [inline]

Check if there are any halfedges below the subcurve.

template<class Traits_ >
bool Arr_construction_subcurve< Traits_ >::has_valid_index ( ) const [inline]

Check if the index is valid.

template<class Traits_ >
unsigned int Arr_construction_subcurve< Traits_ >::index ( ) const [inline]

Get the subcurve index.

template<class Traits_ >
void Arr_construction_subcurve< Traits_ >::init ( const X_monotone_curve_2 curve) [inline]

Initialize the curve.

Reimplemented from Sweep_line_subcurve< Traits_ >.

Here is the call graph for this function:

template<class Traits_ >
Event_ptr Arr_construction_subcurve< Traits_ >::last_event ( ) const [inline]

Get the last event.

template<class Traits_ >
void Arr_construction_subcurve< Traits_ >::set_index ( unsigned int  i) [inline]

Set the subcurve index.

template<class Traits_ >
void Arr_construction_subcurve< Traits_ >::set_last_event ( Event_ptr  e) [inline]

Set the last event on the subcurve.

template<class Traits_ >
template<class SweepEvent >
void Arr_construction_subcurve< Traits_ >::set_left_event ( SweepEvent *  left) [inline]

Set the event associated with the left end of the subcurve.

Reimplemented from Sweep_line_subcurve< Traits_ >.

Here is the call graph for this function:


Member Data Documentation

template<class Traits_ >
unsigned int Arr_construction_subcurve< Traits_ >::m_index [protected]

index for a subcurve that may represent a hole (emarge from the left most vertex of a hole, and its the upper most curve). other subcurves will have 0 value (invalid index)

template<class Traits_ >
Event_ptr Arr_construction_subcurve< Traits_ >::m_lastEvent [protected]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines