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

CGAL 6.2 - 3D Polyhedral Surface

Loading...
Searching...
No Matches
List of all members
CGAL::Polyhedron_traits_3< Kernel > Class Template Reference
Reference Manual

`#include <CGAL/Polyhedron_traits_3.h>`

## Definition

template<typename Kernel>
class CGAL::Polyhedron_traits_3< Kernel >

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
  `PolyhedronTraits_3`

See also
  `CGAL::Polyhedron_traits_with_normals_3<Kernel>`

Implementation

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.

Example

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

Example: Polyhedron/polyhedron_prog_simple.cpp

Show / Hide
#include <CGAL/Simple_cartesian.h>
#include <CGAL/Polyhedron_3.h>
typedef CGAL::Simple_cartesian<double> Kernel;
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;
}
CGAL::Polyhedron_3
A polyhedral surface Polyhedron_3 consists of vertices V, edges E, facets F and an incidence relation...
Definition: Polyhedron_3.h:113
CGAL::Polyhedron_3::make_tetrahedron
Halfedge_handle make_tetrahedron()
a tetrahedron is added to the polyhedral surface.
CGAL::Polyhedron_traits_3::Kernel
unspecified_type Kernel
the Kernel model.
Definition: Polyhedron_traits_3.h:42
CGAL::Simple_cartesian

## Types
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

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

## Operations
Construct_opposite_plane_3 | construct_opposite_plane_3_object ()
| forwarded to `kernel`.