Concept

ArrangementDirectionalXMonotoneTraits_2

Definition

This concept refines the basic arrangement x-monotone traits concept. A model of this concept is able to handle directed x-monotone curves that intersect in their interior. Namely, an instance of the X_monotone_curve_2 type defined by a model of the concept ArrangementXMonotoneTraits_2 is only required to have a left (lexicographically smaller) endpoint and a right endpoint. If the traits class is also a model of ArrangementDirectionalXMonotoneTraits_2, the x-monotone curve is also required to have a direction, namely one of these two endpoint serves as its source and the other as its target.

Refines

ArrangementXMonotoneTraits_2

Functor Types

ArrangementDirectionalXMonotoneTraits_2::Compare_endpoints_xy_2
models the concept ArrDirectionalTraits::CompareEndpointsXy_2.


ArrangementDirectionalXMonotoneTraits_2::Construct_opposite_2
models the concept ArrDirectionalTraits::ConstructOpposite_2.


ArrangementDirectionalXMonotoneTraits_2::Intersect_2
models the concept ArrDirectionalTraits::Intersect_2.


ArrangementDirectionalXMonotoneTraits_2::Split_2
models the concept ArrDirectionalTraits::Split_2.


ArrangementDirectionalXMonotoneTraits_2::Are_mergeable_2
models the concept ArrDirectionalTraits::AreMergeable_2.


ArrangementDirectionalXMonotoneTraits_2::Merge_2
models the concept ArrDirectionalTraits::Merge_2.

Creation

ArrangementDirectionalXMonotoneTraits_2 traits;
default constructor.

ArrangementDirectionalXMonotoneTraits_2 traits ( other);
copy constructor

ArrangementDirectionalXMonotoneTraits_2
traits = other assignment operator.

Accessing Functor Objects

Compare_endpoints_xy_2 traits.compare_endpoints_xy_2_object ()
Construct_opposite_2 traits.construct_opposite_2_object ()

Has Models

CGAL::Arr_segment_traits_2<Kernel>
CGAL::Arr_non_caching_segment_traits_2<Kernel>
CGAL::Arr_circle_segment_traits_2<Kernel>
CGAL::Arr_conic_traits_2<RatKernel,AlgKernel,NtTraits>
CGAL::Arr_rational_function_traits_2<AlgKernel,NtTraits>
CGAL::Arr_Bezier_curve_traits_2<RatKernel,AlgKernel,NtTraits>
CGAL::Arr_algebraic_segment_traits_2<Coefficient>

See Also

ArrangementXMonotoneTraits_2