An object t of the class Triangle_3<Kernel> is a triangle in the three-dimensional Euclidean space 3. As the triangle is not a full-dimensional object there is only a test whether a point lies on the triangle or not.


Triangle_3<Kernel> t ( Point_3<Kernel> p, Point_3<Kernel> q, Point_3<Kernel> r);
introduces a triangle t with vertices p, q and r.


bool t.operator== ( t2) Test for equality: two triangles t and t2 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) Test for inequality.

Point_3<Kernel> t.vertex ( int i) returns the i'th vertex modulo 3 of t.

Point_3<Kernel> t.operator[] ( int i) returns vertex(int i).

Plane_3<Kernel> t.supporting_plane () returns the supporting plane of t, with same orientation.


bool t.is_degenerate () t is degenerate if its vertices are collinear.

bool t.has_on ( Point_3<Kernel> p) A point is on t, if it is on a vertex, an edge or the face of t.


Kernel::FT t.squared_area () returns a square of the area of t.

Bbox_3 t.bbox () returns a bounding box containing t.

Triangle_3<Kernel> t.transform ( Aff_transformation_3<Kernel> at)
returns the triangle obtained by applying at on the three vertices of t.

See Also