The boundary of a triangle splits the plane in two open regions, a bounded one and an unbounded one.
Triangle_2<Kernel> t ( Point_2<Kernel> p, Point_2<Kernel> q, Point_2<Kernel> r); | |
introduces a triangle t with vertices p, q and r.
|
bool | t.operator== ( t2) const | Test for equality: two triangles are equal, iff there exists a cyclic permutation of the vertices of t2, such that they are equal to the vertices of t. |
bool | t.operator!= ( t2) const | Test for inequality. |
Point_2<Kernel> | t.vertex ( int i) const | returns the i'th vertex modulo 3 of t. |
Point_2<Kernel> | t.operator[] ( int i) const | returns vertex(i). |
bool | t.is_degenerate () const | triangle t is degenerate, if the vertices are collinear. | ||
Orientation | t.orientation () const | returns the orientation of t. | ||
Oriented_side | t.oriented_side ( Point_2<Kernel> p) const | |||
returns
ON_ORIENTED_BOUNDARY, or
POSITIVE_SIDE,
or the constant
ON_NEGATIVE_SIDE,
determined by the position of point p.
| ||||
Bounded_side | t.bounded_side ( Point_2<Kernel> p) const | |||
returns the constant ON_BOUNDARY,
ON_BOUNDED_SIDE, or else
ON_UNBOUNDED_SIDE,
depending on where point p is.
|
For convenience we provide the following Boolean functions:
bool | t.has_on_positive_side ( Point_2<Kernel> p) const | |||
bool | t.has_on_negative_side ( Point_2<Kernel> p) const | |||
bool | t.has_on_boundary ( Point_2<Kernel> p) const | |||
bool | t.has_on_bounded_side ( Point_2<Kernel> p) const | |||
bool | t.has_on_unbounded_side ( Point_2<Kernel> p) const | |||
|
Triangle_2<Kernel> | t.opposite () | returns a triangle where the boundary is oriented the other way round (this flips the positive and the negative side, but not the bounded and unbounded side). |
Kernel::FT | t.area () const | returns the signed area of t. |
Bbox_2 | t.bbox () const | returns a bounding box containing t. |
Triangle_2<Kernel> | t.transform ( Aff_transformation_2<Kernel> at) const | |
returns the triangle obtained by applying at on the three vertices of t. |