CGAL 4.12.1  3D Triangulations

The concept DelaunayTriangulationTraits_3
is the first template parameter of the class Delaunay_triangulation_3
. It defines the geometric objects (points, segments...) forming the triangulation together with a few geometric predicates and constructions on these objects.
CGAL::Exact_predicates_inexact_constructions_kernel
(recommended)
CGAL::Exact_predicates_exact_constructions_kernel
(recommended for Voronoi)
In addition to the requirements described for the traits class of CGAL::Triangulation_3
, the geometric traits class of a Delaunay triangulation must fulfill the following requirements:
Types  
typedef unspecified_type  Line_3 
The line type.  
typedef unspecified_type  Object_3 
The object type.  
typedef unspecified_type  Ray_3 
The ray type.  
typedef unspecified_type  Coplanar_side_of_bounded_circle_3 
A predicate object that must provide the function operator. More...  
typedef unspecified_type  Side_of_oriented_sphere_3 
A predicate object that must provide the function operator. More...  
typedef unspecified_type  Compare_distance_3 
A predicate object that must provide the function operator. More...  
When  
typedef unspecified_type  Side_of_bounded_sphere_3 
A predicate object that must provide the function operators. More...  
In addition, only when the dual operations are used, the traits class must provide the following constructor objects:  
typedef unspecified_type  Construct_circumcenter_3 
A constructor object that must provide the function operator. More...  
typedef unspecified_type  Construct_object_3 
A constructor object that must provide the function operators. More...  
typedef unspecified_type  Construct_equidistant_line_3 
A constructor object that must provide the function operator. More...  
typedef unspecified_type  Construct_ray_3 
A constructor object that must provide the function operator. More...  
Operations  
The following functions give access to the predicate and construction objects:  
Coplanar_side_of_bounded_circle_3  coplanar_side_of_bounded_circle_3_object () 
Side_of_oriented_sphere_3  side_of_oriented_sphere_3_object () 
When using the  
Compare_distance_3  compare_distance_3_object () 
The following functions must be provided only if the methods of  
Construct_circumcenter_3  construct_circumcenter_3_object () 
Construct_object_3  construct_object_3_object () 
Construct_equidistant_line_3  construct_equidistant_line_object () 
Construct_ray_3  construct_ray_3_object () 
A predicate object that must provide the function operator.
Comparison_result operator()(Point p, Point q, Point r)
,
which compares the distance between p
and q
to the distance between p
and r
.
It is only needed when using the Fast_location
policy or the nearest_vertex
function.
A constructor object that must provide the function operator.
Point_3 operator()(Point_3 p, Point_3 q, Point_3 r, Point_3 s)
,
which constructs the circumcenter of four points.
p
, q
, r
and s
must be non coplanar.It must also provide the function operator
Point_3 operator()(Point_3 p, Point_3 q, Point_3 r)
,
which constructs the circumcenter of three points.
p
, q
and r
must be non collinear. A constructor object that must provide the function operator.
Line_3 operator()(Point_3 p1, Point_3 p2, Point_3 p3)
,
which constructs the line which is at the same distance from the three points.
p1
, p2
and p3
must be non collinear. A constructor object that must provide the function operators.
Object_3 operator()(Point_3 p)
,
Object_3 operator()(Segment_3 s)
and
Object_3 operator()(Ray_3 r)
that construct an object respectively from a point, a segment and a ray.
A constructor object that must provide the function operator.
Ray_3 operator()(Point_3 p, Line_3 l)
,
which constructs the ray starting at p
with direction given by l
.
A predicate object that must provide the function operator.
Bounded_side operator()(Point p, Point q, Point r, Point s)
,
which determines the bounded side of the circle defined by p
, q
, and r
on which s
lies.
p
, q
, r
, and s
are coplanar and p
, q
, and r
are not collinear. A predicate object that must provide the function operators.
Bounded_side operator()(Point_3 p, Point_3 q, Point_3 t)
,
which returns the position of the point t
relative to the sphere that has pq
as its diameter,
Bounded_side operator()(Point_3 p, Point_3 q, Point_3 r, Point_3 t)
,
which returns the position of the point t
relative to the sphere passing through p, q
, and r
and whose center is in the plane defined by these three points.
A predicate object that must provide the function operator.
Oriented_side operator()(Point p, Point q, Point r, Point s, Point t)
,
which determines on which side of the oriented sphere circumscribing p, q, r, s
the point t
lies.