CGAL 6.1 - 2D Polygon Repair
Loading...
Searching...
No Matches

Functions

template<class Kernel , class Container , class Rule = Even_odd_rule>
Multipolygon_with_holes_2< Kernel, ContainerCGAL::Polygon_repair::repair (const Polygon_2< Kernel, Container > &p, Rule=Rule())
 repairs polygon p using the given rule
 
template<class Kernel , class Container , class Rule = Even_odd_rule>
Multipolygon_with_holes_2< Kernel, ContainerCGAL::Polygon_repair::repair (const Polygon_with_holes_2< Kernel, Container > &p, Rule=Rule())
 repairs polygon with holes p using the given rule
 
template<class Kernel , class Container , class Rule = Even_odd_rule>
Multipolygon_with_holes_2< Kernel, ContainerCGAL::Polygon_repair::repair (const Multipolygon_with_holes_2< Kernel, Container > &p, Rule=Rule())
 repairs multipolygon with holes p using the given rule
 
template<typename Kernel , typename Container >
Multipolygon_with_holes_2< Kernel, ContainerCGAL::Polygon_repair::join (const Multipolygon_with_holes_2< Kernel, Container > &pa)
 computes the union of all polygons with holes in p
 
template<typename PA , typename PB , typename Kernel = Default, typename Container = Default>
Multipolygon_with_holes_2< Kernel, ContainerCGAL::Polygon_repair::join (const PA &pa, const PB &pb, const Kernel &=Default(), const Container &=Default())
 computes the union of two polygonal domains
 
template<typename Kernel , typename Container >
Multipolygon_with_holes_2< Kernel, ContainerCGAL::Polygon_repair::intersect (const Multipolygon_with_holes_2< Kernel, Container > &p)
 computes the intersection of all polygons with holes in p
 
template<typename PA , typename PB , typename Kernel = Default, typename Container = Default>
Multipolygon_with_holes_2< Kernel, ContainerCGAL::Polygon_repair::intersect (const PA &pa, const PB &pb, const Kernel &=Default(), const Container &=Default())
 Computes the intersection of two polygonal domains.
 

Function Documentation

◆ intersect() [1/2]

template<typename Kernel , typename Container >
Multipolygon_with_holes_2< Kernel, Container > CGAL::Polygon_repair::intersect ( const Multipolygon_with_holes_2< Kernel, Container > &  p)

#include <CGAL/Polygon_repair/repair.h>

computes the intersection of all polygons with holes in p

Template Parameters
Kernelparameter of the input and output polygons. Must be model of ConstrainedDelaunayTriangulationTraits_2
Containerparameter of the input and output polygons
Precondition
Each polygon with hole must be free of self-intersections

◆ intersect() [2/2]

template<typename PA , typename PB , typename Kernel = Default, typename Container = Default>
Multipolygon_with_holes_2< Kernel, Container > CGAL::Polygon_repair::intersect ( const PA &  pa,
const PB &  pb,
const Kernel = Default(),
const Container = Default() 
)

#include <CGAL/Polygon_repair/repair.h>

Computes the intersection of two polygonal domains.

Template Parameters
Kernelparameter of the output polygon. Must be model of ConstrainedDelaunayTriangulationTraits_2
Containerparameter of the input and output polygons
PAmust be Polygon_2<Kernel, Container>, or Polygon_with_holes_2<Kernel, Container>, or Multipolygon_with_holes_2<Kernel, Container>
PBmust be Polygon_2<Kernel, Container>, or Polygon_with_holes_2<Kernel, Container>, or Multipolygon_with_holes_2<Kernel, Container>
Precondition
The polygons pa and pb must be free of self-intersections

◆ join() [1/2]

template<typename Kernel , typename Container >
Multipolygon_with_holes_2< Kernel, Container > CGAL::Polygon_repair::join ( const Multipolygon_with_holes_2< Kernel, Container > &  pa)

#include <CGAL/Polygon_repair/repair.h>

computes the union of all polygons with holes in p

Template Parameters
Kernelparameter of the input and output polygons. Must be model of ConstrainedDelaunayTriangulationTraits_2
Containerparameter of the input and output polygons
Precondition
Each polygon with hole must be free of self-intersections
Examples
Polygon_repair/repair_union_intersect_2.cpp.

◆ join() [2/2]

template<typename PA , typename PB , typename Kernel = Default, typename Container = Default>
Multipolygon_with_holes_2< Kernel, Container > CGAL::Polygon_repair::join ( const PA &  pa,
const PB &  pb,
const Kernel = Default(),
const Container = Default() 
)

#include <CGAL/Polygon_repair/repair.h>

computes the union of two polygonal domains

Template Parameters
Kernelparameter of the output polygons. Must be model of ConstrainedDelaunayTriangulationTraits_2
Containerparameter of the input and output polygons
PAmust be Polygon_2<Kernel, Container>, or Polygon_with_holes_2<Kernel, Container>, or Multipolygon_with_holes_2<Kernel, Container>
PBmust be Polygon_2<Kernel, Container>, or Polygon_with_holes_2<Kernel, Container>, or Multipolygon_with_holes_2<Kernel, Container>
Precondition
The polygons pa and pb must be free of self-intersections

◆ repair() [1/3]

template<class Kernel , class Container , class Rule = Even_odd_rule>
Multipolygon_with_holes_2< Kernel, Container > CGAL::Polygon_repair::repair ( const Multipolygon_with_holes_2< Kernel, Container > &  p,
Rule  = Rule() 
)

#include <CGAL/Polygon_repair/repair.h>

repairs multipolygon with holes p using the given rule

Template Parameters
Kernelparameter of the input and output polygons. Must be model of ConstrainedDelaunayTriangulationTraits_2
Containerparameter of the input and output polygons
Rulemay be any rule
Precondition
If the rule is the Union_rule or Non_zero_rule, each polygon with hole must be free of self-intersections

◆ repair() [2/3]

template<class Kernel , class Container , class Rule = Even_odd_rule>
Multipolygon_with_holes_2< Kernel, Container > CGAL::Polygon_repair::repair ( const Polygon_2< Kernel, Container > &  p,
Rule  = Rule() 
)

#include <CGAL/Polygon_repair/repair.h>

repairs polygon p using the given rule

Template Parameters
Kernelparameter of the input and output polygons. Must be model of ConstrainedDelaunayTriangulationTraits_2
Containerparameter of the input and output polygons
Rulemust be Even_odd_rule or Non_zero_rule
Examples
Polygon_repair/repair_multipolygon_2.cpp, Polygon_repair/repair_non_zero_polygon_2.cpp, Polygon_repair/repair_polygon_2.cpp, and Polygon_repair/repair_union_intersect_2.cpp.

◆ repair() [3/3]

template<class Kernel , class Container , class Rule = Even_odd_rule>
Multipolygon_with_holes_2< Kernel, Container > CGAL::Polygon_repair::repair ( const Polygon_with_holes_2< Kernel, Container > &  p,
Rule  = Rule() 
)

#include <CGAL/Polygon_repair/repair.h>

repairs polygon with holes p using the given rule

Template Parameters
Kernelparameter of the input and output polygons. Must be model of ConstrainedDelaunayTriangulationTraits_2
Containerparameter of the input and output polygons
Rulemust be Even_odd_rule or Non_zero_rule