|
template<class K , class InputPolygonPtrIterator , class OutputPolygonWithHolesPtrIterator > |
bool | arrange_offset_polygons_2 (InputPolygonPtrIterator begin, InputPolygonPtrIterator end, OutputPolygonWithHolesPtrIterator out, const K &k) |
| The function arrange_offset_polygons_2() arranges the sequence of 2D polygons obtained by create_offset_polygons_2() into 2D polygons with holes by determining geometric parent-hole relationships using a simple algorithm based on the particular characteristics of offset polygons.
|
|
template<class InputIterator , class Traits > |
std::optional< typename Traits::FT > | compute_outer_frame_margin (InputIterator first, InputIterator beyond, typename Traits::FT offset, const Traits &traits=Default_traits) |
| computes the separation required between a polygon and the outer frame used to obtain an exterior skeleton suitable for the computation of outer offset polygons at a given distance.
|
|
template<typename OfKPolygon , typename FT , typename StraightSkeleton , typename OfK > |
std::vector< std::shared_ptr< OfKPolygon > > | create_offset_polygons_2 (FT offset, const StraightSkeleton &ss, OfK k=Exact_predicates_inexact_constructions_kernel()) |
| returns a container with the offset polygons at distance offset obtained from the straight skeleton ss .
|
|
template<typename OfKPolygon , typename FT , typename InKPolygon , typename HoleIterator , typename OfK , typename SsK > |
std::vector< std::shared_ptr< OfKPolygon > > | create_interior_skeleton_and_offset_polygons_2 (FT offset, const InKPolygon &outer_boundary, HoleIterator holes_begin, HoleIterator holes_end, OfK ofk=CGAL::Exact_predicates_inexact_constructions_kernel, SsK ssk=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| returns a container with all the inner offset polygons at distance offset of a 2D polygon with holes.
|
|
template<typename OfKPolygon , typename FT , typename InKPolygon , typename OfK , typename SsK > |
std::vector< std::shared_ptr< OfKPolygon > > | create_interior_skeleton_and_offset_polygons_2 (FT offset, const InKPolygon &poly, OfK ofk=CGAL::Exact_predicates_inexact_constructions_kernel, SsK ssk=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| returns a container with all the inner offset polygons at distance offset of the 2D polygon poly .
|
|
template<typename OfKPolygon , typename FT , typename InKPolygon , typename OfK , typename SsK > |
std::vector< std::shared_ptr< OfKPolygon > > | create_exterior_skeleton_and_offset_polygons_2 (FT offset, const InKPolygon &poly, OfK ofk=Exact_predicates_inexact_constructions_kernel(), SsK ssk=Exact_predicates_inexact_constructions_kernel()) |
| returns a container with all the outer offset polygons at distance offset of the 2D polygon poly .
|
|
template<class OfKPolygon , class FT , class InKPolygon , class OfK , class SsK > |
std::vector< std::shared_ptr< OfKPolygon > > | create_interior_skeleton_and_offset_polygons_with_holes_2 (FT offset, const InKPolygon &poly_with_holes, OfK ofk=CGAL::Exact_predicates_inexact_constructions_kernel, SsK ssk=CGAL::Exact_predicates_inexact_constructions_kernel) |
| returns a container with all the inner offset polygons with holes at distance offset of the 2D polygon with holes poly_with_holes .
|
|
template<class OfKPolygon , class FT , class InKPolygon , class OfK , class SsK > |
std::vector< std::shared_ptr< OfKPolygon > > | create_exterior_skeleton_and_offset_polygons_with_holes_2 (FT offset, const InKPolygon &poly_with_holes, OfK ofk=Exact_predicates_inexact_constructions_kernel(), SsK ssk=Exact_predicates_inexact_constructions_kernel()) |
| returns a container with all the outer offset polygons with holes at distance offset of the 2D polygon poly_with_holes .
|
|
template<typename PointIterator , typename HoleIterator , typename SsK > |
std::shared_ptr< Straight_skeleton_2< SsK > > | create_interior_straight_skeleton_2 (PointIterator outer_contour_vertices_begin, PointIterator outer_contour_vertices_end, HoleIterator holes_begin, HoleIterator holes_end, SsK k=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| creates a straight skeleton in the interior of the 2D polygon with holes.
|
|
template<typename PointIterator , typename SsK > |
std::shared_ptr< Straight_skeleton_2< SsK > > | create_interior_straight_skeleton_2 (PointIterator outer_contour_vertices_begin, PointIterator outer_contour_vertices_end, SsK k=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| creates a straight skeleton in the interior of the 2D polygon.
|
|
template<typename Polygon , typename SsK > |
std::shared_ptr< Straight_skeleton_2< SsK > > | create_interior_straight_skeleton_2 (const Polygon &polygon, SsK k=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| creates a straight skeleton in the interior of the 2D polygon polygon .
|
|
template<typename FT , typename PointIterator , typename SsK > |
std::shared_ptr< Straight_skeleton_2< SsK > > | create_exterior_straight_skeleton_2 (FT max_offset, PointIterator vertices_begin, PointIterator vertices_end, SsK k=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| creates a straight skeleton in the exterior of a 2D polygon with holes.
|
|
template<typename FT , typename Polygon , typename SsK > |
std::shared_ptr< Straight_skeleton_2< SsK > > | create_exterior_straight_skeleton_2 (FT max_offset, const Polygon &P, SsK k=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| creates a straight skeleton in the exterior of a 2D polygon with holes.
|
|
template<typename OfKPolygon , typename FT , typename InKPolygon , typename InKWeights , typename HoleIterator , typename OfK , typename SsK > |
std::vector< std::shared_ptr< OfKPolygon > > | create_interior_weighted_skeleton_and_offset_polygons_2 (FT offset, const InKPolygon &outer_boundary, const InKWeights &outer_boundary_weights, HoleIterator holes_begin, HoleIterator holes_end, HoleWeightsIterator holes_weights_begin, HoleWeightsIterator holes_weights_end, OfK ofk=CGAL::Exact_predicates_inexact_constructions_kernel, SsK ssk=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| returns a container with all the inner offset polygons at distance offset of a 2D polygon with holes.
|
|
template<typename OfKPolygon , typename FT , typename InKPolygon , typename InKWeights , typename OfK , typename SsK > |
std::vector< std::shared_ptr< OfKPolygon > > | create_interior_weighted_skeleton_and_offset_polygons_2 (FT offset, const InKPolygon &poly, const InKWeights &weights, OfK ofk=CGAL::Exact_predicates_inexact_constructions_kernel, SsK ssk=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| returns a container with all the inner offset polygons at distance offset of the 2D polygon poly .
|
|
template<typename OfKPolygon , typename FT , typename InKPolygon , typename InKWeights , typename OfK , typename SsK > |
std::vector< std::shared_ptr< OfKPolygon > > | create_exterior_weighted_skeleton_and_offset_polygons_2 (FT offset, const InKPolygon &poly, const InKWeights &weights, OfK ofk=Exact_predicates_inexact_constructions_kernel(), SsK ssk=Exact_predicates_inexact_constructions_kernel()) |
| returns a container with all the outer offset polygons at distance offset of the 2D polygon poly .
|
|
template<class OfKPolygon , class FT , class InKPolygon , class OfK , class SsK > |
std::vector< std::shared_ptr< OfKPolygon > > | create_interior_weighted_skeleton_and_offset_polygons_with_holes_2 (FT offset, const InKPolygon &poly_with_holes, OfK ofk=CGAL::Exact_predicates_inexact_constructions_kernel, SsK ssk=CGAL::Exact_predicates_inexact_constructions_kernel) |
| returns a container with all the inner offset polygons with holes at distance offset of the 2D polygon with holes poly_with_holes .
|
|
template<class OfKPolygon , class FT , class InKPolygon , class OfK , class SsK > |
std::vector< std::shared_ptr< OfKPolygon > > | create_exterior_weighted_skeleton_and_offset_polygons_with_holes_2 (FT offset, const InKPolygon &poly_with_holes, OfK ofk=Exact_predicates_inexact_constructions_kernel(), SsK ssk=Exact_predicates_inexact_constructions_kernel()) |
| returns a container with all the outer offset polygons with holes at distance offset of the 2D polygon poly_with_holes .
|
|
template<typename PointIterator , typename HoleIterator , typename WeightIterator , typename HoleWeightsIterator , typename SsK > |
std::shared_ptr< Straight_skeleton_2< SsK > > | create_interior_weighted_straight_skeleton_2 (PointIterator outer_contour_vertices_begin, PointIterator outer_contour_vertices_end, HoleIterator holes_begin, HoleIterator holes_end, WeightIterator outer_contour_weights_begin, WeightIterator outer_contour_weights_end, HoleWeightsIterator holes_weights_begin, HoleWeightsIterator holes_weights_end, SsK k=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| creates a weighted straight skeleton in the interior of a 2D polygon with holes.
|
|
template<typename PointIterator , typename WeightIterator , typename SsK > |
std::shared_ptr< Straight_skeleton_2< SsK > > | create_interior_weighted_straight_skeleton_2 (PointIterator outer_contour_vertices_begin, PointIterator outer_contour_vertices_end, WeightIterator outer_contour_weights_begin, WeightIterator outer_contour_weights_end, SsK k=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| creates a weighted straight skeleton in the interior of a 2D polygon without holes.
|
|
template<typename InKPolygon , typename InKWeights , typename SsK > |
std::shared_ptr< Straight_skeleton_2< SsK > > | create_interior_weighted_straight_skeleton_2 (const InKPolygon &polygon, const InKWeights &weights, SsK k=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| creates a weighted straight skeleton in the interior of a 2D polygon, possibly with holes.
|
|
template<typename FT , typename PointIterator , typename WeightIterator , typename SsK > |
std::shared_ptr< Straight_skeleton_2< SsK > > | create_exterior_weighted_straight_skeleton_2 (FT max_offset, PointIterator vertices_begin, PointIterator vertices_end, WeightIterator weights_begin, WeightIterator weights_end, SsK k=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| creates a weighted straight skeleton in the limited exterior of the 2D polygon P given by the point sequence [vertices_begin,vertices_end[ .
|
|
template<typename FT , typename Polygon , typename Weights , typename SsK > |
std::shared_ptr< Straight_skeleton_2< SsK > > | create_exterior_weighted_straight_skeleton_2 (FT max_offset, const InKPolygon &P, const InKWeights &weights, SsK k=CGAL::Exact_predicates_inexact_constructions_kernel()) |
| creates a weighted straight skeleton in the exterior of a 2D polygon (with holes).
|
|
template<typename Polygon , typename FT , typename PolygonMesh , typename NamedParameters = parameters::Default_named_parameters> |
bool | extrude_skeleton (const Polygon &polygon, PolygonMesh &out, const NamedParameters &np=parameters::default_values()) |
| constructs the straight skeleton-based extrusion of a polygon with holes.
|
|
template<class Target_skeleton , class Source_skeleton , class Items_converter > |
std::shared_ptr< Target_skeleton > | convert_straight_skeleton_2 (Source_skeleton const &s, Items_converted const &ic=Items_converter()) |
| returns a new straight skeleton data structure with the same combinatorial and geometric data as s using the items converter ic to convert the geometric embedding to the types of the target skeleton.
|
|