The geometric types defined below must have a default constructor, copy constructor, assignment operator and operator==.
| |
A type that holds an -monotone curve in
the plane.
| |
| |
A type that holds the position of a vertex in
the plane. The type of the end points of X_monotone_curve_2 curves.
|
The following categories declare the implementation of the method curves_compare_y_at_x_left(). If the category Has_left_category is Tag_true the method is required specifically. Otherwise, if the category Has_reflect_category is Tag_true the method curves_compare_y_at_x_left() is implemented using the required methods point_reflect_in_x_and_y() and curve_reflect_in_x_and_y(). If none of the categories is Tag_true, a default implementation is used, that does not require any of the above methods.
| |
A boolean category that indicates
whether the method curves_compare_y_at_x_left() is required.
It must be either Tag_true or Tag_false.
| |
| |
A boolean category that indicates
whether the methods point_reflect_in_x_and_y() and
curve_reflect_in_x_and_y() are required. It must be either
Tag_true or Tag_false.
|
| |
a constant describing the relative position between objects.
|
| |
A default constructor.
|
|
| |||
compares the x-coordinates of and . Returns LARGER if ; SMALLER if ; EQUAL otherwise. | ||||
|
| |||
compares the two points and lexigoraphically. First the -coordinates are compared. In case of a tie, the -coordinates are compared. Returns LARGER if , or if and ; SMALLER if , or if and ; EQUAL otherwise. | ||||
|
| |||
returns true if cv is a vertical segment, false otherwise. | ||||
|
| |||
returns true if pnt is in the range of cv, false otherwise. | ||||
|
| |||
compares the -coordinate of and at the -coordinate
of . Returns LARGER if ;
SMALLER if ; EQUAL
otherwise. Precondition: and are defined at 's -coordinate. | ||||
|
| |||
compares the -coordinate of and immediately to the
right of the -coordinate of . Precondition: and meet at -coordinate. Precondition: and are defined lexigoraphically to the right of 's -coordinate. | ||||
|
| |||
compares the -coordinate of and immediately to the
left of the -coordinate of . This predicate is not
required for the aggregate insertion of curves into the planar map.
Recall, that the aggregate insertion is based on a sweep-line
algorithm. Precondition: and meet at -coordinate. Precondition: and are defined lexigoraphically to the left of 's -coordinate. | ||||
|
| |||
returns the reflection of the point pt about the origin For example, the reflection of the point is the point as . This predicate is not required for the aggregate insertion of curves into the planar map, or if the method curves_compare_y_at_x_left() is provided and the Has_left_category category is Tag_true. | ||||
|
| |||
returns the reflection of the curve cv about the origin. For example, the reflection of the line segment is . This predicate is not required for the aggregate insertion of curves into the planar map, or if the method curves_compare_y_at_x_left() is provided and the Has_left_category category is Tag_true. | ||||
|
| |||
compares the -coordinates of and the vertical projection of
on . Returns SMALLER if ;
LARGER if ;
EQUAL otherwise ( is on the curve). Precondition: is defined at 's -coordinate. | ||||
|
| |||
returns true if cv1 and cv2 have the same graph, false otherwise. | ||||
|
| |||
returns true if p1 is the same as p2, false otherwise. | ||||
|
| |||
returns the source of cv. | ||||
|
| |||
returns the target of cv. |
The PlanarMapWithIntersectionsTraits_2 and ArrangementTraits_2 concepts are refinements of the PlanarMapTraits_2 concept, in other words, a model of the formers is a model of the latter. Thus, all supplied (or user written ) arrangement traits classes can be passed as the Traits template parameter when instantiating an object of type Planar_map_2<Dcel,Traits>. See the list of the arrangement traits classes in chapter , Arrangement.