The function create_exterior_skeleton_and_offset_polygons_2 creates outer offset polygons directly from an input polygon via a temporarily created straight skeleton.
#include <CGAL/create_offset_polygons_2.h>
template<class FT, class Polygon, class OffsettingK, class SkeletonK> | ||||
std::vector< boost::shared_ptr<Polygon> > | ||||
| ||||
returns a container with all the outer offset polygons at distance offset of the 2D polygon poly. A temporary straight skeleton is constructed in the limited exterior of the input polygon to obtain the offsets. The construction of this skeleton is the most expensive operation, therefore, to construct offsets at more than one single distance, use the separate functions create_exterior_straight_skeleton_2 and create_offset_polygons_2 instead. The exterior skeleton is limited by an outer rectangular frame placed at a margin sufficiently large to allow the offset polygons to be constructed. |
#include <CGAL/create_offset_polygons_from_polygon_with_holes_2.h>
template<class FT, class OffsettingK, class SkeletonK> | ||||
std::vector< boost::shared_ptr< Polygon_with_holes_2<OffsettingK> > > | ||||
| ||||
returns a container with all the outer offset polygons with holes at distance offset of the 2D polygon poly. This is equivalent to arrange_offset_polygons_2(create_exterior_skeleton_and_offset_polygons_2(offset,poly,okk,ssk)). |