*CGAL::Arr_segment_cached_traits_2<Kernel>*

### Definition

The class *Arr_segment_cached_traits_2<Kernel>* is a traits class for handling arrangements of line
segments that stores additional cached information with it curves in order
to speed up the arrangement construction. It thus uses the geometric kernel
method in a more efficient way than the straightforward implementation, at
the cost of additional memory.
The *Arr_segment_traits_2<Kernel>::Curve_2* type is derived from the
*Kernel::Segment_2* class, thus it has the same functionality. An
object of this type can be created directly from a *Kernel::Segment_2*
object or from two *Kernel::Point_2* objects that specify its
endpoints.

The *Kernel* must use a number type that supports exact computations
with rational numbers, such as *Quotient<Gmpz>* or *leda_rational*.
In this case, since the caching methods help avoiding cascaded computations
it is also safe to use *Quotient<MP_Float>* as the number type.
Other inexact representations can be used at the user's own risk.

*#include <CGAL/Arr_segment_cached_traits_2.h>*

### Is Model for the Concept

*ArrangementTraits_2*