## CGAL::Filtered_kernel_adaptor<CK>

### Definition

*Filtered_kernel_adaptor<CK>*is a kernel that uses the filtering technique
[BBP01] to obtain a kernel with exact and efficient
predicate functors.
The geometric constructions are exactly those
of the kernel *CK*, which means that they are not necessarily exact.

In contrast to *Filtered_kernel*,
the global functions are those of *CK*.

### Is Model for the Concepts

*Kernel*
*#include <CGAL/Filtered_kernel.h>*

### Example

The following example shows how to produce a kernel whose geometric
objects and constructions are those of *Simple_cartesian<double>*
The predicate functors of the kernel are exact, the global functions
are not.

#include <CGAL/Simple_cartesian.h>
#include <CGAL/Filtered_kernel.h>
typedef CGAL::Simple_cartesian<double> CK;
typedef CGAL::Filtered_kernel_adaptor<CK> K;
typedef K::Point_2 p(0,0), q(1,1), r(1,5);
CGAL::orientation(p,q,r); // not exact
typedef K::Orientation_2 orientation;
orientation(p,q,r); // exact