mirror of https://github.com/CGAL/cgal
finished
This commit is contained in:
parent
92aa57669b
commit
ff18ac6735
|
|
@ -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;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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}
|
||||||
|
|
|
||||||
|
|
@ -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.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue