CGAL 5.3.2 - 2D Regularized Boolean Set-Operations
|
There are several overloaded function templates called join()
that compute the union of two polygons.
A function template in this group has one of the two following signatures:
bool join(const Type1& pgn1, const Type2& pgn2, Type3& res);
bool join(const Type1& pgn1, const Type2& pgn2, Type3& res, const GpsTraits& traits);
Parameters
The types Type1
, Type2
, and `Type3, of the parameters must be convertible to the types specified in a row in the table below, respectively.
CGAL::complement()
CGAL::do_intersect()
CGAL::intersection()
CGAL::difference()
CGAL::symmetric_difference()
Functions | |
template<typename Kernel , typename Container > | |
bool | CGAL::join (const Polygon_2< Kernel, Container > &pgn1, const Polygon_2< Kernel, Container > &pgn2, General_polygon_with_holes_2< Polygon_2< Kernel, Container > > &res) |
computes the union of two polygons. More... | |
template<typename Kernel , typename Container > | |
bool | CGAL::join (const Polygon_2< Kernel, Container > &pgn1, const Polygon_with_holes_2< Kernel, Container > &pgn2, General_polygon_with_holes_2< Polygon_2< Kernel, Container > > &res) |
computes the union of two polygons. More... | |
template<typename Kernel , typename Container > | |
bool | CGAL::join (const Polygon_with_holes_2< Kernel, Container > &pgn2, const Polygon_2< Kernel, Container > &pgn1, General_polygon_with_holes_2< Polygon_2< Kernel, Container > > &res) |
computes the union of two polygons. More... | |
template<typename Kernel , typename Container > | |
bool | CGAL::join (const Polygon_with_holes_2< Kernel, Container > &pgn2, const Polygon_with_holes_2< Kernel, Container > &pgn1, General_polygon_with_holes_2< Polygon_2< Kernel, Container > > &res) |
computes the union of two polygons with holes. More... | |
template<typename ArrTraits > | |
bool | CGAL::join (const General_polygon_2< ArrTraits > &pgn1, const General_polygon_2< ArrTraits > &pgn2, General_polygon_with_holes_2< General_polygon_2< ArrTraits > > &res) |
computes the union of two general polygons. More... | |
template<typename ArrTraits > | |
bool | CGAL::join (const General_polygon_2< ArrTraits > &pgn1, const General_polygon_with_holes_2< General_polygon_2< ArrTraits > > &pgn2, General_polygon_with_holes_2< General_polygon_2< ArrTraits > > &res) |
computes the union of two general polygons. More... | |
template<typename ArrTraits > | |
bool | CGAL::join (const General_polygon_with_holes_2< General_polygon_2< ArrTraits > > &pgn2, const General_polygon_2< ArrTraits > &pgn1, General_polygon_with_holes_2< General_polygon_2< ArrTraits > > &res) |
computes the union of two general polygons. More... | |
template<typename Polygon > | |
bool | CGAL::join (const General_polygon_with_holes_2< Polygon > &pgn1, const General_polygon_with_holes_2< Polygon > &pgn2, General_polygon_with_holes_2< Polygon > &res) |
computes the union of two general polygons with holes. More... | |
template<typename InputIterator , typename OutputIterator > | |
OutputIterator | CGAL::join (InputIterator begin, InputIterator end, OutputIterator oi) |
Given a range of polygons (resp. More... | |
template<typename InputIterator1 , typename InputIterator2 , typename OutputIterator > | |
OutputIterator | CGAL::join (InputIterator1 begin1, InputIterator1 end1, InputIterator2 begin2, InputIterator2 end2, OutputIterator oi) |
Given a range of polygons (resp. More... | |
template<typename Kernel , typename Container , typename GpsTraits > | |
bool | CGAL::join (const Polygon_2< Kernel, Container > &pgn1, const Polygon_2< Kernel, Container > &pgn2, General_polygon_with_holes_2< Polygon_2< Kernel, Container > > &res, const GpsTraits &traits) |
computes the union of two polygons. More... | |
template<typename Kernel , typename Container , typename GpsTraits > | |
bool | CGAL::join (const Polygon_2< Kernel, Container > &pgn1, const Polygon_with_holes_2< Kernel, Container > &pgn2, General_polygon_with_holes_2< Polygon_2< Kernel, Container > > &res, const GpsTraits &traits) |
computes the union of two polygons. More... | |
template<typename Kernel , typename Container , typename GpsTraits > | |
bool | CGAL::join (const Polygon_with_holes_2< Kernel, Container > &pgn2, const Polygon_2< Kernel, Container > &pgn1, General_polygon_with_holes_2< Polygon_2< Kernel, Container > > &res, const GpsTraits &traits) |
computes the union of two polygons. More... | |
template<typename Kernel , typename Container , typename GpsTraits > | |
bool | CGAL::join (const Polygon_with_holes_2< Kernel, Container > &pgn2, const Polygon_with_holes_2< Kernel, Container > &pgn1, General_polygon_with_holes_2< Polygon_2< Kernel, Container > > &res, const GpsTraits &traits) |
computes the union of two polygons with holes. More... | |
template<typename ArrTraits , typename GpsTraits > | |
bool | CGAL::join (const General_polygon_2< ArrTraits > &pgn1, const General_polygon_2< ArrTraits > &pgn2, General_polygon_with_holes_2< General_polygon_2< ArrTraits > > &res, const GpsTraits &traits) |
computes the union of two general polygons. More... | |
template<typename ArrTraits , typename GpsTraits > | |
bool | CGAL::join (const General_polygon_2< ArrTraits > &pgn1, const General_polygon_with_holes_2< General_polygon_2< ArrTraits > > &pgn2, General_polygon_with_holes_2< General_polygon_2< ArrTraits > > &res, const GpsTraits &traits) |
computes the union of two general polygons. More... | |
template<typename ArrTraits , typename GpsTraits > | |
bool | CGAL::join (const General_polygon_with_holes_2< General_polygon_2< ArrTraits > > &pgn2, const General_polygon_2< ArrTraits > &pgn1, General_polygon_with_holes_2< General_polygon_2< ArrTraits > > &res, const GpsTraits &traits) |
computes the union of two general polygons. More... | |
template<typename Polygon , typename GpsTraits > | |
bool | CGAL::join (const General_polygon_with_holes_2< Polygon > &pgn1, const General_polygon_with_holes_2< Polygon > &pgn2, General_polygon_with_holes_2< Polygon > &res, const GpsTraits &traits) |
computes the union of two general polygons with holes. More... | |
template<typename InputIterator , typename OutputIterator , typename GpsTraits > | |
OutputIterator | CGAL::join (InputIterator begin, InputIterator end, OutputIterator oi, const GpsTraits &traits) |
Given a range of polygons (resp. More... | |
template<typename InputIterator1 , typename InputIterator2 , typename OutputIterator , typename GpsTraits > | |
OutputIterator | CGAL::join (InputIterator1 begin1, InputIterator1 end1, InputIterator2 begin2, InputIterator2 end2, OutputIterator oi, const GpsTraits &traits) |
Given a range of polygons (resp. More... | |
bool CGAL::join | ( | const Polygon_2< Kernel, Container > & | pgn1, |
const Polygon_2< Kernel, Container > & | pgn2, | ||
General_polygon_with_holes_2< Polygon_2< Kernel, Container > > & | res | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two polygons.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
true
if the two input polygons overlap. bool CGAL::join | ( | const Polygon_2< Kernel, Container > & | pgn1, |
const Polygon_with_holes_2< Kernel, Container > & | pgn2, | ||
General_polygon_with_holes_2< Polygon_2< Kernel, Container > > & | res | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two polygons.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
true
if the two input polygons overlap. bool CGAL::join | ( | const Polygon_with_holes_2< Kernel, Container > & | pgn2, |
const Polygon_2< Kernel, Container > & | pgn1, | ||
General_polygon_with_holes_2< Polygon_2< Kernel, Container > > & | res | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two polygons.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
true
if the two input polygons overlap. bool CGAL::join | ( | const Polygon_with_holes_2< Kernel, Container > & | pgn2, |
const Polygon_with_holes_2< Kernel, Container > & | pgn1, | ||
General_polygon_with_holes_2< Polygon_2< Kernel, Container > > & | res | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two polygons with holes.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
true
if the two input polygons overlap. bool CGAL::join | ( | const General_polygon_2< ArrTraits > & | pgn1, |
const General_polygon_2< ArrTraits > & | pgn2, | ||
General_polygon_with_holes_2< General_polygon_2< ArrTraits > > & | res | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two general polygons.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
true
if the two input polygons overlap. ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. bool CGAL::join | ( | const General_polygon_2< ArrTraits > & | pgn1, |
const General_polygon_with_holes_2< General_polygon_2< ArrTraits > > & | pgn2, | ||
General_polygon_with_holes_2< General_polygon_2< ArrTraits > > & | res | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two general polygons.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
true
if the two input polygons overlap. ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. bool CGAL::join | ( | const General_polygon_with_holes_2< General_polygon_2< ArrTraits > > & | pgn2, |
const General_polygon_2< ArrTraits > & | pgn1, | ||
General_polygon_with_holes_2< General_polygon_2< ArrTraits > > & | res | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two general polygons.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
true
if the two input polygons overlap. ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. bool CGAL::join | ( | const General_polygon_with_holes_2< Polygon > & | pgn1, |
const General_polygon_with_holes_2< Polygon > & | pgn2, | ||
General_polygon_with_holes_2< Polygon > & | res | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two general polygons with holes.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
true
if the two input polygons overlap. OutputIterator CGAL::join | ( | 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 union 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::join | ( | 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 union 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 ). |
bool CGAL::join | ( | const Polygon_2< Kernel, Container > & | pgn1, |
const Polygon_2< Kernel, Container > & | pgn2, | ||
General_polygon_with_holes_2< Polygon_2< Kernel, Container > > & | res, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two polygons.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
traits | a traits object. |
true
if the two input polygons overlap. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. bool CGAL::join | ( | const Polygon_2< Kernel, Container > & | pgn1, |
const Polygon_with_holes_2< Kernel, Container > & | pgn2, | ||
General_polygon_with_holes_2< Polygon_2< Kernel, Container > > & | res, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two polygons.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
traits | a traits object. |
true
if the two input polygons overlap. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. bool CGAL::join | ( | const Polygon_with_holes_2< Kernel, Container > & | pgn2, |
const Polygon_2< Kernel, Container > & | pgn1, | ||
General_polygon_with_holes_2< Polygon_2< Kernel, Container > > & | res, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two polygons.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
traits | a traits object. |
true
if the two input polygons overlap. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. bool CGAL::join | ( | const Polygon_with_holes_2< Kernel, Container > & | pgn2, |
const Polygon_with_holes_2< Kernel, Container > & | pgn1, | ||
General_polygon_with_holes_2< Polygon_2< Kernel, Container > > & | res, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two polygons with holes.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
traits | a traits object. |
true
if the two input polygons overlap. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. bool CGAL::join | ( | const General_polygon_2< ArrTraits > & | pgn1, |
const General_polygon_2< ArrTraits > & | pgn2, | ||
General_polygon_with_holes_2< General_polygon_2< ArrTraits > > & | res, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two general polygons.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
traits | a traits object. |
true
if the two input polygons overlap. ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. bool CGAL::join | ( | const General_polygon_2< ArrTraits > & | pgn1, |
const General_polygon_with_holes_2< General_polygon_2< ArrTraits > > & | pgn2, | ||
General_polygon_with_holes_2< General_polygon_2< ArrTraits > > & | res, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two general polygons.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
traits | a traits object. |
true
if the two input polygons overlap. ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. bool CGAL::join | ( | const General_polygon_with_holes_2< General_polygon_2< ArrTraits > > & | pgn2, |
const General_polygon_2< ArrTraits > & | pgn1, | ||
General_polygon_with_holes_2< General_polygon_2< ArrTraits > > & | res, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two general polygons.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
traits | a traits object. |
true
if the two input polygons overlap. ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. bool CGAL::join | ( | const General_polygon_with_holes_2< Polygon > & | pgn1, |
const General_polygon_with_holes_2< Polygon > & | pgn2, | ||
General_polygon_with_holes_2< Polygon > & | res, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
computes the union of two general polygons with holes.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
res | the resulting union of pgn1 and pgn2 . |
traits | a traits object. |
true
if the two input polygons overlap. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. OutputIterator CGAL::join | ( | InputIterator | begin, |
InputIterator | end, | ||
OutputIterator | oi, | ||
const GpsTraits & | traits | ||
) |
#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 union 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 ). |
traits | a traits object. |
GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. OutputIterator CGAL::join | ( | InputIterator1 | begin1, |
InputIterator1 | end1, | ||
InputIterator2 | begin2, | ||
InputIterator2 | end2, | ||
OutputIterator | oi, | ||
const GpsTraits & | traits | ||
) |
#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 union 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 ). |
traits | a traits object. |
GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
.