|
Polygon_traits::FT
|
|
The coordinate type of the points of the polygon (i.e. a field type).
|
|
Polygon_traits::Point_2
|
|
The point type on which the polygon algorithms operate.
|
|
Polygon_traits::Segment_2
|
|
The segment type on which the polygon algorithms operate.
|
|
Polygon_traits::Vector_2
|
|
The vector type on which the polygon algorithms operate.
|
|
Polygon_traits::Less_xy
|
|
Binary predicate object type comparing Point_2s lexicographically.
Must provide bool operator()(Point_2 p, Point_2 q) where true
is returned iff .
We have , iff or and ,
where and denote and coordinate of point resp.
|
|
Polygon_traits::Less_yx
|
|
Same as Less_xy with the roles of and interchanged.
|
|
bool
|
|
traits.lexicographically_xy_smaller ( |
Point_2 p,
Point_2 q) |
|
| |
Returns true iff or and .
|
|
|
bool
|
|
traits.lexicographically_yx_smaller_or_equal ( |
Point_2 p,
Point_2 q) |
|
| |
Returns true iff or and .
|
|
|
FT
|
traits.cross_product_2 ( Vector_2 p, Vector_2 q)
|
| |
Returns .
|
|
|
FT
|
|
traits.determinant_2 ( |
Point_2 p,
Point_2 q,
Point_2 r) |
|
| |
Returns
|
|
|
int
|
traits.sign ( FT x)
|
| |
|
Returns -1 if x < 0, 0 if x = 0 and 1 if x > 0
|
bool
|
traits.is_negative ( FT x)
|
| |
Returns true iff x<0.
|
|
|
bool
|
|
traits.do_intersect ( |
Point_2 p1,
Point_2 q1,
Point_2 p2,
Point_2 q2) |
|
| |
Returns true iff the segments [p1,q1] and [p2,q2] intersect.
|
|
|
Orientation
|
traits.orientation ( Point_2 p, Point_2 q, Point_2 r)
|
| |
Returns LEFTTURN, if lies to the left of the oriented
line defined by and , returns RIGHTTURN if
lies to the right of , and returns COLLINEAR if lies
on .
|
|
|
Comparison_result
|
traits.compare_x ( Point_2 p, Point_2 q)
|
| |
|
Returns SMALLER if p_x < q_x, EQUAL if p_x = q_x and LARGER if p_x > q_x