\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)

CGAL 4.3 - 2D Apollonius Graphs (Delaunay Graphs of Disks)

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
CGAL::Apollonius_graph_filtered_traits_2< CK, CM, EK, EM, FK, FM > Class Template Reference
2D Apollonius Graphs (Delaunay Graphs of Disks) Reference

`#include <CGAL/Apollonius_graph_filtered_traits_2.h>`

## Definition

The class `Apollonius_graph_filtered_traits_2` provides a model for the `ApolloniusGraphTraits_2` concept.

The class `Apollonius_graph_filtered_traits_2` uses the filtering technique [1] to achieve traits for the `Apollonius_graph_2<Gt,Agds>` class with efficient and exact predicates given an exact kernel `EK` and a filtering kernel `FK`. The geometric constructions associated provided by this class are equivalent to those provided by the traits class `Apollonius_graph_traits_2<CK,CM>`, which means that they may be inexact.

This class has six template parameters. The first, third and fifth template parameters must be a models of the `Kernel` concept. The second, fourth and sixth template parameters correspond to how predicates are evaluated. There are two predefined possible values for `Method_tag`, namely `CGAL::Sqrt_field_tag` and `CGAL::Ring_tag`. The first one must be used when the number type used in the representation supports the exact evaluation of signs of expressions involving all four basic operations and square roots, whereas the second one requires the exact evaluation of signs of ring-type expressions, i.e., expressions involving only additions, subtractions and multiplications. The way the predicates are evaluated is discussed in [3], [4].

The default values for the template parameters are as follows: `CM = CGAL::Ring_tag`, `EK = CGAL::Simple_cartesian<CGAL::MP_Float>`, `EM = CM`, `FK = CGAL::Simple_cartesian<CGAL::Interval_nt<false> >`, `FM = CM`.

Is Model Of:
  `ApolloniusGraphTraits_2`

See Also
  `Kernel`
  `ApolloniusGraphTraits_2`
  `CGAL::Ring_tag`
  `CGAL::Sqrt_field_tag`
  `CGAL::Apollonius_graph_2<Gt,Agds>`
  `CGAL::Apollonius_graph_traits_2<K,Method_tag>`

Examples:
  Apollonius_graph_2/ag2_filtered_traits_no_hidden.cpp, and Apollonius_graph_2/ag2_hierarchy.cpp.

## Creation
| Apollonius_graph_filtered_traits_2 ()
| Default constructor.
| Apollonius_graph_filtered_traits_2 (Apollonius_graph_filtered_traits_2< CK, CM, EK, EM, FK, FM > other)
| Copy constructor.
Apollonius_graph_filtered_traits_2 < CK, CM, EK, EM, FK, FM > | operator= (other)
| Assignment operator.