CGAL 5.1.2 - 2D Arrangements
ArrTraits::Intersect_2 Concept Reference

Definition

Operations

A model of this concept must provide:

OutputIterator operator() (ArrTraits::X_monotone_curve_2 xc1, ArrTraits::X_monotone_curve_2 xc2, Output_iterator &oi)
 computes the intersections of xc1 and xc2 and inserts them in an ascending lexicographic \( xy\)-order into a range begining at oi. More...
 

Member Function Documentation

◆ operator()()

OutputIterator ArrTraits::Intersect_2::operator() ( ArrTraits::X_monotone_curve_2  xc1,
ArrTraits::X_monotone_curve_2  xc2,
Output_iterator &  oi 
)

computes the intersections of xc1 and xc2 and inserts them in an ascending lexicographic \( xy\)-order into a range begining at oi.

The type OutputIterator dereferences a boost::variant of either the type pair<ArrTraits::Point_2,ArrTraits::Multiplicity> or the type ArrTraits::X_monotone_curve_2. An object of the former type represents an intersection point with its multiplicity (in case the multiplicity is undefined or unknown, it should be set to \( 0\)). An object of the latter type representing an overlapping subcurve of xc1 and xc2. The operator returns a past-the-end iterator of the destination range.