mirror of https://github.com/CGAL/cgal
Simplified API documentation
This commit is contained in:
parent
a8b5dfcdcf
commit
05a98b2c36
|
|
@ -365,7 +365,7 @@ The simplest way to construct a straight skeleton is via the free functions \ccc
|
|||
|
||||
\ccIncludeExampleCode{Straight_skeleton_2/Create_straight_skeleton_2.cpp}
|
||||
|
||||
The input to these functions is the polygon, which can be given as an iterator pair or directly as a \ccc{Polygon_2} object. In the case of the exterior skeleton, a maximum offset must be specfied as well (see the ref manual for details on this max offset parameter).
|
||||
The input to these functions is the polygon, which can be given as an iterator pair or directly as a \ccc{Polygon_2} object. In the case of the exterior skeleton, a maximum offset must be specified as well (see the ref manual for details on this max offset parameter).
|
||||
|
||||
If \ccc{Polygon_with_holes_2} is used, you can pass an instance of it directly to the function creating the interior skeleton, as shown below. Notice that a different header must be included in this case.
|
||||
|
||||
|
|
@ -384,21 +384,21 @@ If you need offset polygons at just one single distance, you can hide away the c
|
|||
\ccIncludeExampleCode{Straight_skeleton_2/Create_skeleton_and_offset_polygons_from_polygon_with_holes_2.cpp}
|
||||
|
||||
If the input polygon has holes, there can be holes in the offset polygons.
|
||||
However, the polygons generated by all the offseting functions shown before
|
||||
do not have any parent-hole reationship computed; that is, they just instances
|
||||
However, the polygons generated by all the offsetting functions shown before
|
||||
do not have any parent-hole relationship computed; that is, they just instances
|
||||
of \ccc{Polygon_2} instead of \ccc{Polygon_with_holes_2}.
|
||||
If \ccc{Polygon_with_holes_2} are available and you need the offseting to produce them, you can call the function \ccc{arrange_offset_polygons_2} passing the result of any of the offseting functions described so far. That function arranges the offset polygons detecting and distributing holes within parents.
|
||||
If \ccc{Polygon_with_holes_2} are available and you need the offsetting to produce them, you can call the function \ccc{arrange_offset_polygons_2} passing the result of any of the offsetting functions described so far. That function arranges the offset polygons detecting and distributing holes within parents.
|
||||
As a shortcut, you can use the function \ccc{create_interior_skeleton_and_offset_polygon_with_holes_2} as shown below:
|
||||
|
||||
\ccIncludeExampleCode{Straight_skeleton_2/Create_skeleton_and_offset_polygons_with_holes_2.cpp}
|
||||
|
||||
\begin{ccAdvanced}
|
||||
Consider an input polygon with parallel edges separated a distance $2*t$. If you produce an offset polygon at distance $t$, these parallel edges will just collapse each other and vanish from the result, keeping the output as a {\em simple polygon}, just like the input. However, if you request an offset poygon at a distance $t-epsilon$, the result will still be a simple polygon but with edges that are so close to each other that will almost intersect.
|
||||
If a kernel with exact constructions is used, the offseting algorithm can guarantee that the output contains only simple polygons. However, if inexact constructions are used the roundoff in the coordinates of the output points will cause parallel edges that {\em almost} collapse-but not so-to become really collinear or even cross each other.
|
||||
Consider an input polygon with parallel edges separated a distance $2*t$. If you produce an offset polygon at distance $t$, these parallel edges will just collapse each other and vanish from the result, keeping the output as a {\em simple polygon}, just like the input. However, if you request an offset polygon at a distance $t-epsilon$, the result will still be a simple polygon but with edges that are so close to each other that will almost intersect.
|
||||
If a kernel with exact constructions is used, the offsetting algorithm can guarantee that the output contains only simple polygons. However, if inexact constructions are used the roundoff in the coordinates of the output points will cause parallel edges that {\em almost} collapse-but not so-to become really collinear or even cross each other.
|
||||
|
||||
Thus, it is neccesary to use a kernel with exact constructions if offset polygons must be simple, yet computing a straight skeleton using that kernel is very slow, much more than computing the offset polygons. To help with this, it is possible to construct the straight skeleton using the recommended kernel \ccc{Exact_predicates_inexact_constructions_kernel}, then convert the skeleton to a different kernel via the function \ccc{convert_straight_skeleton_2} and input the converted skeleton to the offsetting functions.
|
||||
Thus, it is neccessary to use a kernel with exact constructions if offset polygons must be simple, yet computing a straight skeleton using that kernel is very slow, much more than computing the offset polygons. To help with this, it is possible to construct the straight skeleton using the recommended kernel \ccc{Exact_predicates_inexact_constructions_kernel}, then convert the skeleton to a different kernel via the function \ccc{convert_straight_skeleton_2} and input the converted skeleton to the offsetting functions.
|
||||
|
||||
All the offsetting functions that take polygons as input (and create the straight skeleton under the hood) apply that optimization automatically: that is, the output polygons are defined over the same kernel of the input polygons, whatever that is, yet the straight skeleton is constructed with the faster recommended kernel and converted if neccessary.
|
||||
All the offsetting functions that take polygons as input (and create the straight skeleton under the hood) apply that optimization automatically: that is, the output polygons are defined over the same kernel of the input polygons, whatever that is, yet the straight skeleton is constructed with the faster recommended kernel and converted if necessary.
|
||||
|
||||
Notice how some of the examples above use \ccc{Exact_predicates_exact_constructions_kernel}. In all cases, the straight skeleton is constructed using \ccc{Exact_predicates_inexact_constructions_kernel}.
|
||||
|
||||
|
|
|
|||
|
|
@ -23,20 +23,20 @@
|
|||
%% \ccHtmlIndexC[class]{} %% add further index entries
|
||||
\ccDefinition
|
||||
|
||||
The function \ccRefName\ arranges the sequence of \ccc{Polygon_2} objects obtained by \ccc{create_offset_polygons_2} into \ccc{Polygon_with_holes_2} objects by determining geometric parent-hole relationships using a simple algorithm based on the particular characteristics of offset polygons. This function should not be used to arrange aribtrary polygons into polygons with holes unless they meet the requirements specified below.
|
||||
The function \ccRefName\ arranges the sequence of \ccc{Polygon_2} objects obtained by \ccc{create_offset_polygons_2} into \ccc{Polygon_with_holes_2} objects by determining geometric parent-hole relationships using a simple algorithm based on the particular characteristics of offset polygons. This function should not be used to arrange arbitrary polygons into polygons with holes unless they meet the requirements specified below.
|
||||
|
||||
\ccInclude{CGAL/Arrange_offset_polygons_2.h}
|
||||
|
||||
\ccFunction
|
||||
{template<class K, class InputPolygonPtrIterator, class OutputPolygonWithHolesPtrIterator>
|
||||
void arrange_offset_polygons_2 ( InputPolygonPtrIterator aBegin
|
||||
, InputPolygonPtrIterator aEnd
|
||||
, OutputPolygonWithHolesPtrIterator rOut
|
||||
void arrange_offset_polygons_2 ( InputPolygonPtrIterator begin
|
||||
, InputPolygonPtrIterator end
|
||||
, OutputPolygonWithHolesPtrIterator out
|
||||
, K const& k
|
||||
) ;
|
||||
}
|
||||
{determines parent-hole relationships among the polygons given by \ccc{[aBegin,aEnd]} creating
|
||||
\ccc{boost::shared_ptr< Polygon_with_holes_2<K> >} objects added to the output sequence given \ccc{rOut}.
|
||||
{determines parent-hole relationships among the polygons given by \ccc{[begin,end]} creating
|
||||
\ccc{boost::shared_ptr< Polygon_with_holes_2<K> >} objects added to the output sequence given \ccc{out}.
|
||||
A \ccc{CLOCKWISE} oriented polygon $H$ is a hole of a \ccc{COUNTERCLOCKWISE} polygon $P$ IFF at least one vertex of $H$ is \ccc{ON_BOUNDED_SIDE} of $P$.
|
||||
}
|
||||
|
||||
|
|
@ -46,7 +46,7 @@ A \ccc{CLOCKWISE} oriented polygon $H$ is a hole of a \ccc{COUNTERCLOCKWISE} pol
|
|||
\item \ccc{K} is any CGAL kernel
|
||||
\item \ccc{InputPolygonPtrIterator} is an input iterator whose \ccc{value_type} is a \ccc{smart ptr}
|
||||
(such as \ccc{boost::shared_ptr}) whose \ccc{element_type} is \ccc{Polygon_2<K>}.
|
||||
\item \ccc{InputPolygonPtrIterator} is an outut iterator whose \ccc{value_type} is a \ccc{smart ptr}
|
||||
\item \ccc{InputPolygonPtrIterator} is an output iterator whose \ccc{value_type} is a \ccc{smart ptr}
|
||||
(such as \ccc{boost::shared_ptr}) whose \ccc{element_type} is \ccc{Polygon_with_holes_2<K>}.
|
||||
\item The input polygons must be simple.
|
||||
\item The set of input polygons are unique and interior disjoint. That is, given distinct polygons
|
||||
|
|
@ -56,8 +56,8 @@ A \ccc{CLOCKWISE} oriented polygon $H$ is a hole of a \ccc{COUNTERCLOCKWISE} pol
|
|||
|
||||
|
||||
\ccSeeAlso
|
||||
\ccc{CGAL::create_exterior_straight_skeleton_2}\\
|
||||
\ccc{CGAL::Straight_skeleton_builder_2<Gt,Ss>} \\
|
||||
\ccc{create_exterior_straight_skeleton_2}\\
|
||||
\ccc{Straight_skeleton_builder_2<Gt,Ss>} \\
|
||||
|
||||
\end{ccRefFunction}
|
||||
|
||||
|
|
|
|||
|
|
@ -33,9 +33,9 @@ The function \ccRefName\ converts a straight skeleton instantiated using certain
|
|||
, 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 embeeding to the types of the target skeleton.
|
||||
{ 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.
|
||||
|
||||
The first template parameter is the type of the target straight skeleton. This template parameter is not bound to a function argument so it must be explicitely specified.
|
||||
The first template parameter is the type of the target straight skeleton. This template parameter is not bound to a function argument so it must be explicitly specified.
|
||||
}
|
||||
|
||||
\ccSeeAlso
|
||||
|
|
|
|||
|
|
@ -30,13 +30,12 @@ The function \ccRefName\ creates outer offset polygons directly from an input po
|
|||
\ccFunction
|
||||
{template<class FT, class Polygon, class OffsettingK, class SkeletonK>
|
||||
std::vector< boost::shared_ptr<Polygon> >
|
||||
create_exterior_skeleton_and_offset_polygons_2 ( FT offset
|
||||
, Polygon const& poly
|
||||
, OffsettingK ofk
|
||||
= CGAL::Exact_predicates_inexact_constructions_kernel
|
||||
, SkeletonK ssk
|
||||
= CGAL::Exact_predicates_inexact_constructions_kernel
|
||||
) ;
|
||||
create_exterior_skeleton_and_offset_polygons_2
|
||||
( FT offset
|
||||
, Polygon const& poly
|
||||
, OffsettingK ofk = Exact_predicates_inexact_constructions_kernel
|
||||
, SkeletonK ssk = Exact_predicates_inexact_constructions_kernel
|
||||
) ;
|
||||
}
|
||||
{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 \ccc{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 \ccc{create_exterior_straight_skeleton_2} and \ccc{create_polygon_offsets_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.}
|
||||
|
|
@ -49,14 +48,15 @@ std::vector< boost::shared_ptr< Polygon_with_holes_2<OffsettingK> > >
|
|||
create_exterior_skeleton_and_offset_polygons_with_holes_2
|
||||
( FT offset
|
||||
, CGAL::Polygon_2<OffsettingK> poly_with_holes
|
||||
, OffsettingK ofk = CGAL::Exact_predicates_inexact_constructions_kernel
|
||||
, SkeletonK ssk = CGAL::Exact_predicates_inexact_constructions_kernel
|
||||
, OffsettingK ofk = Exact_predicates_inexact_constructions_kernel
|
||||
, SkeletonK ssk = Exact_predicates_inexact_constructions_kernel
|
||||
) ;
|
||||
}
|
||||
{returns a container with all the outer offset polygons {\em with holes} at distance $offset$ of the 2D polygon $poly$.
|
||||
This is equivalent to \ccc{arrange_offset_polygons_2(create_exterior_skeleton_and_offset_polygons_2(offset,poly,okk,ssk))}.}
|
||||
|
||||
|
||||
\ccRequirements
|
||||
|
||||
\begin{enumerate}
|
||||
\item \ccc{OffsettingK} is the CGAL kernel used to instantiate
|
||||
|
|
@ -64,17 +64,17 @@ This is equivalent to \ccc{arrange_offset_polygons_2(create_exterior_skeleton_an
|
|||
the offset polygons.
|
||||
\item \ccc{SkeletonK} is the CGAL kernel used to instantiate
|
||||
\ccc{Straight_skeleton_builder_traits_2<K>} for constructing
|
||||
the striaght skeleton.
|
||||
the straight skeleton.
|
||||
If \ccc{SkeletonK != OffsettingK} the constructed straight skeleton
|
||||
is converted to \ccc{Straight_skeleton_2<OffsettingK>}.
|
||||
\item \ccc{FT} is any number type implicitely convertible to \ccc{OffsettingK::FT}.
|
||||
\item \ccc{FT} is any number type implicitly convertible to \ccc{OffsettingK::FT}.
|
||||
\item \ccc{Straight_skeleton} is \ccc{Straight_skeleton_2<K2>}.
|
||||
If $K != K2$ the straight skeleton is converted to \ccc{Straight_skeleton_2<K>}.
|
||||
\end{enumerate}
|
||||
|
||||
\ccSeeAlso
|
||||
\ccc{CGAL::create_exterior_straight_skeleton_2}\\
|
||||
\ccc{CGAL::Straight_skeleton_builder_2<Gt,Ss>} \\
|
||||
\ccc{create_exterior_straight_skeleton_2}\\
|
||||
\ccc{Straight_skeleton_builder_2<Gt,Ss>} \\
|
||||
|
||||
\end{ccRefFunction}
|
||||
|
||||
|
|
|
|||
|
|
@ -25,16 +25,17 @@
|
|||
|
||||
The function \ccRefName\ creates a straight skeleton in the exterior of a 2D polygon with holes.
|
||||
|
||||
%%\ccInclude{CGAL/Create_straight_skeleton_2.h}
|
||||
\ccInclude{CGAL/Create_straight_skeleton_2.h}
|
||||
|
||||
\ccFunction
|
||||
{template<class FT, class PointIterator, class K>
|
||||
boost::shared_ptr< Straight_skeleton_2<K> >
|
||||
create_exterior_straight_skeleton_2 ( FT max_offset
|
||||
, PointIterator vertices_begin
|
||||
, PointIterator vertices_eEnd
|
||||
, K const& k = CGAL::Exact_predicates_inexact_constructions_kernel
|
||||
) ;
|
||||
create_exterior_straight_skeleton_2
|
||||
( FT max_offset
|
||||
, PointIterator vertices_begin
|
||||
, PointIterator vertices_end
|
||||
, K const& k = Exact_predicates_inexact_constructions_kernel
|
||||
) ;
|
||||
}
|
||||
{returns a new \ccc{Straight_skeleton_2<K>} in the {\em limited exterior} of the 2D polygon $P$ given by the point sequence \ccc{[vertices_begin,vertices_end]}.
|
||||
The skeleton in the {\em limited exterior} of $P$ is the skeleton in the interior of a polygon $Q$ with $P$ as its hole and a rectangular frame $F$ as outer boundary.
|
||||
|
|
@ -47,7 +48,7 @@ $d$ is a margin sufficiently large to allow an outer offset at dinstance \ccc{ma
|
|||
boost::shared_ptr< Straight_skeleton_2<K> >
|
||||
create_exterior_straight_skeleton_2 ( FT max_offset
|
||||
, Polygon P
|
||||
, K const& k = CGAL::Exact_predicates_inexact_constructions_kernel
|
||||
, K const& k = Exact_predicates_inexact_constructions_kernel
|
||||
) ;
|
||||
}
|
||||
{returns a new \ccc{Straight_skeleton_2<K>} in the {\em limited exterior} of the 2D polygon $P$ .
|
||||
|
|
@ -57,17 +58,18 @@ $d$ is a margin sufficiently large to allow an outer offset at dinstance \ccc{ma
|
|||
}
|
||||
|
||||
\ccHeading{Requirements}
|
||||
|
||||
\begin{enumerate}
|
||||
\item \ccc{K} is any CGAL kernel.
|
||||
\item \ccc{PointIterator::value_type} is equivalent to \ccc{K2::Point_2}.
|
||||
A cartesian converter is used to convert from \ccc{K2::Point_2} to \ccc{K::Point_2}
|
||||
\item \ccc{Polygon} is \ccc{CGAL::Polygon_2<K>} or a standard container of \ccc{K2::Point_2} elements
|
||||
\item \ccc{Polygon} is \ccc{Polygon_2<K>} or a standard container of \ccc{K2::Point_2} elements
|
||||
\end{enumerate}
|
||||
|
||||
|
||||
\ccSeeAlso
|
||||
\ccc{CGAL::create_interior_straight_skeleton_2}\\
|
||||
\ccc{CGAL::Straight_skeleton_builder_2<Gt,Ss>} \\
|
||||
\ccc{create_interior_straight_skeleton_2}\\
|
||||
\ccc{Straight_skeleton_builder_2<Gt,Ss,Visitor>} \\
|
||||
|
||||
\end{ccRefFunction}
|
||||
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ A temporary straight skeleton is constructed in the interior of the input polygo
|
|||
{template<class FT, class Polygon, class OffsettingK, class SkeletonK>
|
||||
std::vector< boost::shared_ptr<Polygon> >
|
||||
create_interior_skeleton_and_offset_polygons_2 ( FT offset
|
||||
, Polygon const& polyn
|
||||
, Polygon const& poly
|
||||
, OffsettingK ofk
|
||||
= CGAL::Exact_predicates_inexact_constructions_kernel
|
||||
, SkeletonK ssk
|
||||
|
|
@ -108,10 +108,10 @@ This is equivalent to \ccc{arrange_offset_polygons_2(create_interior_skeleton_an
|
|||
the offset polygons.
|
||||
\item \ccc{SkeletonK} is the CGAL kernel used to instantiate
|
||||
\ccc{Straight_skeleton_builder_traits_2<K>} for constructing
|
||||
the striaght skeleton.
|
||||
the straight skeleton.
|
||||
If \ccc{SkeletonK != OffsettingK} the constructed straight skeleton
|
||||
is converted to \ccc{Straight_skeleton_2<OffsettingK>}.
|
||||
\item \ccc{FT} is any number type implicitely convertible to \ccc{OffsettingK::FT}.
|
||||
\item \ccc{FT} is any number type implicitly convertible to \ccc{OffsettingK::FT}.
|
||||
\item \ccc{Straight_skeleton} is \ccc{Straight_skeleton_2<K2>}.
|
||||
If $K != K2$ the straight skeleton is converted to \ccc{Straight_skeleton_2<K>}.
|
||||
\item \ccc{HoleIterator::value_type} and \ccc{Polygon} are \ccc{CGAL::Polygon_2<OffsettingK>}
|
||||
|
|
@ -119,8 +119,8 @@ This is equivalent to \ccc{arrange_offset_polygons_2(create_interior_skeleton_an
|
|||
\end{enumerate}
|
||||
|
||||
\ccSeeAlso
|
||||
\ccc{CGAL::create_exterior_straight_skeleton_2}\\
|
||||
\ccc{CGAL::Straight_skeleton_builder_2<Gt,Ss>} \\
|
||||
\ccc{create_exterior_straight_skeleton_2}\\
|
||||
\ccc{Straight_skeleton_builder_2<Gt,Ss>} \\
|
||||
|
||||
\end{ccRefFunction}
|
||||
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ create_interior_straight_skeleton_2 ( PointIterator outer_contour_vertices_begin
|
|||
, PointIterator outer_contour_vertices_end
|
||||
, HoleIterator holes_begin
|
||||
, HoleIterator holes_end
|
||||
, K const& k = CGAL::Exact_predicates_inexact_constructions_kernel
|
||||
, K const& k = Exact_predicates_inexact_constructions_kernel
|
||||
) ;
|
||||
}
|
||||
{returns a new \ccc{Straight_skeleton_2<K>} in the interior of the 2D polygon with holes whose outer boundary is given by the point sequence \ccc{[outer_contour_vertices_begin,outer_contour_vertices_end]}
|
||||
|
|
@ -46,7 +46,7 @@ and its holes given by \ccc{[holes_begin,holes_end]}.
|
|||
boost::shared_ptr< Straight_skeleton_2<K> >
|
||||
create_interior_straight_skeleton_2 ( PointIterator outer_contour_vertices_begin
|
||||
, PointIterator outer_contour_vertices_end
|
||||
, K const& k = CGAL::Exact_predicates_inexact_constructions_kernel
|
||||
, K const& k = Exact_predicates_inexact_constructions_kernel
|
||||
) ;
|
||||
}
|
||||
{returns a new \ccc{Straight_skeleton_2<K>} in the interior of the 2D polygon whose outer boundary is given by the point sequence \ccc{[outer_contour_vertices_begin,outer_contour_vertices_end]}.
|
||||
|
|
@ -56,7 +56,7 @@ create_interior_straight_skeleton_2 ( PointIterator outer_contour_vertices_begin
|
|||
{template<class Polygon, class K>
|
||||
boost::shared_ptr< Straight_skeleton_2<K> >
|
||||
create_interior_straight_skeleton_2 ( Polygon const& outer_contour
|
||||
, K const& k = CGAL::Exact_predicates_inexact_constructions_kernel
|
||||
, K const& k = Exact_predicates_inexact_constructions_kernel
|
||||
) ;
|
||||
}
|
||||
{returns a new \ccc{Straight_skeleton_2<K>} in the interior of the 2D polygon \ccc{outer_contour}.}
|
||||
|
|
@ -66,7 +66,7 @@ create_interior_straight_skeleton_2 ( Polygon const& outer_contour
|
|||
\item \ccc{K} is any CGAL kernel.
|
||||
\item \ccc{PointIterator::value_type} is equivalent to \ccc{K2::Point_2}.
|
||||
A cartesian converter is used to convert from \ccc{K2::Point_2} to \ccc{K::Point_2}
|
||||
\item \ccc{HoleIterator::value_type} and \ccc{Polygon} are \ccc{CGAL::Polygon_2<K>}
|
||||
\item \ccc{HoleIterator::value_type} and \ccc{Polygon} are \ccc{Polygon_2<K>}
|
||||
or a standard container of \ccc{K2::Point_2} elements
|
||||
\end{enumerate}
|
||||
|
||||
|
|
@ -75,16 +75,16 @@ create_interior_straight_skeleton_2 ( Polygon const& outer_contour
|
|||
\ccFunction
|
||||
{template<class K>
|
||||
boost::shared_ptr< Straight_skeleton_2<K> >
|
||||
create_interior_straight_skeleton_2 ( CGAL::Polygon_with_holes<K> poly_with_holes
|
||||
, K const& k = CGAL::Exact_predicates_inexact_constructions_kernel
|
||||
create_interior_straight_skeleton_2 ( Polygon_with_holes<K> poly_with_holes
|
||||
, K const& k = Exact_predicates_inexact_constructions_kernel
|
||||
) ;
|
||||
}
|
||||
{returns a new \ccc{Straight_skeleton_2<K>} in the interior of the 2D polygon with holes \ccc{poly_with_holes}.}
|
||||
|
||||
|
||||
\ccSeeAlso
|
||||
\ccc{CGAL::create_exterior_straight_skeleton_2}\\
|
||||
\ccc{CGAL::Straight_skeleton_builder_2<Gt,Ss>} \\
|
||||
\ccc{create_exterior_straight_skeleton_2}\\
|
||||
\ccc{Straight_skeleton_builder_2<Gt,Ss>} \\
|
||||
|
||||
\end{ccRefFunction}
|
||||
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ The function \ccRefName\ creates a straight skeleton in the interior of a 2D pol
|
|||
std::vector< boost::shared_ptr<Polygon> >
|
||||
create_offset_polygons_2 ( FT offset
|
||||
, Straight_skeleton const& s,
|
||||
, K const& k = CGAL::Exact_predicates_inexact_constructions_kernel
|
||||
, K const& k = Exact_predicates_inexact_constructions_kernel
|
||||
) ;
|
||||
}
|
||||
{returns a container with all the offset polygons at distance $offset$ obtained from
|
||||
|
|
@ -42,19 +42,19 @@ the straight skeleton $s$.
|
|||
|
||||
\begin{enumerate}
|
||||
\item \ccc{K} is any CGAL kernel.
|
||||
\item \ccc{FT} is any number type implicitely convertible to \ccc{K::FT}.
|
||||
\item \ccc{FT} is any number type implicitly convertible to \ccc{K::FT}.
|
||||
\item \ccc{Straight_skeleton} is \ccc{Straight_skeleton_2<K2>}.
|
||||
If $K != K2$ the straight skeleton is converted to \ccc{Straight_skeleton_2<K>}.
|
||||
\item \ccc{Polygon} is a model of \ccc{VertexContainer_2}.
|
||||
If this first template parameter is ommitted, \ccc{CGAL::Polygon_2<K>} is used.
|
||||
If this first template parameter is omitted, \ccc{Polygon_2} is used.
|
||||
\end{enumerate}
|
||||
|
||||
|
||||
\ccSeeAlso
|
||||
\ccc{CGAL::create_interior_skeleton_2}\\
|
||||
\ccc{CGAL::create_exterior_skeleton_2}\\
|
||||
\ccc{CGAL::create_interior_skeleton_and_offset_polygons_2}\\
|
||||
\ccc{CGAL::create_exterior_skeleton_and_offset_polygons_2}\\
|
||||
\ccc{create_interior_skeleton_2}\\
|
||||
\ccc{create_exterior_skeleton_2}\\
|
||||
\ccc{create_interior_skeleton_and_offset_polygons_2}\\
|
||||
\ccc{create_exterior_skeleton_and_offset_polygons_2}\\
|
||||
|
||||
\end{ccRefFunction}
|
||||
|
||||
|
|
|
|||
|
|
@ -48,14 +48,14 @@ the straight skeleton.
|
|||
\ccRefIdfierPage{CGAL::Straight_skeleton_builder_2<Gt,Ss,Visitor>}\\
|
||||
\ccRefIdfierPage{CGAL::Straight_skeleton_items_converter_2<SrcSs,TgtSs,NTConverter>}\\
|
||||
\ccRefIdfierPage{CGAL::Straight_skeleton_converter_2<SrcSs,TgtSs,ItemsConverter>}\\
|
||||
\ccRefIdfierPage{CGAL::Convert_straight_skeleton_2<TgtSs,SrcSs>}\\
|
||||
\ccRefIdfierPage{CGAL::Dummy_straight_skeleton_builder_2_visitor<Ss>}\\
|
||||
\ccRefIdfierPage{CGAL::convert_straight_skeleton_2<TgtSs,SrcSs>}\\
|
||||
\ccRefIdfierPage{CGAL::create_offset_polygons_2}\\
|
||||
\ccRefIdfierPage{CGAL::arrange_offset_polygons_2}\\
|
||||
\ccRefIdfierPage{CGAL::create_interior_skeleton_and_offset_polygons_2}\\
|
||||
\ccRefIdfierPage{CGAL::create_exterior_skeleton_and_offset_polygons_2}\\
|
||||
\ccRefIdfierPage{CGAL::Polygon_offset_builder_traits_2<Kernel>}\\
|
||||
\ccRefIdfierPage{CGAL::Polygon_offset_builder_2<Ss,Gt,Container>}\\
|
||||
\ccRefIdfierPage{CGAL::Dummy_straight_skeleton_builder_2_visitor<Ss>}\\
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@
|
|||
\input{Straight_skeleton_2_ref/StraightSkeletonItemsConverter_2.tex}
|
||||
\input{Straight_skeleton_2_ref/StraightSkeletonBuilder_2_Visitor.tex}
|
||||
\input{Straight_skeleton_2_ref/StraightSkeletonBuilderTraits_2.tex}
|
||||
\input{Straight_skeleton_2_ref/PolygonOffsetBuilderTraits_2.tex}
|
||||
\input{Straight_skeleton_2_ref/VertexContainer_2.tex}
|
||||
\input{Straight_skeleton_2_ref/Create_interior_straight_skeleton_2.tex}
|
||||
\input{Straight_skeleton_2_ref/Create_exterior_straight_skeleton_2.tex}
|
||||
|
|
|
|||
Loading…
Reference in New Issue