The functionality of this class has been generalized to other packages than 2D triangulations. The more general class Projection_traits_xy_3 can be found in the 2D and 3D Linear Geometric Kernel.
The class Triangulation_euclidean_traits_xy_3<K> is a geometric traits class which allows to triangulate a terrain. This traits class is designed to build a two dimensional triangulation embedded in 3D space, i.e. a triangulated surface, such that its on the xy plane is a Delaunay triangulation. This is a usual construction for GIS terrains. Instead of really projecting the 3D points and maintaining a mapping between each point and its projection (which costs space and is error prone) the class Triangulation_euclidean_traits_xy_3<K> supplies geometric predicates that ignore the zcoordinate of the points.
The class is a model of the concept DelaunayTriangulationTraits_2 except that it does not provide the type and constructors required to build the dual Voronoi diagram. The class is also a model of the concept ConstrainedTriangulationTraits_2.
#include <CGAL/Triangulation_euclidean_traits_xy_3.h>
typedef Point_3<K>  Point_2;  
typedef Segment_3<K>  Segment_2;  
typedef Triangle_3<K>  Triangle_2;  
typedef Line_3<K>  Line_2; 
The following predicates and constructor types are provided
Triangulation_euclidean_traits_xy_3<K>::Construct_segment_2  
A constructor object for
Segment_2. Provides : Segment_2 operator()(Point_2 p,Point_2 q), which constructs a segment from two points.
 
Triangulation_euclidean_traits_xy_3<K>::Construct_triangle_2  
A constructor object for
Triangle_2. Provides : Triangle_2 operator()(Point_2 p,Point_2 q,Point_2 r ), which constructs a triangle from three points.
 
Triangulation_euclidean_traits_xy_3<K>::Construct_line_2  
A constructor object for
Line_2. Provides : Line_2 operator()(Point_2 p,Point_2 q), which constructs a line from two points.
 
Triangulation_euclidean_traits_xy_3<K>::Compute_squared_distance_2  
A construction object.
Provides the operator : RT operator()(Line_2 l, Point_2 p); which returns the squared distance between the projection of p and the projection of l.
 
Triangulation_euclidean_traits_xy_3<K>::Intersect_2  
A construction object.
Provides the operator : Object_2 operator()(Segment_2 s1, Segment_2 s2); which returns the intersection of the projection of s1 and the projection of s2 embedded in 3D. If the intersection is a segment, the zcoordinates of its extremities is 0. If the intersection is a point p, let p1 and p2 be the points on s1 and s2 respectively, such that their projections are p. The point returned is the middle of the segment p1p2.
 
Triangulation_euclidean_traits_xy_3<K>::Compare_x_2  
Predicate object. Provides
the operator : Comparison_result operator()(Point_2 p, Point_2 q) which returns SMALLER, EQUAL or LARGER according to the xordering of points p and q.
 
Triangulation_euclidean_traits_xy_3<K>::Compare_y_2  
Predicate object. Provides
the operator : Comparison_result operator()(Point_2 p, Point_2 q) which returns (SMALLER, EQUAL or LARGER) according to the yordering of points p and q.
 
Triangulation_euclidean_traits_xy_3<K>::Orientation_2  
Predicate object. Provides
the operator : Orientation operator()(Point_2 p, Point_2 q, Point_2 r) which returns LEFT_TURN, RIGHT_TURN or COLLINEAR according to the position of the projection of r with respect to the projection of the oriented line pq.
 
Triangulation_euclidean_traits_xy_3<K>::Side_of_oriented_circle_2  
Predicate object.
Provides the operator :
Oriented_side operator()(Point_2 p, Point_2 q, Point_2 r, Point_2 s)
which takes four points p, q, r, s as arguments and returns
ON_POSITIVE_SIDE, ON_NEGATIVE_SIDE or,
ON_ORIENTED_BOUNDARY according to the position of
the projection of points
with respect to the oriented circle through the projections of p,q
and r.
 
Triangulation_euclidean_traits_xy_3<K>::Compare_distance_2  
Predicate object. Provides
the operator : Comparison_result operator()(Point_2 p, Point_2 q, Point_2 r) which returns SMALLER, EQUAL or LARGER according to the distance between the projection of p and the projection of q being smaller, equal or larger than the distance between the projection of p and the projection of r.

Triangulation_euclidean_traits_xy_3<K> traits;  
default constructor.
 
Triangulation_euclidean_traits_xy_3<K> traits ( Triangulation_euclidean_traits_xy_3 tr);  
Copy constructor.

Triangulation_euclidean_traits_xy_3  
traits = Triangulation_euclidean_traits_xy_3 tr  
Assignment operator. 
TriangulationTraits_2
Cgal provides also predefined geometric traits class Triangulation_euclidean_traits_yz_3<K> and Triangulation_euclidean_traits_xz_3<K> to deal with projections on the xz or the yzplane, respectively.
#include <CGAL/Triangulation_euclidean_traits_xz_3.h>
#include <CGAL/Triangulation_euclidean_traits_yz_3.h>