CGAL 4.4 - 2D and 3D Linear Geometry Kernel
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
CGAL::Tetrahedron_3< Kernel > Class Template Reference

#include <CGAL/Tetrahedron_3.h>

Definition

An object t of the class Tetrahedron_3 is an oriented tetrahedron in the three-dimensional Euclidean space E3.

It is defined by four vertices p0, p1, p2 and p3. The orientation of a tetrahedron is the orientation of its four vertices. That means it is positive when p3 is on the positive side of the plane defined by p0, p1 and p2.

The tetrahedron itself splits the space E3 in a positive and a negative side.

The boundary of a tetrahedron splits the space in two open regions, a bounded one and an unbounded one.

See Also
Kernel::Tetrahedron_3

Creation

 Tetrahedron_3 (const Point_3< Kernel > &p0, const Point_3< Kernel > &p1, const Point_3< Kernel > &p2, const Point_3< Kernel > &p3)
 introduces a tetrahedron t with vertices p_0, p_1, p_2 and p_3.
 

Operations

bool operator== (const Tetrahedron_3< Kernel > &t2) const
 Test for equality: two tetrahedra t and t2 are equal, iff t and t2 have the same orientation and their sets (not sequences) of vertices are equal.
 
bool operator!= (const Tetrahedron_3< Kernel > &t2) const
 Test for inequality.
 
Point_3< Kernelvertex (int i) const
 returns the i'th vertex modulo 4 of t.
 
Point_3< Kerneloperator[] (int i) const
 returns vertex(int i).
 

Predicates

bool is_degenerate () const
 Tetrahedron t is degenerate, if the vertices are coplanar.
 
Orientation orientation () const
 
Oriented_side oriented_side (const Point_3< Kernel > &p) const
 
Bounded_side bounded_side (const Point_3< Kernel > &p) const
 

Convencience Boolean Functions

bool has_on_positive_side (const Point_3< Kernel > &p) const
 
bool has_on_negative_side (const Point_3< Kernel > &p) const
 
bool has_on_boundary (const Point_3< Kernel > &p) const
 
bool has_on_bounded_side (const Point_3< Kernel > &p) const
 
bool has_on_unbounded_side (const Point_3< Kernel > &p) const
 

Miscellaneous

Kernel::FT volume () const
 returns the signed volume of t.
 
Bbox_3 bbox () const
 returns a bounding box containing t.
 
Tetrahedron_3< Kerneltransform (const Aff_transformation_3< Kernel > &at) const
 returns the tetrahedron obtained by applying at on the three vertices of t.
 

Member Function Documentation

template<typename Kernel >
Bounded_side CGAL::Tetrahedron_3< Kernel >::bounded_side ( const Point_3< Kernel > &  p) const
Precondition
t is not degenerate.
template<typename Kernel >
Oriented_side CGAL::Tetrahedron_3< Kernel >::oriented_side ( const Point_3< Kernel > &  p) const
Precondition
t is not degenerate.