CGAL 5.3.2 - 2D Regularized Boolean Set-Operations
|
There are several overloaded function templates called intersection()
that compute the intersection of two or more polygons and insert the resulting polygons with holes into a container via an output iterator.
A function template in this group that accepts two input polygons has one of the two following signatures:
OutputIterator intersection(const Type1& pgn1, const Type2& pgn2, OutputIterator oi);
OutputIterator intersection(const Type1& pgn1, const Type2& pgn2, OutputIterator oi, const GpsTraits& traits);
oi | the output iterator for the result. |
The types Type1
and Type2
of the parameters must be convertible to the types specified in a row in the table below, respectively. The 3rd column specifies the corresponding dereference type of the output iterator.
CGAL::complement()
CGAL::do_intersect()
CGAL::join()
CGAL::difference()
CGAL::symmetric_difference()
Functions | |
template<typename Kernel , typename Container , typename OutputIterator > | |
OutputIterator | CGAL::intersection (const Polygon_2< Kernel, Container > &pgn1, const Polygon_2< Kernel, Container > &pgn2, OutputIterator oi) |
computes the intersection of two polygons and inserts the resulting polygons with holes into a container via an output iterator. More... | |
template<typename Kernel , typename Container , typename OutputIterator > | |
OutputIterator | CGAL::intersection (const Polygon_2< Kernel, Container > &pgn1, const Polygon_with_holes_2< Kernel, Container > &pgn2, OutputIterator oi) |
computes the intersection of two polygons and inserts the resulting polygons with holes into a container via an output iterator. More... | |
template<typename Kernel , typename Container , typename OutputIterator > | |
OutputIterator | CGAL::intersection (const Polygon_with_holes_2< Kernel, Container > &pgn1, const Polygon_2< Kernel, Container > &pgn2, OutputIterator oi) |
computes the intersection of two polygons and inserts the resulting polygons with holes into a container via an output iterator. More... | |
template<typename Kernel , typename Container , typename OutputIterator > | |
OutputIterator | CGAL::intersection (const Polygon_with_holes_2< Kernel, Container > &pgn1, const Polygon_with_holes_2< Kernel, Container > &pgn2, OutputIterator oi) |
computes the intersection of two polygons and inserts the resulting polygons with holes into a container via an output iterator. More... | |
template<typename ArrTraits , typename OutputIterator > | |
OutputIterator | CGAL::intersection (const General_polygon_2< ArrTraits > &pgn1, const General_polygon_2< ArrTraits > &pgn2, OutputIterator oi) |
computes the intersection of two general polygons and inserts the resulting general polygons with holes into a container via an output iterator. More... | |
template<typename ArrTraits , typename OutputIterator > | |
OutputIterator | CGAL::intersection (const General_polygon_with_holes_2< General_polygon_2< ArrTraits > > &pgn1, const General_polygon_2< ArrTraits > &pgn2, OutputIterator oi) |
computes the intersection of two general polygons and inserts the resulting general polygons with holes into a container via an output iterator. More... | |
template<typename ArrTraits , typename OutputIterator > | |
OutputIterator | CGAL::intersection (const General_polygon_2< ArrTraits > &pgn1, const General_polygon_with_holes_2< General_polygon_2< ArrTraits > > &pgn2, OutputIterator oi) |
computes the intersection of two general polygons and inserts the resulting general polygons with holes into a container via an output iterator. More... | |
template<typename Polygon , typename OutputIterator > | |
OutputIterator | CGAL::intersection (const General_polygon_with_holes_2< Polygon > &pgn1, const General_polygon_with_holes_2< Polygon > &pgn2, OutputIterator oi) |
computes the intersection of two general polygons with holes and inserts the resulting general polygons with holes into a container via an output iterator. More... | |
template<typename InputIterator , typename OutputIterator > | |
OutputIterator | CGAL::intersection (InputIterator begin, InputIterator end, OutputIterator oi) |
Given a range of polygons (resp. More... | |
template<typename InputIterator1 , typename InputIterator2 , typename OutputIterator > | |
OutputIterator | CGAL::intersection (InputIterator1 begin1, InputIterator1 end1, InputIterator2 begin2, InputIterator2 end2, OutputIterator oi) |
Given a range of polygons (resp. More... | |
OutputIterator CGAL::intersection | ( | const Polygon_2< Kernel, Container > & | pgn1, |
const Polygon_2< Kernel, Container > & | pgn2, | ||
OutputIterator | oi | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the intersection of two polygons and inserts the resulting polygons with holes into a container via an output iterator.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
oi | the output iterator for the result. Its dereference type must be convertible to Polygon_with_holes_2<Kernel, Container> . |
OutputIterator CGAL::intersection | ( | const Polygon_2< Kernel, Container > & | pgn1, |
const Polygon_with_holes_2< Kernel, Container > & | pgn2, | ||
OutputIterator | oi | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the intersection of two polygons and inserts the resulting polygons with holes into a container via an output iterator.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
oi | the output iterator for the result. Its dereference type must be convertible to Polygon_with_holes_2<Kernel, Container> . |
OutputIterator CGAL::intersection | ( | const Polygon_with_holes_2< Kernel, Container > & | pgn1, |
const Polygon_2< Kernel, Container > & | pgn2, | ||
OutputIterator | oi | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the intersection of two polygons and inserts the resulting polygons with holes into a container via an output iterator.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
oi | the output iterator for the result. Its dereference type must be convertible to Polygon_with_holes_2<Kernel, Container> . |
OutputIterator CGAL::intersection | ( | const Polygon_with_holes_2< Kernel, Container > & | pgn1, |
const Polygon_with_holes_2< Kernel, Container > & | pgn2, | ||
OutputIterator | oi | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the intersection of two polygons and inserts the resulting polygons with holes into a container via an output iterator.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
oi | the output iterator for the result. Its dereference type must be convertible to Polygon_with_holes_2<Kernel, Container> . |
OutputIterator CGAL::intersection | ( | const General_polygon_2< ArrTraits > & | pgn1, |
const General_polygon_2< ArrTraits > & | pgn2, | ||
OutputIterator | oi | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the intersection of two general polygons and inserts the resulting general polygons with holes into a container via an output iterator.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
oi | the output iterator for the result. Its dereference type must be convertible to General_polygon_with_holes_2<General_polygon_2<ArrTraits> > . |
ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. OutputIterator CGAL::intersection | ( | const General_polygon_with_holes_2< General_polygon_2< ArrTraits > > & | pgn1, |
const General_polygon_2< ArrTraits > & | pgn2, | ||
OutputIterator | oi | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the intersection of two general polygons and inserts the resulting general polygons with holes into a container via an output iterator.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
oi | the output iterator for the result. Its dereference type must be convertible to General_polygon_with_holes_2<General_polygon_2<ArrTraits> > . |
ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. OutputIterator CGAL::intersection | ( | const General_polygon_2< ArrTraits > & | pgn1, |
const General_polygon_with_holes_2< General_polygon_2< ArrTraits > > & | pgn2, | ||
OutputIterator | oi | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the intersection of two general polygons and inserts the resulting general polygons with holes into a container via an output iterator.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
oi | the output iterator for the result. Its dereference type must be convertible to General_polygon_with_holes_2<General_polygon_2<ArrTraits> > . |
ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. OutputIterator CGAL::intersection | ( | const General_polygon_with_holes_2< Polygon > & | pgn1, |
const General_polygon_with_holes_2< Polygon > & | pgn2, | ||
OutputIterator | oi | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the intersection of two general polygons with holes and inserts the resulting general polygons with holes into a container via an output iterator.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
oi | the output iterator for the result. Its dereference type must be convertible to General_polygon_with_holes_2<Polygon> . |
OutputIterator CGAL::intersection | ( | InputIterator | begin, |
InputIterator | end, | ||
OutputIterator | oi | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
Given a range of polygons (resp.
general polygons) or a range of general polygons with holes (resp. general polygons with holes) computes the intersection of all polygons in the range and inserts the resulting polygons with holes (resp. general polygons with holes) into a container via an output iterator.
begin | the first iterator of the input range. Its value type is either Polygon_2 (resp. General_polygon_2 ) or Polygon_with_holes_2 (resp. General_polygon_with_holes_2 ). |
end | the past-the-end iterator of the input range. Its value type is either Polygon_2 (resp. General_polygon_2 ) or Polygon_with_holes_2 (resp. General_polygon_with_holes_2 ). |
oi | the output iterator for the result. Its dereference type must be convertible to Polygon_with_holes_2 (resp. General_polygons_with_holes_2 ). |
OutputIterator CGAL::intersection | ( | InputIterator1 | begin1, |
InputIterator1 | end1, | ||
InputIterator2 | begin2, | ||
InputIterator2 | end2, | ||
OutputIterator | oi | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
Given a range of polygons (resp.
general polygons) and a range of general polygons with holes (resp. general polygons with holes) computes the intersection of all polygons in the two ranges and inserts the resulting polygons with holes (resp. general polygons with holes) into a container via an output iterator.
begin1 | the first iterator of the 1st input range. Its value type is Polygon_2 (resp. General_polygon_2 ). |
end1 | the past-the-end iterator of the 1st input range. Its value type is Polygon_2 (resp. General_polygon_2 ). |
begin2 | the first iterator of the 2nd input range. Its value type is Polygon_with_holes_2 (resp. General_polygon_with_holes_2 ). |
end2 | the past-the-end iterator of the 2nd input range. Its value type is Polygon_with_holes_2 (resp. General_polygon_with_holes_2 ). |
oi | the output iterator for the result. Its dereference type must be convertible to Polygon_with_holes_2 (resp. General_polygons_with_holes_2 ). |