This commit is contained in:
Andreas Fabri 2012-10-13 21:21:08 +00:00
parent 92aa57669b
commit ff18ac6735
3 changed files with 44 additions and 45 deletions

View File

@ -26,7 +26,7 @@ The first parameter requires one of the following exact kernels:
`Homogeneous`, `Simple_homogeneous` `Homogeneous`, `Simple_homogeneous`
parametrized with `Gmpz`, `leda_integer` or any other number type parametrized with `Gmpz`, `leda_integer` or any other number type
modeling \f$\mathbb{Z}\f$, or `Cartesian`, `Simple_cartesian` parametrized with modeling \f$\mathbb{Z}\f$, or `Cartesian`, `Simple_cartesian` parametrized with
`Gmpq`, `leda_rational`,`Quotient<Gmpz>` or any other number `Gmpq`, `leda_rational`, `Quotient<Gmpz>` or any other number
type modeling \f$\mathbb{Q}\f$. type modeling \f$\mathbb{Q}\f$.
The second parameter and the third parameter are for future considerations. The second parameter and the third parameter are for future considerations.
@ -48,7 +48,7 @@ structure.
A Nef polyhedron `N` can be visualized in an open GL window. The A Nef polyhedron `N` can be visualized in an open GL window. The
output operator is defined in the file output operator is defined in the file
`CGAL/IO/Nef_-poly-hedron_2_-Win-dow_-stream.h`. `CGAL/IO/Nef_polyhedron_2_Window-stream.h`.
### Implementation ### ### Implementation ###
@ -147,7 +147,7 @@ p);
/*! /*!
Returns a sphere circle Returns a sphere circle
in the oppostie direction of `c`. in the opposite direction of `c`.
*/ */
Sphere_circle opposite() ; Sphere_circle opposite() ;
@ -351,15 +351,14 @@ half-circle.
bool is_long() ; bool is_long() ;
/*! /*!
return true iff `s` is return true iff `s` is degenerate,
degenerate, i.e.\ source and target are the same.
i.e. source and target are the same.
*/ */
bool is_degenerate() ; bool is_degenerate() ;
/*! /*!
return true iff `s` is a return true iff `s` is a perfect half-circle,
perfect half-circle, i.e. `source().antipode == target()`. i.e.\ `source().antipode == target()`.
*/ */
bool is_halfcircle() ; bool is_halfcircle() ;
@ -434,32 +433,32 @@ SFace_cycle_iterator();
/// @{ /// @{
/*! /*!
returns true if `sfc` represents a `SVertex_handle`. returns true if the iterator represents a `SVertex_handle`.
*/ */
bool is_svertex() const; bool is_svertex() const;
/*! /*!
returns true if `sfc` represents a `SHalfedge_handle`. returns true if the iterator represents a `SHalfedge_handle`.
*/ */
bool is_shalfedge() const; bool is_shalfedge() const;
/*! /*!
returns true if `sfc` represents a `SHalfloop_handle`. returns true if the iterator represents a `SHalfloop_handle`.
*/ */
bool is_shalfloop() const; bool is_shalfloop() const;
/*! /*!
casts `sfc` to `SVertex_handle`. casts the iterator to `SVertex_handle`.
*/ */
operator SVertex_handle() const; operator SVertex_handle() const;
/*! /*!
casts `sfc` to `SHalfedge_handle`. casts the iterator to `SHalfedge_handle`.
*/ */
operator SHalfedge_handle() const; operator SHalfedge_handle() const;
/*! /*!
casts `sfc` to `SHalfloop_handle`. casts the iterator to `SHalfloop_handle`.
*/ */
operator SHalfloop_handle() const; operator SHalfloop_handle() const;
@ -523,7 +522,7 @@ const handle to SFace.
typedef Hidden_type SFace_const_handle; typedef Hidden_type SFace_const_handle;
/*! /*!
const iterator over the entries to all sface cycles of a sface. const iterator over the entries to all `sface` cycles of a `sface`.
*/ */
typedef Hidden_type SFace_cycle_const_iterator; typedef Hidden_type SFace_cycle_const_iterator;
@ -533,12 +532,12 @@ typedef Hidden_type SFace_cycle_const_iterator;
/// @{ /// @{
/*! /*!
the mark of `sf` . the mark of the `sface`.
*/ */
const Mark& mark() const; const Mark& mark() const;
/*! /*!
iterator over the entries to all sface cycles of `sf` . iterator over the entries to all sface cycles of the `sface` .
*/ */
SFace_cycle_const_iterator sface_cycle_begin() const; SFace_cycle_const_iterator sface_cycle_begin() const;
@ -630,22 +629,22 @@ typedef Hidden_type SFace_const_handle;
/// @{ /// @{
/*! /*!
the mark of `se` . the mark of the `sedge`.
*/ */
const Mark& mark() const; const Mark& mark() const;
/*! /*!
the sphere circle of `se` . the sphere circle of the `sedge`.
*/ */
const Sphere_circle& circle() const; const Sphere_circle& circle() const;
/*! /*!
the twin of `se` . the twin of the `sedge`.
*/ */
SHalfedge_const_handle twin() const; SHalfedge_const_handle twin() const;
/*! /*!
the source svertex of `se` . the source svertex of the `sedge`.
*/ */
SVertex_const_handle source() const; SVertex_const_handle source() const;
@ -655,38 +654,38 @@ equals `twin()->source()`.
SVertex_const_handle target() const; SVertex_const_handle target() const;
/*! /*!
the SHalfedge previous to `se` in a sface cycle. the SHalfedge previous to the `sedge` in a sface cycle.
*/ */
SHalfedge_const_handle sprev() const; SHalfedge_const_handle sprev() const;
/*! /*!
the next SHalfedge of `se` in a sface cycle. the next SHalfedge of the `sedge` in a sface cycle.
*/ */
SHalfedge_const_handle snext() const; SHalfedge_const_handle snext() const;
/*! /*!
the edge before `se` in the cyclic ordered adjacency list of source(). the edge before the `sedge` in the cyclic ordered adjacency list of `source()`.
*/ */
SHalfedge_const_handle cyclic_adj_pred() const; SHalfedge_const_handle cyclic_adj_pred() const;
/*! /*!
the edge after `se` in the cyclic ordered adjacency list of source(). the edge after the `sedge` in the cyclic ordered adjacency list of `source()`.
*/ */
SHalfedge_const_handle cyclic_adj_succ() const; SHalfedge_const_handle cyclic_adj_succ() const;
/*! /*!
the incident sface of `se` . the incident `sface` of the `sedge`.
*/ */
SFace_const_handle incident_sface() const; SFace_const_handle incident_sface() const;
/*! /*!
determines whether `se` is determines whether the `sedge` is
in an outer sface cycle. in an outer sface cycle.
*/ */
bool in_outer_sface_cycle() const; bool in_outer_sface_cycle() const;
/*! /*!
determines whether `se` is determines whether the `sedge` is
in an inner sface cycle. in an inner sface cycle.
*/ */
bool in_inner_sface_cycle() const; bool in_inner_sface_cycle() const;
@ -753,22 +752,22 @@ typedef Hidden_type SFace_const_handle;
/// @{ /// @{
/*! /*!
the mark of `se` . the mark of the halfloop.
*/ */
const Mark& mark() const; const Mark& mark() const;
/*! /*!
the sphere circle of `se` . the sphere circle of the halfloop.
*/ */
const Sphere_circle& circle() const; const Sphere_circle& circle() const;
/*! /*!
the twin of `se` . the twin of the halfloop.
*/ */
SHalfloop_const_handle twin() const; SHalfloop_const_handle twin() const;
/*! /*!
the incident sface of `se` . the incident sface of the halfloop.
*/ */
SFace_const_handle incident_sface() const; SFace_const_handle incident_sface() const;
@ -782,7 +781,7 @@ SFace_const_handle incident_sface() const;
Figure \ref figureNefS2SVertexIncidences illustrates the incidence of a svertex on a sphere map. Figure \ref figureNefS2SVertexIncidences illustrates the incidence of a svertex on a sphere map.
The member function The member function
`out_sedge` returns the first outgoing shalfedge, and `incident_sface` `out_sedge()` returns the first outgoing shalfedge, and `incident_sface()`
returns the incident sface. returns the incident sface.
### Creation ### ### Creation ###
@ -834,32 +833,32 @@ typedef Hidden_type SFace_const_handle;
/// @{ /// @{
/*! /*!
the mark of `e` . the mark of the `svertex`.
*/ */
const Mark& mark() const; const Mark& mark() const;
/*! /*!
the sphere point of `e` . the sphere point of the `svertex`.
*/ */
const Sphere_point& point() const; const Sphere_point& point() const;
/*! /*!
returns |true| if `e` has no adjacent sedges. returns |true| if the `svertex` has no adjacent sedges.
*/ */
bool is_isolated() const; bool is_isolated() const;
/*! /*!
the twin of `e` . the twin of the `svertex`.
*/ */
SVertex_const_handle twin() const; SVertex_const_handle twin() const;
/*! /*!
the first out sedge of `e` . the first out sedge of the `svertex`.
*/ */
SHalfedge_const_handle out_sedge() const; SHalfedge_const_handle out_sedge() const;
/*! /*!
the incident sface of `e` . the incident sface of the `svertex`.
*/ */
SFace_const_handle incident_sface() const; SFace_const_handle incident_sface() const;

