BWAPI
|
#include <Arr_construction_sl_visitor.h>
A sweep-line visitor for constructing an arrangement embedded on a surface.
typedef Helper::Arrangement_2 Arr_construction_sl_visitor< Helper_ >::Arrangement_2 |
Reimplemented in Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
typedef Helper::Base_visitor Arr_construction_sl_visitor< Helper_ >::Base |
Reimplemented in Arr_spherical_topology_traits_2< GeomTraits, T_Dcel >::Sweep_line_overlay_visitor< ArrangementA_, ArrangementB_, OverlayTraits_ >, Arr_unb_planar_topology_traits_2< GeomTraits_, Dcel_ >::Sweep_line_overlay_visitor< ArrangementA_, ArrangementB_, OverlayTraits_ >, Arr_bounded_planar_topology_traits_2< GeomTraits_, Dcel_ >::Sweep_line_overlay_visitor< ArrangementA_, ArrangementB_, OverlayTraits_ >, Gps_agg_op_visitor< Traits, Arrangement_, Event, Subcurve >, Gps_agg_op_visitor< Meta_traits, Arrangement_2, Event, Subcurve >, Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, Gps_agg_op_base_visitor< Traits, Arrangement_, Event, Subcurve >, and Gps_agg_op_base_visitor< Meta_traits, Arrangement_2, Event, Subcurve >.
typedef Helper::Event Arr_construction_sl_visitor< Helper_ >::Event |
Reimplemented in Arr_spherical_topology_traits_2< GeomTraits, T_Dcel >::Sweep_line_overlay_visitor< ArrangementA_, ArrangementB_, OverlayTraits_ >, Arr_unb_planar_topology_traits_2< GeomTraits_, Dcel_ >::Sweep_line_overlay_visitor< ArrangementA_, ArrangementB_, OverlayTraits_ >, Arr_bounded_planar_topology_traits_2< GeomTraits_, Dcel_ >::Sweep_line_overlay_visitor< ArrangementA_, ArrangementB_, OverlayTraits_ >, Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
typedef Base::Event_subcurve_iterator Arr_construction_sl_visitor< Helper_ >::Event_subcurve_iterator [protected] |
Reimplemented in Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
typedef Base::Event_subcurve_reverse_iterator Arr_construction_sl_visitor< Helper_ >::Event_subcurve_reverse_iterator [protected] |
Reimplemented in Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
typedef Arrangement_2::Face_handle Arr_construction_sl_visitor< Helper_ >::Face_handle [protected] |
Reimplemented in Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
typedef Arrangement_2::Halfedge_handle Arr_construction_sl_visitor< Helper_ >::Halfedge_handle [protected] |
Reimplemented in Gps_agg_op_visitor< Traits, Arrangement_, Event, Subcurve >, Gps_agg_op_visitor< Meta_traits, Arrangement_2, Event, Subcurve >, Gps_agg_op_base_visitor< Traits, Arrangement_, Event, Subcurve >, Gps_agg_op_base_visitor< Meta_traits, Arrangement_2, Event, Subcurve >, Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
typedef Helper::Halfedge_indices_map Arr_construction_sl_visitor< Helper_ >::Halfedge_indices_map [protected] |
typedef Helper_ Arr_construction_sl_visitor< Helper_ >::Helper |
typedef Helper::Indices_list Arr_construction_sl_visitor< Helper_ >::Indices_list [protected] |
typedef Unique_hash_map<unsigned int, Vertex_handle, Integer_hash_function> Arr_construction_sl_visitor< Helper_ >::Iso_vertices_map [protected] |
typedef Traits_2::Point_2 Arr_construction_sl_visitor< Helper_ >::Point_2 |
Reimplemented in Gps_agg_op_visitor< Traits, Arrangement_, Event, Subcurve >, Gps_agg_op_visitor< Meta_traits, Arrangement_2, Event, Subcurve >, Gps_agg_op_base_visitor< Traits, Arrangement_, Event, Subcurve >, Gps_agg_op_base_visitor< Meta_traits, Arrangement_2, Event, Subcurve >, Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
typedef Base::Status_line_iterator Arr_construction_sl_visitor< Helper_ >::Status_line_iterator [protected] |
Reimplemented in Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
typedef Helper::Subcurve Arr_construction_sl_visitor< Helper_ >::Subcurve |
Reimplemented in Arr_spherical_topology_traits_2< GeomTraits, T_Dcel >::Sweep_line_overlay_visitor< ArrangementA_, ArrangementB_, OverlayTraits_ >, Arr_unb_planar_topology_traits_2< GeomTraits_, Dcel_ >::Sweep_line_overlay_visitor< ArrangementA_, ArrangementB_, OverlayTraits_ >, Arr_bounded_planar_topology_traits_2< GeomTraits_, Dcel_ >::Sweep_line_overlay_visitor< ArrangementA_, ArrangementB_, OverlayTraits_ >, Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
typedef Arrangement_2::Topology_traits Arr_construction_sl_visitor< Helper_ >::Topology_traits [protected] |
typedef Helper::Traits_2 Arr_construction_sl_visitor< Helper_ >::Traits_2 |
Reimplemented in Arr_spherical_topology_traits_2< GeomTraits, T_Dcel >::Sweep_line_overlay_visitor< ArrangementA_, ArrangementB_, OverlayTraits_ >, Arr_unb_planar_topology_traits_2< GeomTraits_, Dcel_ >::Sweep_line_overlay_visitor< ArrangementA_, ArrangementB_, OverlayTraits_ >, Arr_bounded_planar_topology_traits_2< GeomTraits_, Dcel_ >::Sweep_line_overlay_visitor< ArrangementA_, ArrangementB_, OverlayTraits_ >, Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
typedef Arrangement_2::Vertex_handle Arr_construction_sl_visitor< Helper_ >::Vertex_handle [protected] |
Reimplemented in Gps_agg_op_visitor< Traits, Arrangement_, Event, Subcurve >, Gps_agg_op_visitor< Meta_traits, Arrangement_2, Event, Subcurve >, Gps_agg_op_base_visitor< Traits, Arrangement_, Event, Subcurve >, Gps_agg_op_base_visitor< Meta_traits, Arrangement_2, Event, Subcurve >, Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
typedef Traits_2::X_monotone_curve_2 Arr_construction_sl_visitor< Helper_ >::X_monotone_curve_2 |
Reimplemented in Gps_agg_op_visitor< Traits, Arrangement_, Event, Subcurve >, Gps_agg_op_visitor< Meta_traits, Arrangement_2, Event, Subcurve >, Gps_agg_op_base_visitor< Traits, Arrangement_, Event, Subcurve >, Gps_agg_op_base_visitor< Meta_traits, Arrangement_2, Event, Subcurve >, Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
Arr_construction_sl_visitor< Helper_ >::Arr_construction_sl_visitor | ( | Arrangement_2 * | arr | ) | [inline] |
Constructor.
virtual Arr_construction_sl_visitor< Helper_ >::~Arr_construction_sl_visitor | ( | ) | [inline, virtual] |
Destructor.
void Arr_construction_sl_visitor< Hlpr >::add_subcurve | ( | const X_monotone_curve_2 & | cv, |
Subcurve * | sc | ||
) |
bool Arr_construction_sl_visitor< Hlpr >::after_handle_event | ( | Event * | event, |
Status_line_iterator | iter, | ||
bool | flag | ||
) |
A notification invoked after the sweep-line finishes handling the given event.
Reimplemented in Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
void Arr_construction_sl_visitor< Hlpr >::before_handle_event | ( | Event * | event | ) | [inline] |
A notification invoked before the sweep-line starts handling the given event.
Reimplemented in Gps_agg_op_visitor< Traits, Arrangement_, Event, Subcurve >, Gps_agg_op_visitor< Meta_traits, Arrangement_2, Event, Subcurve >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
void Arr_construction_sl_visitor< Hlpr >::before_sweep | ( | ) | [inline] |
Reimplemented in Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
Arr_construction_sl_visitor< Hlpr >::Halfedge_handle Arr_construction_sl_visitor< Hlpr >::insert_at_vertices | ( | const X_monotone_curve_2 & | cv, |
Halfedge_handle | prev1, | ||
Halfedge_handle | prev2, | ||
Subcurve * | sc, | ||
bool & | new_face_created | ||
) | [virtual] |
Insert the given subcurve given its two end-vertices.
cv | The geometric subcurve. |
prev1 | The predecessor halfedge around the left vertex. |
prev2 | The predecessor halfedge around the right vertex. |
sc | The sweep-line subcurve information. |
new_face_created | Output: Whether a new face has been created. |
Reimplemented in Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
Arr_construction_sl_visitor< Hlpr >::Halfedge_handle Arr_construction_sl_visitor< Hlpr >::insert_from_left_vertex | ( | const X_monotone_curve_2 & | cv, |
Halfedge_handle | he, | ||
Subcurve * | sc | ||
) | [virtual] |
Insert the given subcurve given its left end-vertex.
cv | The geometric entity. |
prev | The predecessor halfedge around the left vertex. |
sc | The sweep-line subcurve information. |
Reimplemented in Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
Arr_construction_sl_visitor< Hlpr >::Halfedge_handle Arr_construction_sl_visitor< Hlpr >::insert_from_right_vertex | ( | const X_monotone_curve_2 & | cv, |
Halfedge_handle | prev, | ||
Subcurve * | sc | ||
) | [virtual] |
Insert the given subcurve given its right end-vertex.
cv | The geometric entity. |
prev | The predecessor halfedge around the right vertex. |
sc | The sweep-line subcurve information. |
Reimplemented in Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
Arr_construction_sl_visitor< Hlpr >::Halfedge_handle Arr_construction_sl_visitor< Hlpr >::insert_in_face_interior | ( | const X_monotone_curve_2 & | cv, |
Subcurve * | sc | ||
) | [virtual] |
Insert the given subcurve in the interior of a face.
Reimplemented in Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
Arr_construction_sl_visitor< Hlpr >::Vertex_handle Arr_construction_sl_visitor< Hlpr >::insert_isolated_vertex | ( | const Point_2 & | pt, |
Status_line_iterator | iter | ||
) | [virtual] |
Insert an isolated vertex into the arrangement.
pt | The point associated with the vertex. |
iter | The location of the corresponding event in the status line. |
Reimplemented in Arr_overlay_sl_visitor< OverlayHelper_, OverlayTraits_ >, Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Arr_traits_basic_adaptor_2< Geometry_traits_2 >, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >, and Arr_overlay_sl_visitor< _Overlay_helper< Arr_overlay_traits_2< Geometry_traits_2, ArrangementA_, ArrangementB_ >, ArrangementA_, ArrangementB_ >, OverlayTraits_ >.
Event* Arr_construction_sl_visitor< Helper_ >::last_event_on_subcurve | ( | Subcurve * | sc | ) | [inline] |
Get the last event associated with the given subcurve.
void Arr_construction_sl_visitor< Hlpr >::relocate_in_new_face | ( | Halfedge_handle | he | ) |
Relocate holes and isolated vertices inside a newly created face f2, that was split from f1 after the insertion of a new edge.
he | The halfedge that caused the face split. Its incident face is the new face f2, and the incident face of its twin is f1. |
Arrangement_2* Arr_construction_sl_visitor< Helper_ >::m_arr [protected] |
Arr_accessor<Arrangement_2> Arr_construction_sl_visitor< Helper_ >::m_arr_access [protected] |
Halfedge_indices_map Arr_construction_sl_visitor< Helper_ >::m_he_indices_table [protected] |
Helper Arr_construction_sl_visitor< Helper_ >::m_helper [protected] |
const Vertex_handle Arr_construction_sl_visitor< Helper_ >::m_invalid_vertex [protected] |
Iso_vertices_map Arr_construction_sl_visitor< Helper_ >::m_iso_verts_map [protected] |
unsigned int Arr_construction_sl_visitor< Helper_ >::m_sc_counter [protected] |
std::vector<Halfedge_handle> Arr_construction_sl_visitor< Helper_ >::m_sc_he_table [protected] |
Topology_traits* Arr_construction_sl_visitor< Helper_ >::m_top_traits [protected] |