BWAPI
|
#include <Arr_basic_insertion_sl_visitor.h>
Definition of the Arr_basic_insertion_sl_visitor class-template.
A sweep-line visitor for inserting new curves into an existing arrangement embedded on a surface, where these curves are interior-disjoint from all existing arrangement edges and vertices (so no intersections occur).
typedef Helper::Arrangement_2 Arr_basic_insertion_sl_visitor< Helper_ >::Arrangement_2 |
Reimplemented in Arr_insertion_sl_visitor< Helper_ >.
typedef Helper::Parent_visitor Arr_basic_insertion_sl_visitor< Helper_ >::Base |
Reimplemented in Arr_insertion_sl_visitor< Helper_ >.
typedef Helper::Event Arr_basic_insertion_sl_visitor< Helper_ >::Event |
Reimplemented in Arr_insertion_sl_visitor< Helper_ >.
typedef Base::Event_subcurve_iterator Arr_basic_insertion_sl_visitor< Helper_ >::Event_subcurve_iterator [protected] |
typedef Base::Event_subcurve_reverse_iterator Arr_basic_insertion_sl_visitor< Helper_ >::Event_subcurve_reverse_iterator [protected] |
typedef Base::Face_handle Arr_basic_insertion_sl_visitor< Helper_ >::Face_handle [protected] |
typedef Base::Halfedge_handle Arr_basic_insertion_sl_visitor< Helper_ >::Halfedge_handle [protected] |
Reimplemented in Arr_insertion_sl_visitor< Helper_ >.
typedef Helper_ Arr_basic_insertion_sl_visitor< Helper_ >::Helper |
Reimplemented in Arr_insertion_sl_visitor< Helper_ >.
typedef Traits_2::Point_2 Arr_basic_insertion_sl_visitor< Helper_ >::Point_2 |
Reimplemented in Arr_insertion_sl_visitor< Helper_ >.
typedef Base::Status_line_iterator Arr_basic_insertion_sl_visitor< Helper_ >::Status_line_iterator [protected] |
typedef Helper::Subcurve Arr_basic_insertion_sl_visitor< Helper_ >::Subcurve |
Reimplemented in Arr_insertion_sl_visitor< Helper_ >.
typedef Helper::Traits_2 Arr_basic_insertion_sl_visitor< Helper_ >::Traits_2 |
Reimplemented in Arr_insertion_sl_visitor< Helper_ >.
typedef Base::Vertex_handle Arr_basic_insertion_sl_visitor< Helper_ >::Vertex_handle [protected] |
typedef Traits_2::X_monotone_curve_2 Arr_basic_insertion_sl_visitor< Helper_ >::X_monotone_curve_2 |
Reimplemented in Arr_insertion_sl_visitor< Helper_ >.
Arr_basic_insertion_sl_visitor< Helper_ >::Arr_basic_insertion_sl_visitor | ( | Arrangement_2 * | arr | ) | [inline] |
Constructor.
Arr_basic_insertion_sl_visitor< Hlpr >::Halfedge_handle Arr_basic_insertion_sl_visitor< Hlpr >::_insert_at_vertices | ( | const X_monotone_curve_2 & | cv, |
Halfedge_handle | hhandle, | ||
Halfedge_handle | prev, | ||
Subcurve * | sc, | ||
bool & | new_face_created | ||
) | [protected] |
Perform the actual insertion.
Arr_basic_insertion_sl_visitor< Hlpr >::Halfedge_handle Arr_basic_insertion_sl_visitor< Hlpr >::_insert_from_left_vertex | ( | const X_monotone_curve_2 & | cv, |
Halfedge_handle | he, | ||
Subcurve * | sc | ||
) | [protected] |
Perform the actual insertion.
Arr_basic_insertion_sl_visitor< Hlpr >::Halfedge_handle Arr_basic_insertion_sl_visitor< Hlpr >::_insert_from_right_vertex | ( | const X_monotone_curve_2 & | cv, |
Halfedge_handle | he, | ||
Subcurve * | sc | ||
) | [protected] |
Perform the actual insertion.
Arr_basic_insertion_sl_visitor< Hlpr >::Halfedge_handle Arr_basic_insertion_sl_visitor< Hlpr >::_insert_in_face_interior | ( | const X_monotone_curve_2 & | cv, |
Subcurve * | sc | ||
) | [protected] |
Perform the actual insertion.
Arr_basic_insertion_sl_visitor< Hlpr >::Face_handle Arr_basic_insertion_sl_visitor< Hlpr >::_ray_shoot_up | ( | Subcurve * | sc | ) | [protected] |
Locate the face containing the current object in its interior.
void Arr_basic_insertion_sl_visitor< Hlpr >::add_subcurve | ( | const X_monotone_curve_2 & | cv, |
Subcurve * | sc | ||
) |
void Arr_basic_insertion_sl_visitor< Hlpr >::before_handle_event | ( | Event * | event | ) |
A notification invoked before the sweep-line starts handling the given event.
void Arr_basic_insertion_sl_visitor< Hlpr >::before_sweep | ( | ) |
Arr_basic_insertion_sl_visitor< Hlpr >::Halfedge_handle Arr_basic_insertion_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. |
Arr_basic_insertion_sl_visitor< Hlpr >::Halfedge_handle Arr_basic_insertion_sl_visitor< Hlpr >::insert_from_left_vertex | ( | const X_monotone_curve_2 & | cv, |
Halfedge_handle | he, | ||
Subcurve * | sc | ||
) | [virtual] |
Arr_basic_insertion_sl_visitor< Hlpr >::Halfedge_handle Arr_basic_insertion_sl_visitor< Hlpr >::insert_from_right_vertex | ( | const X_monotone_curve_2 & | cv, |
Halfedge_handle | prev, | ||
Subcurve * | sc | ||
) | [virtual] |
Arr_basic_insertion_sl_visitor< Hlpr >::Halfedge_handle Arr_basic_insertion_sl_visitor< Hlpr >::insert_in_face_interior | ( | const X_monotone_curve_2 & | cv, |
Subcurve * | sc | ||
) | [virtual] |
Arr_basic_insertion_sl_visitor< Hlpr >::Vertex_handle Arr_basic_insertion_sl_visitor< Hlpr >::insert_isolated_vertex | ( | const Point_2 & | pt, |
Status_line_iterator | iter | ||
) | [virtual] |
virtual bool Arr_basic_insertion_sl_visitor< Helper_ >::is_split_event | ( | Subcurve * | , |
Event * | |||
) | [inline, virtual] |
Check if the halfedge associated with the given subcurve will be split at the given event.
Reimplemented in Arr_insertion_sl_visitor< Helper_ >.
virtual Halfedge_handle Arr_basic_insertion_sl_visitor< Helper_ >::split_edge | ( | Halfedge_handle | , |
Subcurve * | , | ||
const Point_2 & | |||
) | [inline, virtual] |
Split an edge (does nothing here, as there are no intersections).
Reimplemented in Arr_insertion_sl_visitor< Helper_ >.
void Arr_basic_insertion_sl_visitor< Helper_ >::update_event | ( | ) | [inline] |
Update the event information.
void Arr_basic_insertion_sl_visitor< Helper_ >::update_event | ( | Event * | , |
const Point_2 & | , | ||
const X_monotone_curve_2 & | , | ||
Arr_curve_end | , | ||
bool | |||
) | [inline] |
void Arr_basic_insertion_sl_visitor< Helper_ >::update_event | ( | Event * | , |
const X_monotone_curve_2 & | , | ||
Arr_curve_end | , | ||
bool | |||
) | [inline] |
void Arr_basic_insertion_sl_visitor< Helper_ >::update_event | ( | Event * | , |
Subcurve * | , | ||
Subcurve * | , | ||
bool | |||
) | [inline] |
void Arr_basic_insertion_sl_visitor< Helper_ >::update_event | ( | Event * | , |
Subcurve * | |||
) | [inline] |
void Arr_basic_insertion_sl_visitor< Helper_ >::update_event | ( | Event * | e, |
const Point_2 & | pt, | ||
bool | |||
) | [inline] |