View File

@ -58,7 +58,7 @@ We introduce geometric objects that are part of the spherical surface
`Nef_polyhedron_S2::Sphere_circle`, `Nef_polyhedron_S2::Sphere_segment`, and `Nef_polyhedron_S2::Sphere_direction`. `Nef_polyhedron_S2::Sphere_circle`, `Nef_polyhedron_S2::Sphere_segment`, and `Nef_polyhedron_S2::Sphere_direction`.
`Nef_polyhedron_S2::Sphere_point`s are points on \f$ S_2\f$, `Nef_polyhedron_S2::Sphere_circle`s are `Nef_polyhedron_S2::Sphere_point`s are points on \f$ S_2\f$, `Nef_polyhedron_S2::Sphere_circle`s are
oriented great circles of \f$ S_2\f$, `Nef_polyhedron_S2::Sphere_segment`s are oriented oriented great circles of \f$ S_2\f$, `Nef_polyhedron_S2::Sphere_segment`s are oriented
parts of `Nef_polyhedron_S2::Sphere_circles` bounded by a pair of parts of `Nef_polyhedron_S2::Sphere_circle` bounded by a pair of
`Nef_polyhedron_S2::Sphere_point`s, and `Nef_polyhedron_S2::Sphere_direction`s are directions that `Nef_polyhedron_S2::Sphere_point`s, and `Nef_polyhedron_S2::Sphere_direction`s are directions that
are part of great circles. (a direction is usually defined to be a are part of great circles. (a direction is usually defined to be a
vector without length, that floats around in its underlying space and vector without length, that floats around in its underlying space and
@ -124,9 +124,9 @@ it is.
The macro `CGAL_forall_sface_cycles_of` is equivalent to a for-loop The macro `CGAL_forall_sface_cycles_of` is equivalent to a for-loop
on the range `[sf->sface_cycles_begin(), sf->sface_cycles_end())`. An on the range `[sf->sface_cycles_begin(), sf->sface_cycles_end())`. An
`Nef_polyhedron_S2::SFace_cycle_const_iterator` either represents a `Nef_polyhedron_S2::SVertex_const_handle`, `Nef_polyhedron_S2::SFace_cycle_const_iterator` either represents a `Nef_polyhedron_S2::SVertex_const_handle`,
a `Nef_polyhedron_S2::SHalfede_const_handle` or a `Nef_polyhedron_S2::SHalfloop_const_handle`. In order a `Nef_polyhedron_S2::SHalfedge_const_handle` or a `Nef_polyhedron_S2::SHalfloop_const_handle`. In order
to find out which handle type is represented, the functions to find out which handle type is represented, the functions
`Nef_polyhedron_S2::is_svertex()`, `Nef_polyhedron_S2::is_shafledge()` and `Nef_polyhedron_S2::is_shalfloop()` are provided. `Nef_polyhedron_S2::is_svertex()`, `Nef_polyhedron_S2::is_shalfedge()` and `Nef_polyhedron_S2::is_shalfloop()` are provided.
Afterwards the iterator can be casted to the proper handle type. Afterwards the iterator can be casted to the proper handle type.
\cgalexample{Nef_S2/nef_s2_exploration.cpp} \cgalexample{Nef_S2/nef_s2_exploration.cpp}
@ -140,7 +140,7 @@ retrieved. `locate` returns an instance of type `Nef_polyhedron_S2::Object_handl
is a container for any handle type. Here, it either a is a container for any handle type. Here, it either a
`Nef_polyhedron_S2::SVertex_const_handle`, a `Nef_polyhedron_S2::SHalfedge_const_handle`, `Nef_polyhedron_S2::SVertex_const_handle`, a `Nef_polyhedron_S2::SHalfedge_const_handle`,
a `Nef_polyhedron_S2::SHafloop_const_handle` or a `Nef_polyhedron_S2::SFace_const_handle`. The function a `Nef_polyhedron_S2::SHafloop_const_handle` or a `Nef_polyhedron_S2::SFace_const_handle`. The function
`CGAL::assign` performs the cast operation and returns a boolean which `assign()` performs the cast operation and returns a Boolean which
indicates whether the cast was successful or not. indicates whether the cast was successful or not.
\cgalexample{Nef_S2/nef_s2_point_location.cpp} \cgalexample{Nef_S2/nef_s2_point_location.cpp}

View File

@ -3,7 +3,7 @@
/// \ingroup PkgNefS2 /// \ingroup PkgNefS2
/*! /*!
\addtogroup PkgNefS2 \addtogroup PkgNefS2
\todo check generated documentation
\PkgDescriptionBegin{2D Boolean Operations on Nef Polygons Embedded on the Sphere,PkgNefS2Summary} \PkgDescriptionBegin{2D Boolean Operations on Nef Polygons Embedded on the Sphere,PkgNefS2Summary}
\PkgPicture{Nef_S2-teaser-small.png} \PkgPicture{Nef_S2-teaser-small.png}
\PkgAuthors{Peter Hachenberger and Lutz Kettner} \PkgAuthors{Peter Hachenberger and Lutz Kettner}
@ -40,7 +40,7 @@ into great arcs.
The incidence structure of planar Nef polyhedra can be reused. The The incidence structure of planar Nef polyhedra can be reused. The
items are denoted as \em svertex, \em shalfedge and \em sface, items are denoted as \em svertex, \em shalfedge and \em sface,
analogous to their counterparts in `Nef_polyhedron_2`. Additionally, analogous to their counterparts in `CGAL::Nef_polyhedron_2`. Additionally,
there is the <I>shalfloop</I> representing the great circles. there is the <I>shalfloop</I> representing the great circles.
*/ */