The class Projection_traits_xy_3<K> is an adapter to apply 2D algorithms to the projections of 3D data on the xyplane.
Cgal provides also predefined geometric traits classes Projection_traits_yz_3<K> and Projection_traits_xz_3<K> to deal with projections on the zx and the zyplane, respectively.
#include <CGAL/Projection_traits_xy_3.h>
The class is a model of several 2D triangulation traits class concepts, 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 concepts PolygonTraits_2 and ConvexHullTraits_2.
TriangulationTraits_2
DelaunayTriangulationTraits_2
ConstrainedTriangulationTraits_2
PolygonTraits_2
ConvexHullTraits_2
typedef Point_3<K>  Point_2;  
typedef Segment_3<K>  Segment_2;  
typedef Triangle_3<K>  Triangle_2;  
typedef Line_3<K>  Line_2;  
typedef K::Object_3  Object_2; 
The functors provided by this class are those listed in the concepts, except that it does not provide the type and constructors required to build the dual Voronoi diagram. The functors operate on the 2D projection of their arguments. They come with preconditions that projections of the arguments are nondegenerate, eg. a line segment does not project on a single point, two points do not project on the same point, etc.
In the following, we specify the choice of the zcoordinate in case a new point is constructed.
Projection_traits_xy_3<K> traits;  
default constructor.
 
Projection_traits_xy_3<K> traits ( Projection_traits_xy_3 tr);  
Copy constructor.

Projection_traits_xy_3  traits.operator= ( Projection_traits_xy_3 tr)  
Assignment operator. 