CGAL 6.3 - 2D Regularized Boolean Set-Operations
Loading...
Searching...
No Matches
CGAL::Polygon_set_2< Kernel, Container, Dcel > Class Template Reference

#include <CGAL/Polygon_set_2.h>

Inherits from

CGAL::General_polygon_set_2< Gps_segment_traits_2< Kernel, Container > >.

Definition

template<typename Kernel, typename Container, typename Dcel>
class CGAL::Polygon_set_2< Kernel, Container, Dcel >

The class Polygon_set_2 represents sets of linear polygons with holes.

The first two template parameters (Kernel and Container) are used to instantiate the type Polygon_2<Kernel,Container>. This type is used to represent the outer boundary of every set member and the boundaries of all holes of every set member.

The third template parameter Dcel must be instantiated with a model of the concept GeneralPolygonSetDcel. It is instantiated by default with the type Gps_default_dcel<Traits>. You can override this default, with a different DCEL class, typically an extension of the Gps_default_dcel class template. Overriding the default is necessary only if you intend to obtain the underlying internal arrangement and process it further.

See also
General_polygon_set_2
Gps_segment_traits_2
Examples
Boolean_set_operations_2/draw_polygon_set.cpp, and Boolean_set_operations_2/sequence.cpp.

Additional Inherited Members

typedef unspecified_type Traits_2
 the traits class in use.
typedef unspecified_type Polygon_2
 the general polygon type.
typedef unspecified_type Polygon_with_holes_2
 the general polygon with holes type.
typedef unspecified_type Size
 number of polygons with holes size type.
typedef unspecified_type Arrangement_2
 the arrangement type used internally.
 General_polygon_set_2 ()
 default constructor; constructs an empty set of polygons gps represented by an empty arrangement.
OutputIterator polygons_with_holes (OutputIterator out)
 obtains the polygons with holes represented by gps.
Size number_of_polygons_with_holes () const
 returns the total number of general polygons represented by gps.
bool is_empty () const
 returns true if gps represents an empty set.
bool is_plane () const
 returns true if gps represents the entire plane.
Gps_segment_traits_2< Kernel, Container > & traits () const
 obtains an instance of the traits.
const Arrangement_2arrangement () const
 obtains the arrangement data structure that internally represents the general-polygon set.
void clear ()
 clears gps.
void insert (Polygon_2 &pgn)
 inserts pgn into gps.
void complement ()
 computes the complement of gps.
void intersection (const General_polygon_set_2 &other)
 computes the intersection of gps and other.
void join (const General_polygon_set_2 &other)
 computes the union of gps and other.
void difference (const General_polygon_set_2 &other)
 computes the difference between gps and other.
void symmetric_difference (const General_polygon_set_2 &other)
 computes the symmetric difference between gps and other.
bool do_intersect (const General_polygon_set_2 &other)
 returns true if gps and other intersect in their interior, and false otherwise.
bool locate (const Point_2 &p, Polygon_with_holes_2 &pgn)
 obtains a polygon with holes that contains the query point p, if exists, through pgn, and returns true.
Oriented_side oriented_side (const Point_2 &q)
 returns either the constant ON_ORIENTED_BOUNDARY, ON_POSITIVE_SIDE, or ON_NEGATIVE_SIDE, iff p lies on the boundary, properly on the positive side, or properly on the negative side of gps respectively.
bool is_valid () const
 returns true if gps represents a valid point set.