CGAL 5.2 - 3D Polyhedral Surface
CGAL::Polyhedron_traits_3< Kernel > Class Template Reference

#include <CGAL/Polyhedron_traits_3.h>


The class Polyhedron_traits_3 is a model of the PolyhedronTraits_3 concept.

It defines the geometric types and primitive operations used in the polyhedral surface data structure Polyhedron_3<PolyhedronTraits_3> in terms of the CGAL Kernel. It keeps a local copy of the kernel which makes it suitable for kernels with local state.

Is Model Of:
See also


Since the PolyhedronTraits_3 concept is a subset of the concept Kernel, this class just forwards the relevant types and access member functions from its template argument. However, it is useful for testing sufficiency of requirements.


Instantiation of a polyhedral surface with the Cartesian kernel based on double coordinates.

File Polyhedron/polyhedron_prog_simple.cpp

#include <CGAL/Simple_cartesian.h>
#include <CGAL/Polyhedron_3.h>
typedef CGAL::Polyhedron_3<Kernel> Polyhedron;
typedef Polyhedron::Halfedge_handle Halfedge_handle;
int main() {
Polyhedron P;
Halfedge_handle h = P.make_tetrahedron();
if ( P.is_tetrahedron(h))
return 0;
return 1;


typedef unspecified_type Kernel
 the Kernel model.
typedef Kernel::Point_3 Point_3
typedef Kernel::Plane_3 Plane_3
typedef Kernel::Construct_opposite_plane_3 Construct_opposite_plane_3


 Polyhedron_traits_3 ()
 default constructor, uses Kernel() as local reference to the kernel.
 Polyhedron_traits_3 (const Kernel &kernel)
 stores kernel as local reference.


Construct_opposite_plane_3 construct_opposite_plane_3_object ()
 forwarded to kernel.