CGAL 6.2 - 2D Snap Rounding
Loading...
Searching...
No Matches
Vertical slab snap rounding

Classes and functions to round segments or polygons using vertical slab SR method.

Classes

struct  CGAL::Double_grid_snap_rounding_traits_2< InputKernel, ExactKernel, BaseTraits >
 The class Double_grid_snap_rounding_traits_2<InputKernel, ExactKernel, BaseTraits> is a model of the VerticalSlabSnapRoundingTraits_2 concept. More...
 
struct  CGAL::Float_grid_snap_rounding_traits_2< InputKernel, ExactKernel, BaseTraits >
 The class Float_grid_snap_rounding_traits_2<InputKernel, ExactKernel, BaseTraits> is a model of the VerticalSlabSnapRoundingTraits_2 concept. More...
 
struct  CGAL::Integer_grid_snap_rounding_traits_2< InputKernel, ExactKernel, BaseTraits >
 The class Integer_grid_snap_rounding_traits_2<InputKernel, ExactKernel, BaseTraits> is a model of the VerticalSlabSnapRoundingTraits_2 concept. More...
 

Functions

template<class SegmentRange , class OutputPolylineIterator , class NamedParameters = parameters::Default_named_parameters>
void CGAL::vertical_slab_snap_rounding_2 (const SegmentRange &segments, OutputContainer &out, const NamedParameters &np=parameters::default_values())
 subdivides and rounds a range of segments so that they are pairwise disjoint in their interiors.
 
template<class PolygonRange , class OutputContainer , class NamedParameters = parameters::Default_named_parameters>
void CGAL::vertical_slab_snap_rounding_2 (const PolygonRange &polygons, OutputContainer &out, const NamedParameters &np=parameters::default_values())
 subdivides and rounds a range of polygons so that their boundary segments are pairwise disjoint in their interiors.
 

Function Documentation

◆ vertical_slab_snap_rounding_2() [1/2]

template<class PolygonRange , class OutputContainer , class NamedParameters = parameters::Default_named_parameters>
void CGAL::vertical_slab_snap_rounding_2 ( const PolygonRange &  polygons,
OutputContainer &  out,
const NamedParameters &  np = parameters::default_values() 
)

#include <CGAL/vertical_slab_snap_rounding_2.h>

subdivides and rounds a range of polygons so that their boundary segments are pairwise disjoint in their interiors.

If the input polygons are disjoint, the output polygons remain non-overlapping, although they may share vertices or edges. Each output polygon is free of self-intersections but may present pinched sections.

Template Parameters
PolygonRangemodel of a ConstRange whose iterator is model of ForwardIterator and whose value_type is model of CGAL::Polygon_2.
OutputContainermodel of the concept BackInsertionSequence whose value type is model of CGAL::Polygon_2.
NamedParametersa sequence of Named Parameters
Parameters
polygonsthe range of input polygons
outthe output container
npan optional sequence of Named Parameters among the ones listed below
Optional Named Parameters
Warning
a convex input polygon might no longer be convex after rounding.

◆ vertical_slab_snap_rounding_2() [2/2]

template<class SegmentRange , class OutputPolylineIterator , class NamedParameters = parameters::Default_named_parameters>
void CGAL::vertical_slab_snap_rounding_2 ( const SegmentRange &  segments,
OutputContainer &  out,
const NamedParameters &  np = parameters::default_values() 
)

#include <CGAL/vertical_slab_snap_rounding_2.h>

subdivides and rounds a range of segments so that they are pairwise disjoint in their interiors.

The output is a sequence of polylines, where each polyline corresponds to an input segment.

Template Parameters
SegmentRangemodel of a ConstRange whose iterator is model of ForwardIterator and whose value_type is geom_traits::Segment_2, where the type of geom_traits is detailed by np::geom_traits.
OutputContainermodel of the concept BackInsertionSequence whose value type is itself a model of the concepts DefaultConstructible and BackInsertionSequence whose value type is geom_traits::Point_2
NamedParametersa sequence of Named Parameters
Parameters
segmentsthe input segment range
outthe output container
npan optional sequence of Named Parameters among the ones listed below
Optional Named Parameters
  • If set to true, the output polylines are unique pairs of distinct points represented a segment. As a result, the total number of output polylines may differ from the number of input segments.
  • Type: Boolean
  • Default: true