 
The point type. It must be DefaultConstructible,
CopyConstructible and Assignable.
 
 
The segment type.
 
 
The tetrahedron type.
 
 
The triangle type.
 
 
A constructor object that must provide the function operator Segment_3 operator()(Point_3 p, Point_3 q), which constructs a segment from two points.
 
 
A constructor object that must provide the function operator Triangle_3 operator()(Point_3 p, Point_3 q, Point_3 r ), which constructs a triangle from three points.
 
 
A constructor object that must provide the function operator Tetrahedron_3 operator()(Point_3 p, Point_3 q, Point_3 r, Point_3 s), which constructs a tetrahedron from four points.
 
 
A predicate object that must provide the function operator Comparison_result operator()(Point p, Point q), which returns EQUAL if the two points are equal. Otherwise it must return a consistent order for any two points chosen in a same line.
 
 
A predicate object that must provide the function operator Orientation operator()(Point p, Point q, Point r), which returns COLLINEAR if the points are collinear. Otherwise it must return a consistent orientation for any three points chosen in a same plane.
 
 
A predicate object that must provide the function operator Orientation operator()(Point p, Point q, Point r, Point s), which returns POSITIVE, if s lies on the positive side of the oriented plane h defined by p, q, and r, returns NEGATIVE if s lies on the negative side of h, and returns COPLANAR if s lies on h.

 
Default constructor.
 
 
Copy constructor.

The following functions give access to the predicate and construction objects:
CGAL::Exact_predicates_inexact_constructions_kernel (recommended)
CGAL::Exact_predicates_exact_constructions_kernel
CGAL::Filtered_kernel
CGAL::Cartesian
CGAL::Simple_cartesian
CGAL::Homogeneous
CGAL::Simple_homogeneous