CGAL 5.6.1 - 2D Regularized Boolean Set-Operations
|
There are several overloaded function templates called do_intersect()
that determine whether the interior of two or more polygons intersect.
A function template in this group that accepts two input polygons has one of the following signatures:
1.1. | bool do_intersect(const Type1& pgn1, const Type2& pgn2, UsePolylines = Tag_true()); |
1.2. | bool do_intersect(const Type1& pgn1, const Type2& pgn2); |
2. | bool do_intersect(const Type1& pgn1, const Type2& pgn2, const GpsTraits& traits); |
There are also function templates that accept one or two ranges of input polygons:
3.1. | bool do_intersect(InputIterator begin, InputIterator end, UsePolylines = Tag_true()); |
3.2. | bool do_intersect(InputIterator begin, InputIterator end); |
4. | bool do_intersect(InputIterator begin, InputIterator end, const GpsTraits& traits); |
5.1. | bool do_intersect(InputIterator1 begin1, InputIterator1 end1, InputIterator2 begin2, InputIterator2 end2, UsePolylines = Tag_true()); |
5.2. | bool do_intersect(InputIterator1 begin1, InputIterator1 end1, InputIterator2 begin2, InputIterator2 end2); |
6. | bool do_intersect(InputIterator1 begin1, InputIterator1 end1, InputIterator2 begin2, InputIterator2 end2, const GpsTraits& traits); |
UsePolylines | determines whether the boundary of the input polygons are treated as a cyclic sequence of single ( \(x\)-monotone) segments or as a cyclic sequence of ( \(x\)-monotone) polylines. If substituted with CGAL::Tag_true , which is the default, the input polygons are converted to general polygons bounded by polylines before the operation is actually performed. If substituted with CGAL::Tag_false , the input polygons are used as is. Refer to Traits Selection for more information. |
Type1
and Type2
of the parameters of InputIterator1::value_type
and InputIterator2::value_type
must be convertible to the types specified in a row in the table below, respectively.InputIterator::value_type
in (3.1.) above must be convertible to either Polygon_2
or Polygon_with_holes_2
.InputIterator::value_type
in (3.2.) above must be convertible to either General_polygon_2
or General_polygon_with_holes_2
.pgn1,pgn2 | the input polygons. |
(end,begin) | a range of input polygons. |
(end1,begin1) | the first range of input polygons. |
(end2,begin2) | the second range of input polygons. |
traits | an optional traits object. |
CGAL::complement()
CGAL::intersection()
CGAL::join()
CGAL::difference()
CGAL::symmetric_difference()
Functions | |
template<typename Kernel , typename Container > | |
bool | CGAL::do_intersect (const Polygon_2< Kernel, Container > &pgn1, const Polygon_2< Kernel, Container > &pgn2) |
determines whether two polygons intersect in their interior. More... | |
template<typename Kernel , typename Container , typename UsePolylines > | |
bool | CGAL::do_intersect (const Polygon_2< Kernel, Container > &pgn1, const Polygon_2< Kernel, Container > &pgn2, UsePolylines=Tag_true()) |
determines whether two polygons intersect in their interior. More... | |
template<typename Kernel , typename Container > | |
bool | CGAL::do_intersect (const Polygon_2< Kernel, Container > &pgn1, const Polygon_with_holes_2< Kernel, Container > &pgn2) |
determines whether two polygons intersect in their interior. More... | |
template<typename Kernel , typename Container , typename UsePolylines > | |
bool | CGAL::do_intersect (const Polygon_2< Kernel, Container > &pgn1, const Polygon_with_holes_2< Kernel, Container > &pgn2, UsePolylines=Tag_true()) |
determines whether two polygons intersect in their interior. More... | |
template<typename Kernel , typename Container > | |
bool | CGAL::do_intersect (const Polygon_with_holes_2< Kernel, Container > &pgn1, const Polygon_2< Kernel, Container > &pgn2) |
determines whether two polygons intersect in their interior. More... | |
template<typename Kernel , typename Container , typename UsePolylines > | |
bool | CGAL::do_intersect (const Polygon_with_holes_2< Kernel, Container > &pgn1, const Polygon_2< Kernel, Container > &pgn2, UsePolylines=Tag_true()) |
determines whether two polygons intersect in their interior. More... | |
template<typename Kernel , typename Container > | |
bool | CGAL::do_intersect (const Polygon_with_holes_2< Kernel, Container > &pgn1, const Polygon_with_holes_2< Kernel, Container > &pgn2) |
determines whether two polygons with holes intersect in their interior. More... | |
template<typename Kernel , typename Container , typename UsePolylines > | |
bool | CGAL::do_intersect (const Polygon_with_holes_2< Kernel, Container > &pgn1, const Polygon_with_holes_2< Kernel, Container > &pgn2, UsePolylines=Tag_true()) |
determines whether two polygons with holes intersect in their interior. More... | |
template<typename ArrTraits > | |
bool | CGAL::do_intersect (const General_polygon_2< ArrTraits > &pgn1, const General_polygon_2< ArrTraits > &pgn2) |
determines whether two general polygons intersect in their interior. More... | |
template<typename ArrTraits > | |
bool | CGAL::do_intersect (const General_polygon_2< ArrTraits > &pgn1, const General_polygon_with_holes_2< General_polygon_2< ArrTraits >> &pgn2) |
determines whether two general polygons intersect in their interior. More... | |
template<typename ArrTraits > | |
bool | CGAL::do_intersect (const General_polygon_with_holes_2< General_polygon_2< ArrTraits >> &pgn1, const General_polygon_2< ArrTraits > &pgn2) |
determines whether two general polygons intersect in their interior. More... | |
template<typename Polygon > | |
bool | CGAL::do_intersect (const General_polygon_with_holes_2< Polygon > &pgn1, const General_polygon_with_holes_2< Polygon > &pgn2) |
determines whether two general polygons with holes intersect in their interior. More... | |
template<typename InputIterator > | |
bool | CGAL::do_intersect (InputIterator begin, InputIterator end) |
Given a range of polygons or a range of polygons with holes (resp. More... | |
template<typename InputIterator , typename UsePolylines > | |
bool | CGAL::do_intersect (InputIterator begin, InputIterator end, UsePolylines=Tag_true()) |
Given a range of polygons or a range of polygons with holes (resp. More... | |
template<typename InputIterator1 , typename InputIterator2 > | |
bool | CGAL::do_intersect (InputIterator1 begin1, InputIterator1 end1, InputIterator2 begin2, InputIterator2 end2) |
Given a range of polygons (resp. More... | |
template<typename InputIterator1 , typename InputIterator2 , typename UsePolylines > | |
bool | CGAL::do_intersect (InputIterator1 begin1, InputIterator1 end1, InputIterator2 begin2, InputIterator2 end2, UsePolylines=Tag_true()) |
Given a range of polygons (resp. More... | |
template<typename Kernel , typename Container , typename GpsTraits > | |
bool | CGAL::do_intersect (const Polygon_2< Kernel, Container > &pgn1, const Polygon_2< Kernel, Container > &pgn2, const GpsTraits &traits) |
determines whether two polygons intersect in their interior. More... | |
template<typename Kernel , typename Container , typename GpsTraits > | |
bool | CGAL::do_intersect (const Polygon_2< Kernel, Container > &pgn1, const Polygon_with_holes_2< Kernel, Container > &pgn2, const GpsTraits &traits, const GpsTraits &traits) |
determines whether two polygons intersect in their interior. More... | |
template<typename Kernel , typename Container , typename GpsTraits > | |
bool | CGAL::do_intersect (const Polygon_with_holes_2< Kernel, Container > &pgn1, const Polygon_2< Kernel, Container > &pgn2, const GpsTraits &traits) |
determines whether two polygons intersect in their interior. More... | |
template<typename Kernel , typename Container , typename GpsTraits > | |
bool | CGAL::do_intersect (const Polygon_with_holes_2< Kernel, Container > &pgn1, const Polygon_with_holes_2< Kernel, Container > &pgn2, const GpsTraits &traits) |
determines whether two polygons with holes intersect in their interior. More... | |
template<typename ArrTraits , typename GpsTraits > | |
bool | CGAL::do_intersect (const General_polygon_2< ArrTraits > &pgn1, const General_polygon_2< ArrTraits > &pgn2, const GpsTraits &traits) |
determines whether two general polygons intersect in their interior. More... | |
template<typename ArrTraits , typename GpsTraits > | |
bool | CGAL::do_intersect (const General_polygon_2< ArrTraits > &pgn1, const General_polygon_with_holes_2< General_polygon_2< ArrTraits >> &pgn2, const GpsTraits &traits) |
determines whether two general polygons intersect in their interior. More... | |
template<typename ArrTraits , typename GpsTraits > | |
bool | CGAL::do_intersect (const General_polygon_with_holes_2< General_polygon_2< ArrTraits >> &pgn1, const General_polygon_2< ArrTraits > &pgn2, const GpsTraits &traits) |
determines whether two general polygons intersect in their interior. More... | |
template<typename Polygon , typename GpsTraits > | |
bool | CGAL::do_intersect (const General_polygon_with_holes_2< Polygon > &pgn1, const General_polygon_with_holes_2< Polygon > &pgn2, const GpsTraits &traits) |
determines whether two general polygons with holes intersect in their interior. More... | |
template<typename InputIterator , typename GpsTraits > | |
bool | CGAL::do_intersect (InputIterator begin, InputIterator end, const GpsTraits &traits) |
Given a range of polygons or a range of polygons with holes (resp. More... | |
template<typename InputIterator1 , typename InputIterator2 , typename GpsTraits > | |
bool | CGAL::do_intersect (InputIterator1 begin1, InputIterator1 end1, InputIterator2 begin2, InputIterator2 end2, const GpsTraits &traits) |
Given a range of polygons (resp. More... | |
bool CGAL::do_intersect | ( | const Polygon_2< Kernel, Container > & | pgn1, |
const Polygon_2< Kernel, Container > & | pgn2 | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two polygons intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. bool CGAL::do_intersect | ( | const Polygon_2< Kernel, Container > & | pgn1, |
const Polygon_2< Kernel, Container > & | pgn2, | ||
UsePolylines | = Tag_true() |
||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two polygons intersect in their interior.
UsePolylines | determines whether the boundaries of pgn1 and pgn2 are treated as cyclic sequences of single ( \(x\)-monotone) segments or as a cyclic sequences of ( \(x\)-monotone) polylines. If substituted with CGAL::Tag_true , which is the default, pgn1 and pgn2 are converted to general polygons, bounded by polylines before the operation is actually performed. If substituted with CGAL::Tag_false , pgn1 and pgn2 are used as is. Refer to Traits Selection for more information. |
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. bool CGAL::do_intersect | ( | const Polygon_2< Kernel, Container > & | pgn1, |
const Polygon_with_holes_2< Kernel, Container > & | pgn2 | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two polygons intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. bool CGAL::do_intersect | ( | const Polygon_2< Kernel, Container > & | pgn1, |
const Polygon_with_holes_2< Kernel, Container > & | pgn2, | ||
UsePolylines | = Tag_true() |
||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two polygons intersect in their interior.
UsePolylines | determines whether the boundaries of pgn1 and pgn2 are treated as cyclic sequences of single ( \(x\)-monotone) segments or as a cyclic sequences of ( \(x\)-monotone) polylines. If substituted with CGAL::Tag_true , which is the default, pgn1 and pgn2 are converted to a general polygon and a general polygon with holes, respectively, bounded by polylines before the operation is actually performed. If substituted with CGAL::Tag_false , pgn1 and pgn2 are used as is. Refer to Traits Selection for more information. |
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. bool CGAL::do_intersect | ( | const Polygon_with_holes_2< Kernel, Container > & | pgn1, |
const Polygon_2< Kernel, Container > & | pgn2 | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two polygons intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. bool CGAL::do_intersect | ( | const Polygon_with_holes_2< Kernel, Container > & | pgn1, |
const Polygon_2< Kernel, Container > & | pgn2, | ||
UsePolylines | = Tag_true() |
||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two polygons intersect in their interior.
UsePolylines | determines whether the boundaries of pgn1 and pgn2 are treated as cyclic sequences of single ( \(x\)-monotone) segments or as a cyclic sequences of ( \(x\)-monotone) polylines. If substituted with CGAL::Tag_true , which is the default, pgn1 and pgn2 are converted to a general polygon with holes and a general polygon, respectively, bounded by polylines before the operation is actually performed. If substituted with CGAL::Tag_false , pgn1 and pgn2 are used as is. Refer to Traits Selection for more information. |
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. bool CGAL::do_intersect | ( | const Polygon_with_holes_2< Kernel, Container > & | pgn1, |
const Polygon_with_holes_2< Kernel, Container > & | pgn2 | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two polygons with holes intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. bool CGAL::do_intersect | ( | const Polygon_with_holes_2< Kernel, Container > & | pgn1, |
const Polygon_with_holes_2< Kernel, Container > & | pgn2, | ||
UsePolylines | = Tag_true() |
||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two polygons with holes intersect in their interior.
UsePolylines | determines whether the boundaries of pgn1 and pgn2 are treated as cyclic sequences of single ( \(x\)-monotone) segments or as a cyclic sequences of ( \(x\)-monotone) polylines. If substituted with CGAL::Tag_true , which is the default, pgn1 and pgn2 are converted to general polygon with holes , bounded by polylines before the operation is actually performed. If substituted with CGAL::Tag_false , pgn1 and pgn2 are used as is. Refer to Traits Selection for more information. |
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. bool CGAL::do_intersect | ( | const General_polygon_2< ArrTraits > & | pgn1, |
const General_polygon_2< ArrTraits > & | pgn2 | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two general polygons intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. bool CGAL::do_intersect | ( | const General_polygon_2< ArrTraits > & | pgn1, |
const General_polygon_with_holes_2< General_polygon_2< ArrTraits >> & | pgn2 | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two general polygons intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. bool CGAL::do_intersect | ( | const General_polygon_with_holes_2< General_polygon_2< ArrTraits >> & | pgn1, |
const General_polygon_2< ArrTraits > & | pgn2 | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two general polygons intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. bool CGAL::do_intersect | ( | const General_polygon_with_holes_2< Polygon > & | pgn1, |
const General_polygon_with_holes_2< Polygon > & | pgn2 | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two general polygons with holes intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. bool CGAL::do_intersect | ( | InputIterator | begin, |
InputIterator | end | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
Given a range of polygons or a range of polygons with holes (resp.
a range of general polygons or a range of general polygons with holes) determines whether the open polygons (resp. general polygons) in the range have a common point.
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 ). |
true
if the pairwise intersections of all open polygons or polygons with holes (resp. general polygons or general polygons with holes) in the range [*begin,*end) overlap, and false
otherwise. bool CGAL::do_intersect | ( | InputIterator | begin, |
InputIterator | end, | ||
UsePolylines | = Tag_true() |
||
) |
#include <CGAL/Boolean_set_operations_2.h>
Given a range of polygons or a range of polygons with holes (resp.
a range of general polygons or a range of general polygons with holes) determines whether the open polygons (resp. general polygons) in the range have a common point.
UsePolylines | determines whether the boundaries of the polygons in the input range are treated as cyclic sequences of single ( \(x\)-monotone) segments or as a cyclic sequences of ( \(x\)-monotone) polylines. If substituted with CGAL::Tag_true , which is the default, the input polygons are converted to general polygon with holes , bounded by polylines before the operation is actually performed. If substituted with CGAL::Tag_false , pgn1 and pgn2 are used as is. Refer to Traits Selection for more information. |
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 ). |
true
if the pairwise intersections of all open polygons or polygons with holes (resp. general polygons or general polygons with holes) in the range [*begin,*end) overlap, and false
otherwise. bool CGAL::do_intersect | ( | InputIterator1 | begin1, |
InputIterator1 | end1, | ||
InputIterator2 | begin2, | ||
InputIterator2 | end2 | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
Given a range of polygons (resp.
general polygons) and a range of polygons with holes (resp. general polygons with holes) determines whether the open polygons (resp. general polygons) in the two ranges have a common point.
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 ). |
true
if the pairwise intersections of all open polygons (resp. general polygons) and polygons with holes (resp. general polygons with holes) in the ranges [*begin1,*end1) and [*begin2,*end2), respectively, overlap, and false
otherwise. bool CGAL::do_intersect | ( | InputIterator1 | begin1, |
InputIterator1 | end1, | ||
InputIterator2 | begin2, | ||
InputIterator2 | end2, | ||
UsePolylines | = Tag_true() |
||
) |
#include <CGAL/Boolean_set_operations_2.h>
Given a range of polygons (resp.
general polygons) and a range of polygons with holes (resp. general polygons with holes) determines whether the open polygons (resp. general polygons) in the two ranges have a common point.
UsePolylines | determines whether the boundaries of the polygons in the input ranges are treated as cyclic sequences of single ( \(x\)-monotone) segments or as a cyclic sequences of ( \(x\)-monotone) polylines. If substituted with CGAL::Tag_true , which is the default, the input polygons are converted to general polygon with holes , bounded by polylines before the operation is actually performed. If substituted with CGAL::Tag_false , pgn1 and pgn2 are used as is. Refer to Traits Selection for more information. |
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 ). |
true
if the pairwise intersections of all open polygons (resp. general polygons) and polygons with holes (resp. general polygons with holes) in the ranges [*begin1,*end1) and [*begin2,*end2), respectively, overlap, and false
otherwise. bool CGAL::do_intersect | ( | const Polygon_2< Kernel, Container > & | pgn1, |
const Polygon_2< Kernel, Container > & | pgn2, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two polygons intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
traits | a traits object. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. bool CGAL::do_intersect | ( | const Polygon_2< Kernel, Container > & | pgn1, |
const Polygon_with_holes_2< Kernel, Container > & | pgn2, | ||
const GpsTraits & | traits, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two polygons intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
traits | a traits object. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. bool CGAL::do_intersect | ( | const Polygon_with_holes_2< Kernel, Container > & | pgn1, |
const Polygon_2< Kernel, Container > & | pgn2, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two polygons intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
traits | a traits object. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. bool CGAL::do_intersect | ( | const Polygon_with_holes_2< Kernel, Container > & | pgn1, |
const Polygon_with_holes_2< Kernel, Container > & | pgn2, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two polygons with holes intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
traits | a traits object. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. bool CGAL::do_intersect | ( | const General_polygon_2< ArrTraits > & | pgn1, |
const General_polygon_2< ArrTraits > & | pgn2, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two general polygons intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
traits | a traits object. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. bool CGAL::do_intersect | ( | const General_polygon_2< ArrTraits > & | pgn1, |
const General_polygon_with_holes_2< General_polygon_2< ArrTraits >> & | pgn2, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two general polygons intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
traits | a traits object. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. bool CGAL::do_intersect | ( | const General_polygon_with_holes_2< General_polygon_2< ArrTraits >> & | pgn1, |
const General_polygon_2< ArrTraits > & | pgn2, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two general polygons intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
traits | a traits object. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. ArrTraits
must be a model of the concept ArrangementDirectionalXMonotoneTraits_2
. bool CGAL::do_intersect | ( | const General_polygon_with_holes_2< Polygon > & | pgn1, |
const General_polygon_with_holes_2< Polygon > & | pgn2, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
determines whether two general polygons with holes intersect in their interior.
pgn1 | the 1st input polygon. |
pgn2 | the 2nd input polygon. |
traits | a traits object. |
true
if pgn1
and pgn2
intersect in their interior and false
otherwise. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. bool CGAL::do_intersect | ( | InputIterator | begin, |
InputIterator | end, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
Given a range of polygons or a range of polygons with holes (resp.
a range of general polygons or a range of general polygons with holes) determines whether the open polygons (resp. general polygons) in the range have a common point.
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 ). |
traits | a traits object. |
true
if the pairwise intersections of all open polygons or polygons with holes (resp. general polygons or general polygons with holes) in the range [*begin,*end) overlap, and false
otherwise. GpsTraits
must be a model of the concept GeneralPolygonSetTraits_2
. bool CGAL::do_intersect | ( | InputIterator1 | begin1, |
InputIterator1 | end1, | ||
InputIterator2 | begin2, | ||
InputIterator2 | end2, | ||
const GpsTraits & | traits | ||
) |
#include <CGAL/Boolean_set_operations_2.h>
Given a range of polygons (resp.
general polygons) and a range of polygons with holes (resp. general polygons with holes) determines whether the open polygons (resp. general polygons) in the two ranges have a common point.
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 ). |
traits | a traits object. |
true
if the pairwise intersections of all open polygons (resp. general polygons) and polygons with holes (resp. general polygons with holes) in the ranges [*begin1,*end1) and [*begin2,*end2), respectively, overlap, and false
otherwise.