## LargestEmptyIsoRectangleTraits_2

### Definition

The concept LargestEmptyIsoRectangleTraits_2 describes the set of requirements to be fulfilled by any class used to instantiate the template parameter of the class Largest_empty_iso_rectangle_2<T>. This concept provides the types of the geometric primitives used in this class and some function object types for the required predicates on those primitives.

### Types

LargestEmptyIsoRectangleTraits_2::Point_2
| The point type.
LargestEmptyIsoRectangleTraits_2::Iso_rectangle_2
| The iso rectangle type.
LargestEmptyIsoRectangleTraits_2::Compare_x_2
| Predicate object. Must provide the operator Comparison_result operator()(Point_2 p, Point_2 q) which returns SMALLER, EQUAL or LARGER according ding to the x-ordering of points p and q.
LargestEmptyIsoRectangleTraits_2::Compare_y_2
| Predicate object. Must provide the operator Comparison_result operator()(Point_2 p, Point_2 q) which returns SMALLER, EQUAL or LARGER according to the y-ordering of points p and q.
LargestEmptyIsoRectangleTraits_2::Less_x_2
| Predicate object. Must provide the operator bool operator()(Point_2 p, Point_2 q) which returns whether p is less than q according to their x-ordering.
LargestEmptyIsoRectangleTraits_2::Less_y_2
| Predicate object. Must provide the operator bool operator()(Point_2 p, Point_2 q) which returns whether p is less than q according to their y-ordering.

### Creation

Only a default constructor, copy constructor and an assignement operator are required. Note that further constructors can be provided.

LargestEmptyIsoRectangleTraits_2 traits;
| Default constructor.

LargestEmptyIsoRectangleTraits_2 traits ( | LargestEmptyIsoRectangleTraits_2);

Copy constructor

LargestEmptyIsoRectangleTraits_2
| traits = gtr

Assignment operator.

### Predicate functions

The following functions give access to the predicate and constructor objects.

Compare_x_2 | traits.compare_x_2_object ()
Compare_y_2 | traits.compare_y_2_object ()
Less_x_2 | traits.less_x_2_object ()
Less_y_2 | traits.less_y_2_object ()

### Has Models

CGAL::Cartesian<R>
CGAL::Homogeneous<R>

### See Also

CGAL::Largest_empty_iso_rectangle_2<Traits>