 CGAL 5.3 - 2D Arrangements
ArrTraits::CompareXNearLimit_2 Concept Reference

## Operations

A model of this concept must provide:

Comparison_result operator() (const ArrTraits::X_monotone_curve_2 &xcv1, const ArrTraits::X_monotone_curve_2 &xcv2, Arr_curve_end ce)
Given two $$x$$-monotone curves xcv1 and xcv2 and an enumeration ce that specifies either the minimum ends or the maximum ends of the curves where the curves have a vertical asymptote, compares the $$x$$-coordinate of the curves near their respective ends. More...

## ◆ operator()()

 Comparison_result ArrTraits::CompareXNearLimit_2::operator() ( const ArrTraits::X_monotone_curve_2 & xcv1, const ArrTraits::X_monotone_curve_2 & xcv2, Arr_curve_end ce )

Given two $$x$$-monotone curves xcv1 and xcv2 and an enumeration ce that specifies either the minimum ends or the maximum ends of the curves where the curves have a vertical asymptote, compares the $$x$$-coordinate of the curves near their respective ends.

Returns SMALLER, EQUAL, or LARGER accordingly. More precisely, compares the $$x$$-coordinates of the horizontal projection of a point $$p$$ onto xcv1 and xcv2. If xcv1 and xcv2 approach the bottom boundary-side, $$p$$ is located far to the bottom, such that the result is invariant under a translation of $$p$$ farther to the bottom. If xcv1 and xcv2 approach the top boundary-side, $$p$$ is located far to the top in a similar manner.

Precondition
The $$x$$-coordinates of the limits of the curves at their respective ends are equal. That is, compare_x_at_limit_2(xcv1, xcv2, ce) = EQUAL.
parameter_space_in_y_2(xcv1, ce) = parameter_space_in_y_2(xcv2, ce).
parameter_space_in_y_2(xcv1, ce) $$\neq$$ ARR_INTERIOR.