mirror of https://github.com/CGAL/cgal
spelling corrections
Some spelling corrections (Directories starting with `M`-` N`), some backward work some forward work
This commit is contained in:
parent
45478184de
commit
3674c937f7
|
|
@ -74,7 +74,7 @@ typedef unspecified_type Construct_projected_point_3;
|
|||
/*!
|
||||
A functor object to compare the distance of two points wrt a third one. Provides the operator:
|
||||
|
||||
`CGAL::Comparision_result operator()(const Point_3& p1, const Point_3& p2, const Point_3& p3)`,
|
||||
`CGAL::Comparison_result operator()(const Point_3& p1, const Point_3& p2, const Point_3& p3)`,
|
||||
|
||||
which compares the distance between `p1 and `p2`, and between `p2` and `p3`.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -203,7 +203,7 @@ bool move_isolated_vertex(Face_handle f1, Face_handle f2, Vertex_handle v);
|
|||
/*! relocates all inner ccbs and isolated vertices to their proper position
|
||||
* immediately after a face has split due to the insertion of a new halfedge,
|
||||
* namely after `insert_at_vertices_ex()` was invoked and indicated that a new
|
||||
* face has been created. `he` is the halfegde returned by
|
||||
* face has been created. `he` is the halfedge returned by
|
||||
* `insert_at_vertices_ex()`, such that `he->twin()->face` is the face that has
|
||||
* just been split and `he->face()` is the newly created face.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -131,7 +131,7 @@ void read_x_monotone_curve(X_monotone_curve_2& c);
|
|||
/*! reads an auxiliary halfedge-data object and associates it with the halfedge
|
||||
* `he`.
|
||||
*/
|
||||
void read_halfegde_data(Halfedge_handle he);
|
||||
void read_halfedge_data(Halfedge_handle he);
|
||||
|
||||
/*! reads a message indicating the beginning of a single face record. */
|
||||
void read_face_begin();
|
||||
|
|
|
|||
|
|
@ -124,7 +124,7 @@ void write_halfedge_index (std::size_t idx);
|
|||
void write_x_monotone_curve (const X_monotone_curve_2& c);
|
||||
|
||||
/*! writes the auxiliary data associated with the halfedge. */
|
||||
void write_halfegde_data (Halfedge_const_handle he);
|
||||
void write_halfedge_data (Halfedge_const_handle he);
|
||||
|
||||
/*! writes a message indicating the beginning of a single face record. */
|
||||
void write_face_begin();
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ int main() {
|
|||
|
||||
auto equal = traits.equal_2_object();
|
||||
for (auto eit = arr.edges_begin(); eit != arr.edges_end(); ++eit) {
|
||||
// Check whether the halfegde has the same direction as its segment.
|
||||
// Check whether the halfedge has the same direction as its segment.
|
||||
bool flag = equal(eit->source()->point(),eit->curve().source());
|
||||
eit->set_data(flag);
|
||||
eit->twin()->set_data(!flag);
|
||||
|
|
|
|||
|
|
@ -619,7 +619,7 @@ public:
|
|||
/*!
|
||||
* Split a given edge into two at a given point, and associate the given
|
||||
* x-monotone curves with the split edges.
|
||||
* \param e The edge to split (one of the pair of twin halfegdes).
|
||||
* \param e The edge to split (one of the pair of twin halfedges).
|
||||
* \param p The split point.
|
||||
* \param cv1 The curve that should be associated with the first split edge,
|
||||
* whose source equals e's source and its target is p.
|
||||
|
|
@ -641,7 +641,7 @@ public:
|
|||
/*!
|
||||
* Split a given edge into two at the given vertex, and associate the given
|
||||
* x-monotone curves with the split edges.
|
||||
* \param e The edge to split (one of the pair of twin halfegdes).
|
||||
* \param e The edge to split (one of the pair of twin halfedges).
|
||||
* \param v The split vertex.
|
||||
* \param cv1 The curve that should be associated with the first split edge,
|
||||
* whose source equals e's source and its target is v's point.
|
||||
|
|
@ -663,7 +663,7 @@ public:
|
|||
|
||||
/*!
|
||||
* Split a fictitious edge at the given vertex.
|
||||
* \param e The edge to split (one of the pair of twin halfegdes).
|
||||
* \param e The edge to split (one of the pair of twin halfedges).
|
||||
* \param v The split vertex.
|
||||
* \return A handle for the first split halfedge, whose source equals the
|
||||
* source of e, and whose target is the split vertex v.
|
||||
|
|
|
|||
|
|
@ -223,7 +223,7 @@ public:
|
|||
* The Traits parameter corresponds to a geometric traits class, which
|
||||
* defines the Point_2 and X_monotone_curve_2 types.
|
||||
* The VertexData, HalfedgeData and FaceData parameter specify the object types
|
||||
* stored with each vertex, halfegde and face, respectively.
|
||||
* stored with each vertex, halfedge and face, respectively.
|
||||
*/
|
||||
template <class Traits_,
|
||||
typename VertexData_, typename HalfedgeData_, typename FaceData_,
|
||||
|
|
|
|||
|
|
@ -231,7 +231,7 @@ _find_face_around_vertex(Vertex_const_handle vh,
|
|||
}
|
||||
|
||||
// In case the curves are not equal, just return the incident face of
|
||||
// the single halfegde (note that this is also the incident face of its
|
||||
// the single halfedge (note that this is also the incident face of its
|
||||
// twin, as v is the tip of an "antenna").
|
||||
if (! equal_curr) {
|
||||
CGAL_assertion(curr->face() == curr->twin()->face());
|
||||
|
|
@ -251,7 +251,7 @@ _find_face_around_vertex(Vertex_const_handle vh,
|
|||
(next->direction() == ARR_RIGHT_TO_LEFT),
|
||||
vp, eq_curr, eq_next))
|
||||
{
|
||||
// Break the loop if seg equals one of the halfegdes next to v.
|
||||
// Break the loop if seg equals one of the halfedges next to v.
|
||||
if (eq_curr) {
|
||||
equal_curr = true;
|
||||
break;
|
||||
|
|
@ -276,7 +276,7 @@ _find_face_around_vertex(Vertex_const_handle vh,
|
|||
}
|
||||
|
||||
// In case seg is not equal to curr's curve, just return the incident face
|
||||
// of the halfegde we have located.
|
||||
// of the halfedge we have located.
|
||||
if (! equal_curr)
|
||||
return make_result(curr->face());
|
||||
}
|
||||
|
|
|
|||
|
|
@ -98,7 +98,7 @@ Arr_walk_along_line_point_location<Arrangement>::locate(const Point_2& p) const
|
|||
// | |
|
||||
// +--------------+
|
||||
//
|
||||
// In this case, we find the first halfegde whose target is x
|
||||
// In this case, we find the first halfedge whose target is x
|
||||
// in a clockwise direction from "6 o'clock" around x and take
|
||||
// its incident face.
|
||||
|
||||
|
|
|
|||
|
|
@ -151,7 +151,7 @@ public:
|
|||
bool swap_predecessors(Event* event) const
|
||||
{
|
||||
// If we insert an edge whose right end lies on the north pole, we have
|
||||
// to flip the order of predecessor halfegdes.
|
||||
// to flip the order of predecessor halfedges.
|
||||
// TODO what about the corner?
|
||||
return (event->parameter_space_in_x() == ARR_INTERIOR &&
|
||||
event->parameter_space_in_y() == ARR_TOP_BOUNDARY);
|
||||
|
|
|
|||
|
|
@ -165,7 +165,7 @@ public:
|
|||
{
|
||||
// If we insert an edge whose right end lies on the top edge of the
|
||||
// ficititous bounding rectangle, we have to flip the order of predecessor
|
||||
// halfegdes.
|
||||
// halfedges.
|
||||
return ((event->parameter_space_in_x() == ARR_INTERIOR) &&
|
||||
(event->parameter_space_in_y() == ARR_TOP_BOUNDARY));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -323,12 +323,12 @@ place_boundary_vertex(Face* f,
|
|||
return Result(curr);
|
||||
}
|
||||
|
||||
// Move to the next halfegde along the CCB.
|
||||
// Move to the next halfedge along the CCB.
|
||||
curr = curr->next();
|
||||
|
||||
} while (curr != first);
|
||||
|
||||
// If we reached here, we did not find a suitable halfegde, which should
|
||||
// If we reached here, we did not find a suitable halfedge, which should
|
||||
// never happen.
|
||||
CGAL_error();
|
||||
return boost::none;
|
||||
|
|
|
|||
|
|
@ -4709,7 +4709,7 @@ _remove_edge(DHalfedge* e, bool remove_source, bool remove_target)
|
|||
// RWRW: NEW!
|
||||
CGAL_assertion((oc1 != nullptr) && (oc2 != nullptr));
|
||||
|
||||
// In case both halfegdes he1 and he2 are incident to the same face
|
||||
// In case both halfedges he1 and he2 are incident to the same face
|
||||
// but lie on different outer CCBs of this face, removing this pair of
|
||||
// halfedge causes the two components two merge and to become an
|
||||
// inner CCB in the face.
|
||||
|
|
|
|||
|
|
@ -595,7 +595,7 @@ _compute_next_intersection(Halfedge_handle he,
|
|||
|
||||
// The intersections with the curve have not been computed yet, so we
|
||||
// have to compute them now. Note that the first curve we intersect is
|
||||
// always the subcurve associated with the given halfegde and the second
|
||||
// always the subcurve associated with the given halfedge and the second
|
||||
// curve is the one we insert. Even though the order seems unimportant, we
|
||||
// exploit this fact in some of the traits classes in order to optimize
|
||||
// computations.
|
||||
|
|
|
|||
|
|
@ -708,19 +708,19 @@ public:
|
|||
Halfedge_const_handle twin() const
|
||||
{ return (DHalfedge_const_iter(Base::opposite())); }
|
||||
|
||||
/*! Get the previous halfegde in the chain (non-const version). */
|
||||
/*! Get the previous halfedge in the chain (non-const version). */
|
||||
Halfedge_handle prev()
|
||||
{ return (DHalfedge_iter(Base::prev())); }
|
||||
|
||||
/*! Get the previous halfegde in the chain (const version). */
|
||||
/*! Get the previous halfedge in the chain (const version). */
|
||||
Halfedge_const_handle prev() const
|
||||
{ return (DHalfedge_const_iter(Base::prev())); }
|
||||
|
||||
/*! Get the next halfegde in the chain (non-const version). */
|
||||
/*! Get the next halfedge in the chain (non-const version). */
|
||||
Halfedge_handle next()
|
||||
{ return (DHalfedge_iter(Base::next())); }
|
||||
|
||||
/*! Get the next halfegde in the chain (const version). */
|
||||
/*! Get the next halfedge in the chain (const version). */
|
||||
Halfedge_const_handle next() const
|
||||
{ return (DHalfedge_const_iter(Base::next())); }
|
||||
|
||||
|
|
@ -1486,7 +1486,7 @@ public:
|
|||
/*!
|
||||
* Split a given edge into two, and associate the given x-monotone
|
||||
* curves with the split edges.
|
||||
* \param e The edge to split (one of the pair of twin halfegdes).
|
||||
* \param e The edge to split (one of the pair of twin halfedges).
|
||||
* \param cv1 The curve that should be associated with the first split edge.
|
||||
* \param cv2 The curve that should be associated with the second split edge.
|
||||
|
||||
|
|
@ -1503,8 +1503,8 @@ public:
|
|||
/*!
|
||||
* Merge two edges to form a single edge, and associate the given x-monotone
|
||||
* curve with the merged edge.
|
||||
* \param e1 The first edge to merge (one of the pair of twin halfegdes).
|
||||
* \param e2 The second edge to merge (one of the pair of twin halfegdes).
|
||||
* \param e1 The first edge to merge (one of the pair of twin halfedges).
|
||||
* \param e2 The second edge to merge (one of the pair of twin halfedges).
|
||||
* \param cv The curve that should be associated with merged edge.
|
||||
* \return A handle for the merged halfedge.
|
||||
*/
|
||||
|
|
@ -1513,7 +1513,7 @@ public:
|
|||
|
||||
/*!
|
||||
* Remove an edge from the arrangement.
|
||||
* \param e The edge to remove (one of the pair of twin halfegdes).
|
||||
* \param e The edge to remove (one of the pair of twin halfedges).
|
||||
* \param remove_source Should the source vertex of e be removed if it
|
||||
* becomes isolated (true by default).
|
||||
* \param remove_target Should the target vertex of e be removed if it
|
||||
|
|
@ -2213,7 +2213,7 @@ protected:
|
|||
/*!
|
||||
* Split a given edge into two at a given point, and associate the given
|
||||
* x-monotone curves with the split edges.
|
||||
* \param e The edge to split (one of the pair of twin halfegdes).
|
||||
* \param e The edge to split (one of the pair of twin halfedges).
|
||||
* \param p The split point.
|
||||
* \param cv1 The curve that should be associated with the first split edge,
|
||||
* whose source equals e's source and its target is p.
|
||||
|
|
@ -2229,7 +2229,7 @@ protected:
|
|||
/*!
|
||||
* Split a given edge into two at a given vertex, and associate the given
|
||||
* x-monotone curves with the split edges.
|
||||
* \param e The edge to split (one of the pair of twin halfegdes).
|
||||
* \param e The edge to split (one of the pair of twin halfedges).
|
||||
* \param v The split vertex.
|
||||
* \param cv1 The curve that should be associated with the first split edge,
|
||||
* whose source equals e's source and its target is v.
|
||||
|
|
@ -2967,7 +2967,7 @@ void insert_non_intersecting_curves
|
|||
* the edges incident to the end-vertices of the removed edge after its
|
||||
* deletion, the function performs these merges as well.
|
||||
* \param arr The arrangement.
|
||||
* \param e The edge to remove (one of the pair of twin halfegdes).
|
||||
* \param e The edge to remove (one of the pair of twin halfedges).
|
||||
* \return A handle for the remaining face.
|
||||
*/
|
||||
template <typename GeomTraits, typename TopTraits>
|
||||
|
|
|
|||
|
|
@ -197,7 +197,7 @@ namespace CGAL {
|
|||
// Read the x-monotone curve associated with the edge.
|
||||
formatter.read_x_monotone_curve(m_curve);
|
||||
|
||||
// Allocate a pair of new DCEL halfegdes and associate them with the
|
||||
// Allocate a pair of new DCEL halfedges and associate them with the
|
||||
// x-monotone curve we read.
|
||||
new_he = m_arr_access.new_edge(&m_curve);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -307,7 +307,7 @@ namespace CGAL {
|
|||
return (pos->second);
|
||||
}
|
||||
|
||||
/*! Get the mapped index of a given halfegde. */
|
||||
/*! Get the mapped index of a given halfedge. */
|
||||
int _index(const DHalfedge* he) const
|
||||
{
|
||||
typename Halfedge_index_map::const_iterator pos = m_he_index.find(he);
|
||||
|
|
|
|||
|
|
@ -637,7 +637,7 @@ add_subcurve(const X_monotone_curve_2& cv, Subcurve* sc)
|
|||
#endif
|
||||
}
|
||||
|
||||
// Update the last event with the inserted halfegde (if necessary)
|
||||
// Update the last event with the inserted halfedge (if necessary)
|
||||
// and check if we have to update the auxiliary information on the location
|
||||
// of holes.
|
||||
if ((last_event->number_of_left_curves() == 0) &&
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@ private:
|
|||
/*! \class
|
||||
* Iteratator over all outgoing halfedges around a given vertex., skipping
|
||||
* fictitious halfedges.
|
||||
* This is by adapting the Halfegde_around_vertex_circulator type to an
|
||||
* This is by adapting the Halfedge_around_vertex_circulator type to an
|
||||
* iterator. Moreover, as the circulator goes over all ingoing halfedges
|
||||
* of the vertex, the iterator adapter may return their twin halfedges, if
|
||||
* we need the outgoing halfedges.
|
||||
|
|
|
|||
|
|
@ -213,7 +213,7 @@ OutputIterator connect_holes(const Polygon_with_holes_2<Kernel,
|
|||
else if (CGAL::assign (he, vrs_iter->second.second))
|
||||
{
|
||||
// v_top lies below the interior of the hafledge he_above:
|
||||
// Find the intersection of this halfegde with a vertical ray
|
||||
// Find the intersection of this halfedge with a vertical ray
|
||||
// emanating from v_top.
|
||||
he_above = arr.non_const_handle (he);
|
||||
|
||||
|
|
|
|||
|
|
@ -94440,7 +94440,7 @@ and implement some of them."
|
|||
|
||||
@techreport{ll-cvpe-84
|
||||
, author = "D. T. Lee and A. Lin"
|
||||
, title = "Computing the Visibility Polygon from an Egde"
|
||||
, title = "Computing the Visibility Polygon from an Edge"
|
||||
, type = "Technical {Report}"
|
||||
, institution = "Northwestern University"
|
||||
, year = 1984
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ cgal (4.2-1) unstable; urgency=low
|
|||
|
||||
The Qt4 support library libCGAL_Qt4.so.10.0.0 has been moved from the package
|
||||
libcgal10 to the new package libcgal-qt4-10. Similarly, the corresponding
|
||||
headers and the static library have been moved from the pacakge libcgal-dev
|
||||
headers and the static library have been moved from the package libcgal-dev
|
||||
to the new package libcgal-qt4-dev. That is the packages libcgal10 and
|
||||
libcgal-dev do not any longer depend on the Qt packages.
|
||||
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ Tarballs with demos and examples can be found in /usr/share/doc/libcgal-demo.
|
|||
Extract the tarballs somewhere and call "cmake ." to configure the
|
||||
demos/examples. Call "make" to build them, either in the top-level directory
|
||||
to build all demos/examples (which takes some time and needs quite some disk
|
||||
space), or in the subdirectory of the desired demo/exmaple. The cmake option
|
||||
space), or in the subdirectory of the desired demo/example. The cmake option
|
||||
-DCMAKE_VERBOSE_MAKEFILE=ON is useful to generate verbose makefiles that show
|
||||
each executed command.
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ cgal (4.1-1) unstable; urgency=low
|
|||
* New upstream release.
|
||||
* Rename binary package libcgal9 to libcgal10 to reflect SONAME change.
|
||||
* Configure CGAL using -DCGAL_ENABLE_PRECONFIG=OFF since we do not want
|
||||
that the accidential presence of optional libraries (for demos and
|
||||
that the accidental presence of optional libraries (for demos and
|
||||
examples) influences the build of the library.
|
||||
* Move the Qt4 support library and the corresponding headers into new
|
||||
binary packages libcgal-qt4-10 and libcgal-qt4-dev (Closes: #683214).
|
||||
|
|
@ -345,4 +345,4 @@ cgal (3.2-1) unstable; urgency=low
|
|||
* First upload to Debian archive. (Closes: #251885)
|
||||
|
||||
-- Joachim Reichel <joachim.reichel@gmx.de> Mon, 29 May 2006 20:24:27 +0200
|
||||
5~
|
||||
5~
|
||||
|
|
|
|||
|
|
@ -230,8 +230,8 @@ file to file.
|
|||
|
||||
|
||||
|
||||
Copright statement for files under the FREE_USE license
|
||||
=======================================================
|
||||
Copyright statement for files under the FREE_USE license
|
||||
========================================================
|
||||
|
||||
Copyright (c) 1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007
|
||||
Utrecht University (The Netherlands),
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ cgal (4.2-1) unstable; urgency=low
|
|||
|
||||
The Qt4 support library libCGAL_Qt4.so.10.0.0 has been moved from the package
|
||||
libcgal10 to the new package libcgal-qt4-10. Similarly, the corresponding
|
||||
headers and the static library have been moved from the pacakge libcgal-dev
|
||||
headers and the static library have been moved from the package libcgal-dev
|
||||
to the new package libcgal-qt4-dev. That is the packages libcgal10 and
|
||||
libcgal-dev do not any longer depend on the Qt packages.
|
||||
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ Tarballs with demos and examples can be found in /usr/share/doc/libcgal-demo.
|
|||
Extract the tarballs somewhere and call "cmake ." to configure the
|
||||
demos/examples. Call "make" to build them, either in the top-level directory
|
||||
to build all demos/examples (which takes some time and needs quite some disk
|
||||
space), or in the subdirectory of the desired demo/exmaple. The cmake option
|
||||
space), or in the subdirectory of the desired demo/example. The cmake option
|
||||
-DCMAKE_VERBOSE_MAKEFILE=ON is useful to generate verbose makefiles that show
|
||||
each executed command.
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ cgal (4.1-1~squeeze1) stable; urgency=low
|
|||
* New upstream release.
|
||||
* Rename binary package libcgal9 to libcgal10 to reflect SONAME change.
|
||||
* Configure CGAL using -DCGAL_ENABLE_PRECONFIG=OFF since we do not want
|
||||
that the accidential presence of optional libraries (for demos and
|
||||
that the accidental presence of optional libraries (for demos and
|
||||
examples) influences the build of the library.
|
||||
* Move the Qt4 support library and the corresponding headers into new
|
||||
binary packages libcgal-qt4-10 and libcgal-qt4-dev (Closes: #683214).
|
||||
|
|
@ -345,4 +345,4 @@ cgal (3.2-1) unstable; urgency=low
|
|||
* First upload to Debian archive. (Closes: #251885)
|
||||
|
||||
-- Joachim Reichel <joachim.reichel@gmx.de> Mon, 29 May 2006 20:24:27 +0200
|
||||
5~
|
||||
5~
|
||||
|
|
|
|||
|
|
@ -230,8 +230,8 @@ file to file.
|
|||
|
||||
|
||||
|
||||
Copright statement for files under the FREE_USE license
|
||||
=======================================================
|
||||
Copyright statement for files under the FREE_USE license
|
||||
========================================================
|
||||
|
||||
Copyright (c) 1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007
|
||||
Utrecht University (The Netherlands),
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ cgal (4.2-1) unstable; urgency=low
|
|||
|
||||
The Qt4 support library libCGAL_Qt4.so.10.0.0 has been moved from the package
|
||||
libcgal10 to the new package libcgal-qt4-10. Similarly, the corresponding
|
||||
headers and the static library have been moved from the pacakge libcgal-dev
|
||||
headers and the static library have been moved from the package libcgal-dev
|
||||
to the new package libcgal-qt4-dev. That is the packages libcgal10 and
|
||||
libcgal-dev do not any longer depend on the Qt packages.
|
||||
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ Tarballs with demos and examples can be found in /usr/share/doc/libcgal-demo.
|
|||
Extract the tarballs somewhere and call "cmake ." to configure the
|
||||
demos/examples. Call "make" to build them, either in the top-level directory
|
||||
to build all demos/examples (which takes some time and needs quite some disk
|
||||
space), or in the subdirectory of the desired demo/exmaple. The cmake option
|
||||
space), or in the subdirectory of the desired demo/example. The cmake option
|
||||
-DCMAKE_VERBOSE_MAKEFILE=ON is useful to generate verbose makefiles that show
|
||||
each executed command.
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ cgal (4.1-1~wheezy1) testing; urgency=low
|
|||
* New upstream release.
|
||||
* Rename binary package libcgal9 to libcgal10 to reflect SONAME change.
|
||||
* Configure CGAL using -DCGAL_ENABLE_PRECONFIG=OFF since we do not want
|
||||
that the accidential presence of optional libraries (for demos and
|
||||
that the accidental presence of optional libraries (for demos and
|
||||
examples) influences the build of the library.
|
||||
* Move the Qt4 support library and the corresponding headers into new
|
||||
binary packages libcgal-qt4-10 and libcgal-qt4-dev (Closes: #683214).
|
||||
|
|
@ -345,4 +345,4 @@ cgal (3.2-1) unstable; urgency=low
|
|||
* First upload to Debian archive. (Closes: #251885)
|
||||
|
||||
-- Joachim Reichel <joachim.reichel@gmx.de> Mon, 29 May 2006 20:24:27 +0200
|
||||
5~
|
||||
5~
|
||||
|
|
|
|||
|
|
@ -230,8 +230,8 @@ file to file.
|
|||
|
||||
|
||||
|
||||
Copright statement for files under the FREE_USE license
|
||||
=======================================================
|
||||
Copyright statement for files under the FREE_USE license
|
||||
========================================================
|
||||
|
||||
Copyright (c) 1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007
|
||||
Utrecht University (The Netherlands),
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
|
||||
# This file uses Jam language syntax to describe available tools. Mostly,
|
||||
# there are 'using' lines, that contain the name of the used tools, and
|
||||
# parameters to pass to those tools -- where paremeters are separated by
|
||||
# parameters to pass to those tools -- where parameters are separated by
|
||||
# semicolons. Important syntax notes:
|
||||
#
|
||||
# - Both ':' and ';' must be separated from other tokens by whitespace
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
Output: the arrays, alphabetically sorted, of the same size, filled with
|
||||
empty strings.
|
||||
|
||||
Short: Equalizes the sizes of the two inpu arrays by adding empty strings.
|
||||
Short: Equalizes the sizes of the two input arrays by adding empty strings.
|
||||
|
||||
Detailed: for each element of the smaller input,
|
||||
if base[i] != newtest[i] (not taking the last char into account),
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@ void replace_column( int old, int new);
|
|||
|
||||
/*!
|
||||
returns
|
||||
a new matrix consisting of all rows of the dynmic matrix with even index,
|
||||
a new matrix consisting of all rows of the dynamic matrix with even index,
|
||||
(i.e.\ first row is row \f$ 0\f$ of the dynamic matrix, second row is row \f$ 2\f$ of
|
||||
the dynamic matrix, etc.). \pre `number_of_rows()` \f$ > 0\f$.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
== Old TODO list ==
|
||||
|
||||
- Implement a method to split all clusters at the beginnning.
|
||||
- Implement a method to split all clusters at the beginning.
|
||||
|
||||
- Histograms in the demo
|
||||
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ sets the edge that makes this face blind.
|
|||
\pre is_blind() returns `true`
|
||||
\pre e is a constrained edge
|
||||
*/
|
||||
void set_blinding_constraint(const Egde& e);
|
||||
void set_blinding_constraint(const Edge& e);
|
||||
|
||||
|
||||
/// @}
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ int main()
|
|||
|
||||
std::cout << "Number of vertices: " << cdt.number_of_vertices() << std::endl;
|
||||
|
||||
std::cout << "Meshing the triangulation with default criterias..."
|
||||
std::cout << "Meshing the triangulation with default criteria..."
|
||||
<< std::endl;
|
||||
|
||||
Mesher mesher(cdt);
|
||||
|
|
@ -42,9 +42,9 @@ int main()
|
|||
|
||||
std::cout << "Number of vertices: " << cdt.number_of_vertices() << std::endl;
|
||||
|
||||
std::cout << "Meshing with new criterias..." << std::endl;
|
||||
std::cout << "Meshing with new criteria..." << std::endl;
|
||||
// 0.125 is the default shape bound. It corresponds to abound 20.6 degree.
|
||||
// 0.5 is the upper bound on the length of the longuest edge.
|
||||
// 0.5 is the upper bound on the length of the longest edge.
|
||||
// See reference manual for Delaunay_mesh_size_traits_2<K>.
|
||||
mesher.set_criteria(Criteria(0.125, 0.5));
|
||||
mesher.refine_mesh();
|
||||
|
|
|
|||
|
|
@ -146,7 +146,7 @@ public:
|
|||
|
||||
|
||||
// Cdt should be of the type Constrained_Delaunay_triangulation_2
|
||||
// and the face base shoul be Constrained_Delaunay_triangulation_face_base_2
|
||||
// and the face base should be Constrained_Delaunay_triangulation_face_base_2
|
||||
template <class Cdt>
|
||||
class Constrained_voronoi_diagram_2
|
||||
{
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ class Delaunay_mesher_no_edge_refinement_2
|
|||
|
||||
typedef typename Tr::Point Point;
|
||||
|
||||
/** \name Types needed for private member datas */
|
||||
/** \name Types needed for private member data */
|
||||
typedef Mesh_2::Do_not_refine_edges<Tr,
|
||||
Mesh_2::Is_locally_conforming_Gabriel<Tr> > Edges_level_base;
|
||||
typedef Mesh_2::Refine_edges<Tr,
|
||||
|
|
@ -54,7 +54,7 @@ public:
|
|||
typedef Seeds_iterator Seeds_const_iterator;
|
||||
|
||||
private:
|
||||
// --- PRIVATE MEMBER DATAS ---
|
||||
// --- PRIVATE MEMBER DATA ---
|
||||
Tr& tr;
|
||||
Criteria criteria;
|
||||
Null_mesher_level null_level;
|
||||
|
|
@ -181,7 +181,7 @@ public:
|
|||
propagate_marks(tr.infinite_face(), false);
|
||||
}
|
||||
|
||||
/** Propagates the mark `mark` recursivly. */
|
||||
/** Propagates the mark `mark` recursively. */
|
||||
static void propagate_marks(const Face_handle fh, bool mark)
|
||||
{
|
||||
// std::queue only works with std::list on VC++6, and not with
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ public:
|
|||
* `Cluster` register information about clusters.
|
||||
* A cluster is a set of vertices v_i incident to one vertice
|
||||
* v_0, so that angles between segments [v_0, v_i] is less than 60
|
||||
* degres.
|
||||
* degrees.
|
||||
*/
|
||||
struct Cluster {
|
||||
bool reduced ; /**< Is the cluster reduced? */
|
||||
|
|
@ -122,7 +122,7 @@ private:
|
|||
typedef typename Cluster::Vertices_map Cluster_vertices_map;
|
||||
|
||||
private:
|
||||
/* --- protected datas --- */
|
||||
/* --- protected data --- */
|
||||
|
||||
Tr& tr; /**< The triangulation itself. */
|
||||
|
||||
|
|
@ -218,7 +218,7 @@ public:
|
|||
/** \name Auxiliary functions that return a boolean. */
|
||||
|
||||
/**
|
||||
* Tells if the angle <pleft, pmiddle, pright> is less than 60 degres.
|
||||
* Tells if the angle <pleft, pmiddle, pright> is less than 60 degrees.
|
||||
* Uses squared_cosine_of_angle_times_4() and used by
|
||||
* create_clusters_of_vertex().
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ public:
|
|||
Do_not_refine_edges(Tr& tr_)
|
||||
: Super(tr_) {}
|
||||
|
||||
/** \name FUNCTIONS NEEDED BY Mesher_level OVERIDDEN BY THIS CLASS. */
|
||||
/** \name FUNCTIONS NEEDED BY Mesher_level OVERRIDDEN BY THIS CLASS. */
|
||||
|
||||
void scan_triangulation_impl()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -301,7 +301,7 @@ public:
|
|||
template <class Faces_level>
|
||||
friend class Refine_edges_visitor;
|
||||
protected:
|
||||
/* --- protected datas --- */
|
||||
/* --- protected data --- */
|
||||
|
||||
Tr& tr; /**< The triangulation itself. */
|
||||
|
||||
|
|
@ -632,7 +632,7 @@ protected:
|
|||
// base class
|
||||
}
|
||||
|
||||
private: /** \name DEBUGGING TYPES AND DATAS */
|
||||
private: /** \name DEBUGGING TYPES AND DATA */
|
||||
class From_pair_of_vertex_to_edge
|
||||
: public CGAL::cpp98::unary_function<Constrained_edge, Edge>
|
||||
{
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ namespace Mesh_2 {
|
|||
/**
|
||||
* This class is the visitor needed when Refine_edges<Tr> if called from
|
||||
* Refine_faces<Tr>.
|
||||
* \param Faces_mesher should be instanciated with Refine_face_base<Tr>.
|
||||
* \param Faces_mesher should be instantiated with Refine_face_base<Tr>.
|
||||
*/
|
||||
template <typename Faces_mesher>
|
||||
class Refine_edges_visitor : public ::CGAL::Null_mesh_visitor
|
||||
|
|
|
|||
|
|
@ -82,7 +82,7 @@ public:
|
|||
}
|
||||
|
||||
|
||||
/** \name FUNCTIONS NEEDED BY Mesher_level OVERIDDEN BY THIS CLASS. */
|
||||
/** \name FUNCTIONS NEEDED BY Mesher_level OVERRIDDEN BY THIS CLASS. */
|
||||
|
||||
Point refinement_point_impl(const Edge& edge)
|
||||
{
|
||||
|
|
@ -104,7 +104,7 @@ public:
|
|||
vb_has_a_cluster = false;
|
||||
cluster_splitted = false;
|
||||
|
||||
// true bellow to remove ca and cb because they will
|
||||
// true below to remove ca and cb because they will
|
||||
// be restored by update_cluster(...).
|
||||
if( clusters.get_cluster(this->va,this->vb,ca,ca_it) ) {
|
||||
if( clusters.get_cluster(this->vb,this->va,cb,cb_it) )
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ protected:
|
|||
GABRIEL /**< `this` has been \e Gabriel-initialized. */
|
||||
};
|
||||
|
||||
// --- PROTECTED DATAS ---
|
||||
// --- PROTECTED DATA ---
|
||||
Initialization initialized;
|
||||
Tr& tr;
|
||||
Null_mesher_level null_level;
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ public:
|
|||
|
||||
/// Open an 3D image file.
|
||||
///
|
||||
/// Returns `true` if the file was sucessfully loaded.
|
||||
/// Returns `true` if the file was successfully loaded.
|
||||
bool read(const char* file);
|
||||
|
||||
};
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ public:
|
|||
/// @{
|
||||
|
||||
/*!
|
||||
Construction from a bouding polyhedral surface which must be closed, and free of intersections.
|
||||
Construction from a bounding polyhedral surface which must be closed, and free of intersections.
|
||||
The inside of `bounding_polyhedron` will be meshed.
|
||||
*/
|
||||
Polyhedral_mesh_domain_3(const Polyhedron& bounding_polyhedron);
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
#include <CGAL/Mesh_domain_with_polyline_features_3.h>
|
||||
#include <CGAL/make_mesh_3.h>
|
||||
|
||||
// Ouput
|
||||
// Output
|
||||
#include <CGAL/SMDS_3/Dump_c3t3.h>
|
||||
|
||||
// Read 1D features from input file
|
||||
|
|
|
|||
|
|
@ -175,7 +175,7 @@ protected:
|
|||
return derived().debug_info_element_impl(e);
|
||||
}
|
||||
|
||||
/** \name Private member datas */
|
||||
/** \name Private member data */
|
||||
|
||||
Previous_level& previous_level; /**< The previous level of the refinement
|
||||
process. */
|
||||
|
|
|
|||
|
|
@ -947,7 +947,7 @@ insert_balls_on_edges()
|
|||
Input_features input_features;
|
||||
domain_.get_curves(std::back_inserter(input_features));
|
||||
|
||||
// Interate on edges
|
||||
// Iterate on edges
|
||||
for ( typename Input_features::iterator fit = input_features.begin(),
|
||||
end = input_features.end() ; fit != end ; ++fit )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -94,7 +94,7 @@ struct Vector_plane_orientation_3_static_filter :
|
|||
fit_in_double(get_approx(b).z(), bz) &&
|
||||
fit_in_double(get_approx(c).x(), cx) && fit_in_double(get_approx(c).y(), cy) &&
|
||||
fit_in_double(get_approx(c).z(), cz))
|
||||
{ // This bloc is not indented because it was added in a second step,
|
||||
{ // This block is not indented because it was added in a second step,
|
||||
// and one wants to avoid the reindentation of the whole code
|
||||
|
||||
double abx = bx - ax;
|
||||
|
|
|
|||
|
|
@ -71,7 +71,7 @@ namespace Mesh_3 {
|
|||
|
||||
/**
|
||||
* @class PVertex
|
||||
* Vertex with associated perturbation datas
|
||||
* Vertex with associated perturbation data
|
||||
*/
|
||||
// Sequential
|
||||
template< typename FT
|
||||
|
|
@ -171,7 +171,7 @@ void update_saved_erase_counter() {}
|
|||
bool is_zombie() { return false; }
|
||||
|
||||
private:
|
||||
/// Private datas
|
||||
/// Private data
|
||||
Vertex_handle vertex_handle_;
|
||||
unsigned int incident_sliver_nb_;
|
||||
FT min_value_;
|
||||
|
|
@ -294,7 +294,7 @@ bool operator<(const Self& pv) const
|
|||
}
|
||||
|
||||
private:
|
||||
/// Private datas
|
||||
/// Private data
|
||||
Vertex_handle vertex_handle_;
|
||||
unsigned int vh_erase_counter_when_added_;
|
||||
int in_dimension_;
|
||||
|
|
@ -1032,7 +1032,7 @@ perturb(const FT& sliver_bound, PQueue& pqueue, Visitor& visitor) const
|
|||
}
|
||||
}
|
||||
|
||||
// Update pqueue in every cases, because pv was poped
|
||||
// Update pqueue in every cases, because pv was popped
|
||||
pqueue_size += update_priority_queue(pv, pqueue);
|
||||
visitor.end_of_perturbation_iteration(pqueue_size);
|
||||
|
||||
|
|
@ -1378,7 +1378,7 @@ perturb_vertex( PVertex pv
|
|||
++bcounter;
|
||||
#endif
|
||||
|
||||
// Update pqueue in every cases, because pv was poped
|
||||
// Update pqueue in every cases, because pv was popped
|
||||
if (pv.is_perturbable())
|
||||
{
|
||||
enqueue_task(pv, sliver_bound, visitor, bad_vertices);
|
||||
|
|
|
|||
|
|
@ -1559,7 +1559,7 @@ update_mesh(const Weighted_point& new_point,
|
|||
if (could_lock_zone && *could_lock_zone == false)
|
||||
return false;
|
||||
|
||||
// Get some datas to restore mesh
|
||||
// Get some data to restore mesh
|
||||
Boundary_facets_from_outside boundary_facets_from_outside =
|
||||
get_boundary_facets_from_outside(boundary_facets);
|
||||
|
||||
|
|
|
|||
|
|
@ -189,7 +189,7 @@ namespace Meshes {
|
|||
typedef Element_ Element;
|
||||
|
||||
protected:
|
||||
// --- protected datas ---
|
||||
// --- protected data ---
|
||||
Container container;
|
||||
Predicate test;
|
||||
|
||||
|
|
|
|||
|
|
@ -187,7 +187,7 @@ namespace CGAL {
|
|||
typedef typename Base::size_type size_type;
|
||||
|
||||
protected:
|
||||
// --- protected datas ---
|
||||
// --- protected data ---
|
||||
Map container;
|
||||
Predicate test;
|
||||
|
||||
|
|
|
|||
|
|
@ -108,7 +108,7 @@ private:
|
|||
}
|
||||
//@}
|
||||
|
||||
/** \name Private member datas */
|
||||
/** \name Private member data */
|
||||
|
||||
Previous& previous_level; /**< The previous level of the refinement
|
||||
process. */
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ namespace CGAL {
|
|||
typedef Elt Element;
|
||||
|
||||
protected:
|
||||
// --- protected datas ---
|
||||
// --- protected data ---
|
||||
Double_map<Element, Quality> m;
|
||||
|
||||
public:
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ namespace CGAL {
|
|||
|
||||
typedef typename std::deque<Element>::const_iterator const_iterator;
|
||||
private:
|
||||
// --- private datas ---
|
||||
// --- private data ---
|
||||
std::deque<Element> d;
|
||||
Predicate test;
|
||||
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ namespace CGAL {
|
|||
typedef typename Map::value_type value_type;
|
||||
|
||||
protected:
|
||||
// --- protected datas ---
|
||||
// --- protected data ---
|
||||
Map map;
|
||||
|
||||
public:
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ namespace CGAL {
|
|||
typedef typename Queue::size_type size_type;
|
||||
|
||||
protected:
|
||||
// --- protected datas ---
|
||||
// --- protected data ---
|
||||
Queue q;
|
||||
|
||||
public:
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ namespace CGAL {
|
|||
typedef typename Set::size_type size_type;
|
||||
|
||||
protected:
|
||||
// --- protected datas ---
|
||||
// --- protected data ---
|
||||
Set s;
|
||||
|
||||
public:
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@
|
|||
namespace CGAL {
|
||||
|
||||
/*! \class
|
||||
* A meta-traits class that adds lables to points and to x-monotone curves,
|
||||
* A meta-traits class that adds labels to points and to x-monotone curves,
|
||||
* such that the comparison of two points, as well as the computation of the
|
||||
* intersections between two segments can be easily filtered.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ protected:
|
|||
|
||||
// Data members:
|
||||
const Traits_2* m_traits;
|
||||
bool m_own_traits; // inidicates whether the kernel should be freed up.
|
||||
bool m_own_traits; // indicates whether the kernel should be freed up.
|
||||
|
||||
public:
|
||||
// The pointer to the traits and the flag that indicate ownership should be
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ public:
|
|||
/*! Filter out holes of a polygon with holes.
|
||||
* \param[in] pgn1 The polygon with holes to filter.
|
||||
* \param[in] pgn2 The reference polygon with holes.
|
||||
* \param[out] filtered_pgn1 the filterd polygon.
|
||||
* \param[out] filtered_pgn1 the filtered polygon.
|
||||
*/
|
||||
void operator()(const Polygon_with_holes_2& pgn1,
|
||||
const Polygon_2& pgn2,
|
||||
|
|
@ -73,7 +73,7 @@ public:
|
|||
/*! Filter out holes of a polygon with holes.
|
||||
* \param[in] pgn1 The polygon with holes to filter.
|
||||
* \param[in] pgn2 The reference polygon polygon with holes.
|
||||
* \param[out] filtered_pgn1 the filterd polygon.
|
||||
* \param[out] filtered_pgn1 the filtered polygon.
|
||||
*/
|
||||
void operator()(const Polygon_with_holes_2& pgn1,
|
||||
const Polygon_with_holes_2& pgn2,
|
||||
|
|
|
|||
|
|
@ -182,7 +182,7 @@ public:
|
|||
(label._is_last && _index == 0)));
|
||||
}
|
||||
|
||||
/*! Check whether the given label is the succcessor of this label. */
|
||||
/*! Check whether the given label is the successor of this label. */
|
||||
bool is_next (const X_curve_label& label) const
|
||||
{
|
||||
if (_component == 0)
|
||||
|
|
|
|||
|
|
@ -235,7 +235,7 @@ private:
|
|||
std::vector<Point_2> p1_vertices = vertices_of_polygon(pgn1);
|
||||
std::vector<Point_2> p2_vertices = vertices_of_polygon(pgn2);
|
||||
|
||||
// Init the direcions of both polygons
|
||||
// Init the directions of both polygons
|
||||
std::vector<Direction_2> p1_dirs = directions_of_polygon(p1_vertices);
|
||||
std::vector<Direction_2> p2_dirs = directions_of_polygon(p2_vertices);
|
||||
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@ private:
|
|||
typedef Union_of_segment_cycles_2<Traits_2, Polygon_2> Union_2;
|
||||
|
||||
const Kernel* m_kernel;
|
||||
bool m_own_kernel; // inidicates whether the kernel should be freed up.
|
||||
bool m_own_kernel; // indicates whether the kernel should be freed up.
|
||||
|
||||
// Data members:
|
||||
Equal_2 f_equal;
|
||||
|
|
@ -192,7 +192,7 @@ public:
|
|||
* polygon.
|
||||
* \param pgn1 The first polygon.
|
||||
* \param pgn2 The second polygon.
|
||||
* \param sum_bound Output: A polygon respresenting the outer boundary
|
||||
* \param sum_bound Output: A polygon representing the outer boundary
|
||||
* of the Minkowski sum.
|
||||
* \param sum_holes Output: An output iterator for the holes in the sum,
|
||||
* represented as simple polygons.
|
||||
|
|
|
|||
|
|
@ -75,11 +75,11 @@ private:
|
|||
// Data members:
|
||||
const Decomposition_strategy1* m_decomposition_strategy1;
|
||||
const Decomposition_strategy2* m_decomposition_strategy2;
|
||||
bool m_own_strategy1; // inidicates whether the stategy should be freed up.
|
||||
bool m_own_strategy2; // inidicates whether the stategy should be freed up.
|
||||
bool m_own_strategy1; // indicates whether the strategy should be freed up.
|
||||
bool m_own_strategy2; // indicates whether the strategy should be freed up.
|
||||
|
||||
const Traits_2* m_traits;
|
||||
bool m_own_traits; // inidicates whether the kernel should be freed up.
|
||||
bool m_own_traits; // indicates whether the kernel should be freed up.
|
||||
|
||||
Compare_angle_2 f_compare_angle;
|
||||
Translate_point_2 f_add;
|
||||
|
|
@ -348,7 +348,7 @@ public:
|
|||
}
|
||||
|
||||
private:
|
||||
/*! Merge mergable edges
|
||||
/*! Merge mergeable edges
|
||||
* \param arr (in) The underlying arrangement.
|
||||
*/
|
||||
void simplify(Arrangement_2& arr) const
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@ private:
|
|||
|
||||
// Data members:
|
||||
const Traits_2* m_traits;
|
||||
bool m_own_traits; // inidicates whether the kernel should be freed up.
|
||||
bool m_own_traits; // indicates whether the kernel should be freed up.
|
||||
|
||||
Compare_x_2 f_cmp_x;
|
||||
Intersect_2 f_intersect;
|
||||
|
|
@ -280,7 +280,7 @@ private:
|
|||
CGAL::decompose(arr, std::back_inserter(vd_list));
|
||||
|
||||
// Go over the vertices (given in ascending lexicographical xy-order),
|
||||
// and add segements to the feautres below and above it.
|
||||
// and add segments to the feautres below and above it.
|
||||
typename Vert_decomp_list::iterator it, prev = vd_list.end();
|
||||
for (it = vd_list.begin(); it != vd_list.end(); ++it) {
|
||||
// If the feature above the previous vertex is not the current vertex,
|
||||
|
|
|
|||
|
|
@ -94,7 +94,7 @@ private:
|
|||
typedef std::vector<Point_info_2> Point_vector_2;
|
||||
|
||||
const Kernel* m_kernel;
|
||||
bool m_own_kernel; // inidicates whether the kernel should be freed up.
|
||||
bool m_own_kernel; // indicates whether the kernel should be freed up.
|
||||
|
||||
// Data members:
|
||||
Equal_2 f_equal;
|
||||
|
|
@ -256,7 +256,7 @@ public:
|
|||
|
||||
private:
|
||||
|
||||
/*! Return the succesive index of a 'point info' vector. */
|
||||
/*! Return the successive index of a 'point info' vector. */
|
||||
inline unsigned int _vec_succ(const Point_vector_2& vec,
|
||||
unsigned int i) const
|
||||
{
|
||||
|
|
@ -357,7 +357,7 @@ private:
|
|||
{
|
||||
CGAL_precondition(vec[v_ind].is_reflex);
|
||||
|
||||
// Check whether the visiblity status is already known.
|
||||
// Check whether the visibility status is already known.
|
||||
if (vec[v_ind].is_visible(u_ind)) return (true);
|
||||
if (vec[v_ind].is_non_visible(u_ind)) return (false);
|
||||
|
||||
|
|
|
|||
|
|
@ -180,7 +180,7 @@ class Gaussian_map :
|
|||
CGAL_NEF_TRACEN( "first+current:" << first << "+" << current );
|
||||
typename Nef_polyhedron_3::SHalfedge_around_sface_const_circulator sfc(sec), send(sfc);
|
||||
CGAL_For_all(sfc, send) {
|
||||
CGAL_NEF_TRACEN( "sedge->cirlce() " << sfc->circle() );
|
||||
CGAL_NEF_TRACEN( "sedge->circle() " << sfc->circle() );
|
||||
if(sfc->circle() != current) {
|
||||
if(sfc->circle() != first)
|
||||
++circles;
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ return a unique address.
|
|||
|
||||
\cgalHeading{Implementation}
|
||||
|
||||
Plain type cast of `&*key` to `std::size_t` and devided
|
||||
Plain type cast of `&*key` to `std::size_t` and divided
|
||||
by the size of the `std::iterator_traits<Handle>::%value_type` to
|
||||
avoid correlations with the internal table size, which is a power of
|
||||
two.
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ time elapsed since its creation or last reset. It counts only the time
|
|||
where it is in the running state. The time information is given in seconds.
|
||||
The timer counts also the number of intervals it was running, i.e.\ it
|
||||
counts the number of calls of the `Real_timer::start()` member function since the
|
||||
last reset. If the reset occures while the timer is running it counts as the
|
||||
last reset. If the reset occurs while the timer is running it counts as the
|
||||
first interval.
|
||||
|
||||
\cgalHeading{Implementation}
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ time elapsed since its creation or last reset. It counts only the time
|
|||
where it is in the running state. The time information is given in seconds.
|
||||
The timer counts also the number of intervals it was running, i.e.\ it
|
||||
counts the number of calls of the `Timer::start()` member function since the
|
||||
last reset. If the reset occures while the timer is running it counts as the
|
||||
last reset. If the reset occurs while the timer is running it counts as the
|
||||
first interval.
|
||||
|
||||
\cgalHeading{Implementation}
|
||||
|
|
|
|||
|
|
@ -162,7 +162,7 @@ const Data& operator[](const Key& key) const;
|
|||
/*!
|
||||
|
||||
inserts all keys from the range `[first1,beyond1)`.
|
||||
The data variable for each inserted `key` is initilized with the
|
||||
The data variable for each inserted `key` is initialized with the
|
||||
corresponding value from the range `[first2, first2 +
|
||||
(beyond1-first1))`. Returns `first2 + (beyond1-first1)`.
|
||||
\pre The increment operator must be defined for values
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ bool may_have_common_factor(
|
|||
std::cout<< "The type is modularizable" << std::endl;
|
||||
|
||||
// Enforce IEEE double precision and rounding mode to nearest
|
||||
// before useing modular arithmetic
|
||||
// before using modular arithmetic
|
||||
CGAL::Protect_FPU_rounding<true> pfr(CGAL_FE_TONEAREST);
|
||||
|
||||
// Use Modular_traits to convert to polynomials with modular coefficients
|
||||
|
|
|
|||
|
|
@ -148,7 +148,7 @@ private:
|
|||
}
|
||||
|
||||
|
||||
/* a^-1, using Bezout (extended Euclidian algorithm). */
|
||||
/* a^-1, using Bezout (extended Euclidean algorithm). */
|
||||
static inline
|
||||
double RES_inv (double ri1){
|
||||
CGAL_precondition (ri1 != 0.0);
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
|
||||
/*! \file CGAL/Residue.C
|
||||
test for number type modul
|
||||
test for number type module
|
||||
*/
|
||||
|
||||
#include <CGAL/config.h>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
// Author(s) : Michael Hemmer <mhemmer@uni-mainz.de>
|
||||
|
||||
/*! \file CGAL/Residue.C
|
||||
test for number type modul
|
||||
test for number type module
|
||||
*/
|
||||
|
||||
#include <CGAL/config.h>
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ point location time is either logarithmic when LEDA's persistent
|
|||
dictionaries are present or if not then the point location time is
|
||||
worst-case linear, but experiments show often sublinear runtimes. Ray
|
||||
shooting equals point location plus a walk in the constrained
|
||||
triangulation overlayed on the plane map representation. The cost of
|
||||
triangulation overlaid on the plane map representation. The cost of
|
||||
the walk is proportional to the number of triangles passed in
|
||||
direction `d` until an obstacle is met. In a minimum weight
|
||||
triangulation of the obstacles (the plane map representing the
|
||||
|
|
|
|||
|
|
@ -496,7 +496,7 @@ check_integrity_and_topological_planarity(bool faces) const
|
|||
/* this means all face cycles and all isolated vertices are
|
||||
indeed referenced from a face */
|
||||
/* every isolated vertex increases the component count
|
||||
one face cycle per component is redundent except one
|
||||
one face cycle per component is redundant except one
|
||||
finally check the Euler formula: */
|
||||
CGAL_assertion( v_num - e_num + f_num == 1 + c_num );
|
||||
}
|
||||
|
|
|
|||
|
|
@ -102,7 +102,7 @@ The type generalizes |Vertex_handle|.}*/
|
|||
|
||||
/* note: originally I had the mhavs, mhafs hardwired to Halfedge
|
||||
in this class scope. egcs 290.60 reacted with an internal compiler
|
||||
error; this recursive instatiation scheme works however!
|
||||
error; this recursive instantiation scheme works however!
|
||||
what a shitty world */
|
||||
|
||||
enum { BEFORE = -1, AFTER = 1 };
|
||||
|
|
@ -352,7 +352,7 @@ void link_as_isolated_vertex(Face_handle f, Vertex_handle v) const
|
|||
|
||||
void clear_face_cycle_entries(Face_handle f) const
|
||||
/*{\Mop removes all isolated vertices and halfedges that
|
||||
are entrie points into face cycles from the lists of |f|.}*/
|
||||
are entry points into face cycles from the lists of |f|.}*/
|
||||
{ f->clear_all_entries(); }
|
||||
|
||||
|
||||
|
|
@ -608,7 +608,7 @@ void make_first_out_edge(Halfedge_handle e) const
|
|||
|
||||
void set_adjacency_at_source_between(Halfedge_handle e, Halfedge_handle en)
|
||||
const
|
||||
/*{\Mop makes |e| and |en| neigbors in the cyclic ordered adjacency list
|
||||
/*{\Mop makes |e| and |en| neighbors in the cyclic ordered adjacency list
|
||||
around |v=source(e)|. \precond |source(e)==source(en)|.}*/
|
||||
{ CGAL_assertion(source(e)==source(en));
|
||||
link_as_prev_next_pair(en->opposite(),e);
|
||||
|
|
@ -800,7 +800,7 @@ void PM_decorator<HDS>::clone(const HDS& H) const
|
|||
CGAL::Unique_hash_map<Halfedge_const_iterator,Halfedge_handle> Hnew;
|
||||
CGAL::Unique_hash_map<Face_const_iterator,Face_handle> Fnew;
|
||||
|
||||
/* First clone all objects and store correspondance in three maps.*/
|
||||
/* First clone all objects and store correspondence in three maps.*/
|
||||
Vertex_const_iterator vit, vend = H.vertices_end();
|
||||
for (vit = H.vertices_begin(); vit!=vend; ++vit)
|
||||
Vnew[vit] = this->phds->vertices_push_back(Vertex_base());
|
||||
|
|
@ -867,7 +867,7 @@ clone_skeleton(const HDS& H, const LINKDA& L) const
|
|||
CGAL::Unique_hash_map<Vertex_const_iterator,Vertex_handle> Vnew;
|
||||
CGAL::Unique_hash_map<Halfedge_const_iterator,Halfedge_handle> Hnew;
|
||||
|
||||
/* First clone all objects and store correspondance in the two maps.*/
|
||||
/* First clone all objects and store correspondence in the two maps.*/
|
||||
Vertex_const_iterator vit, vend = H.vertices_end();
|
||||
for (vit = H.vertices_begin(); vit!=vend; ++vit) {
|
||||
Vertex_handle v = this->phds->vertices_push_back(Vertex_base());
|
||||
|
|
|
|||
|
|
@ -458,7 +458,7 @@ and |\Mvar.mark(v,1) = D1.mark(f1)|.}*/
|
|||
create_face_objects(Out);
|
||||
|
||||
|
||||
CGAL_NEF_TRACEN("transfering marks");
|
||||
CGAL_NEF_TRACEN("transferring marks");
|
||||
Face_iterator f = this->faces_begin(); assoc_info(f);
|
||||
for (i=0; i<2; ++i) mark(f,i) = PI[i].mark(PI[i].faces_begin());
|
||||
|
||||
|
|
|
|||
|
|
@ -366,7 +366,7 @@ template <class pNT> class Polynomial :
|
|||
|
||||
|
||||
/*{\Mtext Additionally |\Mname| offers standard arithmetic ring
|
||||
opertions like |+,-,*,+=,-=,*=|. By means of the sign operation we can
|
||||
operations like |+,-,*,+=,-=,*=|. By means of the sign operation we can
|
||||
also offer comparison predicates as $<,>,\leq,\geq$. Where $p_1 < p_2$
|
||||
holds iff $|sign|(p_1 - p_2) < 0$. This data type is fully compliant
|
||||
to the requirements of CGAL number types. \setopdims{3cm}{2cm}}*/
|
||||
|
|
@ -690,7 +690,7 @@ class Polynomial<int> :
|
|||
}
|
||||
|
||||
/*{\Xtext Additionally |\Mname| offers standard arithmetic ring
|
||||
opertions like |+,-,*,+=,-=,*=|. By means of the sign operation we can
|
||||
operations like |+,-,*,+=,-=,*=|. By means of the sign operation we can
|
||||
also offer comparison predicates as $<,>,\leq,\geq$. Where $p_1 < p_2$
|
||||
holds iff $|sign|(p_1 - p_2) < 0$. This data type is fully compliant
|
||||
to the requirements of CGAL number types. \setopdims{3cm}{2cm}}*/
|
||||
|
|
@ -991,7 +991,7 @@ determines the sign for the limit process $x \rightarrow \infty$.
|
|||
|
||||
|
||||
/*{\Xtext Additionally |\Mname| offers standard arithmetic ring
|
||||
opertions like |+,-,*,+=,-=,*=|. By means of the sign operation we can
|
||||
operations like |+,-,*,+=,-=,*=|. By means of the sign operation we can
|
||||
also offer comparison predicates as $<,>,\leq,\geq$. Where $p_1 < p_2$
|
||||
holds iff $|sign|(p_1 - p_2) < 0$. This data type is fully compliant
|
||||
to the requirements of CGAL number types. \setopdims{3cm}{2cm}}*/
|
||||
|
|
|
|||
|
|
@ -345,7 +345,7 @@ public:
|
|||
/*{\Mtypes}*/
|
||||
// define additional types
|
||||
typedef GenericLocation<Node, Edge> Location;
|
||||
/*{\Mtypedef usual return value for the point loaction.}*/
|
||||
/*{\Mtypedef usual return value for the point loction.}*/
|
||||
|
||||
enum Direction { downwards, upwards};
|
||||
/*{\Menum used to specify the direction for the point location.}*/
|
||||
|
|
|
|||
|
|
@ -1031,7 +1031,7 @@ public:
|
|||
dictionaries are present or if not then the point location time is
|
||||
worst-case linear, but experiments show often sublinear runtimes. Ray
|
||||
shooting equals point location plus a walk in the constrained
|
||||
triangulation overlayed on the plane map representation. The cost of
|
||||
triangulation overlaid on the plane map representation. The cost of
|
||||
the walk is proportional to the number of triangles passed in
|
||||
direction |d| until an obstacle is met. In a minimum weight
|
||||
triangulation of the obstacles (the plane map representing the
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ namespace CGAL {
|
|||
|
||||
The second parameter and the third parameter are for future considerations.
|
||||
Neither `Nef_polyhedronItems_3` nor `Nef_polyhedronMarks` is
|
||||
specifed, yet. Do not use any other than the default types for these two
|
||||
specified, yet. Do not use any other than the default types for these two
|
||||
template parameters.
|
||||
|
||||
\sa `CGAL::Nef_polyhedron_3::Vertex`
|
||||
|
|
@ -74,7 +74,7 @@ public:
|
|||
illustrate the incidence of a svertex on a sphere map and of
|
||||
a halfedge in the global structure.
|
||||
|
||||
As part of the global incidence structure, the member fuctions `source`
|
||||
As part of the global incidence structure, the member functions `source`
|
||||
and `target` return the source and target vertex of an edge. The member
|
||||
function `twin()` returns the opposite halfedge.
|
||||
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ This function creates a 3D Nef polyhedron from an OFF file which
|
|||
is read from input stream `in`. The purpose of `OFF_to_nef_3`
|
||||
is to create a Nef polyhedron from an OFF file that cannot be handled
|
||||
by the `Nef_polyhedron_3` constructors. It handles double
|
||||
coordinates while using a homogenous kernel, non-coplanar facets,
|
||||
coordinates while using a homogeneous kernel, non-coplanar facets,
|
||||
surfaces with boundaries, self-intersecting surfaces, and single
|
||||
facets. Every closed volume gets marked. The function returns the
|
||||
number of facets it could not handle.
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
namespace CGAL {
|
||||
|
||||
/// \ingroup PkgNef3IOFunctions
|
||||
/// Converts an objet of type `Nef_polyhedron_3` into a polygon mesh model of `MutableFaceGraph`.
|
||||
/// Converts an object of type `Nef_polyhedron_3` into a polygon mesh model of `MutableFaceGraph`.
|
||||
/// Note that contrary to `Nef_polyhedron_3::convert_to_polyhedron()`, the output is not triangulated
|
||||
/// (but faces with more than one connected component of the boundary).
|
||||
/// The polygon mesh can be triangulated by setting `triangulate_all_faces` to `true` or by calling the function `triangulate_faces()`.
|
||||
|
|
@ -24,7 +24,7 @@ namespace CGAL {
|
|||
void convert_nef_polyhedron_to_polygon_mesh(const Nef_polyhedron& nef, Polygon_mesh& pm, bool triangulate_all_faces = false);
|
||||
|
||||
/// \ingroup PkgNef3IOFunctions
|
||||
/// Converts an objet of type `Nef_polyhedron_3` into a polygon soup.
|
||||
/// Converts an object of type `Nef_polyhedron_3` into a polygon soup.
|
||||
/// The polygons can be triangulated by setting `triangulate_all_faces` to `true`.
|
||||
/// @tparam Nef_polyhedron an object of type `Nef_polyhedron_3`.
|
||||
/// @tparam PointRange a model of the concept `BackInsertionSequence`
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ description, and a data structure that connects these neighborhoods up
|
|||
to a global data structure with edges, facets, and volumes. We offer a
|
||||
rich interface to investigate these data structures, their different
|
||||
elements and their connectivity. We provide affine (rigid)
|
||||
tranformations and a point location query operation. We have a custom
|
||||
transformations and a point location query operation. We have a custom
|
||||
file format for storing and reading Nef polyhedra from files. We offer
|
||||
a simple OpenGL visualization for debugging and illustrations.
|
||||
|
||||
|
|
|
|||
|
|
@ -151,7 +151,7 @@ class Infimaximal_box {
|
|||
create_vertices_on_infibox(SNC_constructor&,
|
||||
const Plane_3&, const std::list<Point_3>&,
|
||||
const Mark&, const Mark&, const Mark&) {
|
||||
// TODO: warning oder assertion einbauen
|
||||
// TODO: create warning or assertion
|
||||
return std::list<typename SNC_constructor::Vertex_handle>();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -249,7 +249,7 @@ public:
|
|||
Iterator( const Node_handle root, const Segment_3& s) {
|
||||
CGAL_assertion_code( first_segment = true);
|
||||
S.push_front( Candidate( root, s));
|
||||
++(*this); // place the interator in the first intersected cell
|
||||
++(*this); // place the iterator in the first intersected cell
|
||||
}
|
||||
Iterator( const Self& i) : S(i.S), node(i.node) {}
|
||||
Self& operator++() {
|
||||
|
|
@ -553,7 +553,7 @@ Node_handle build_kdtree(Vertex_list& V, Halfedge_list& E, Halffacet_list& F,
|
|||
non_efective_splits = 0;
|
||||
|
||||
if(non_efective_splits > 2) {
|
||||
CGAL_NEF_TRACEN("build_kdtree: non efective splits reached maximum");
|
||||
CGAL_NEF_TRACEN("build_kdtree: non effective splits reached maximum");
|
||||
nodes.push_back(Node(V, E, F));
|
||||
return &(nodes.back());
|
||||
}
|
||||
|
|
@ -671,10 +671,10 @@ Segment_3 ray_to_segment(const Ray_3& r) const
|
|||
{
|
||||
CGAL_NEF_TRACEN("Objects_along_ray: input ray: "<<r);
|
||||
Vector_3 vec(r.to_vector());
|
||||
/* First of all, we need to find out wheather we are working over an extended
|
||||
/* First of all, we need to find out whether we are working over an extended
|
||||
* kernel or on a standard kernel. As precondition we have that ray is oriented
|
||||
* in the minus x axis direction. When having an extended kernel, the ray can
|
||||
* be subtituted by a segment with the endpoint on the 'intersection' between
|
||||
* be substituted by a segment with the endpoint on the 'intersection' between
|
||||
* the ray and the bounding infimaximal box. In the presence of a standard
|
||||
* kernel, the intersection is computed with the bounding box with the vertices
|
||||
* of the Nef polyhedron.*/
|
||||
|
|
@ -691,7 +691,7 @@ Segment_3 ray_to_segment(const Ray_3& r) const
|
|||
* ray. When the ray does not intersect the bounding volume, there won't be any
|
||||
* object hit, so it is safe to construct a segment that simply lay in the
|
||||
* unbounded side of the bounding box. This approach is taken instead of somehow
|
||||
* (efficiently) report that there was no hit object, in order to mantain a clear
|
||||
* (efficiently) report that there was no hit object, in order to maintain a clear
|
||||
* interface with the Iterator class.*/
|
||||
Plane_3 pl_on_minus_x = K3_tree::construct_splitting_plane(pt_on_minus_x_plane, c, typename Traits::Kernel::Kernel_tag());
|
||||
Object o = traits.intersect_object()( pl_on_minus_x, r);
|
||||
|
|
|
|||
|
|
@ -123,7 +123,7 @@ namespace OGL {
|
|||
|
||||
// DFacet stores the facet cycle vertices in a continuus C array
|
||||
// of three double components, this is necessary due to the OpenGL
|
||||
// tesselator input format !
|
||||
// tessellator input format !
|
||||
class DFacet {
|
||||
typedef std::vector<Double_triple> Coord_vector;
|
||||
typedef std::vector<unsigned> Cycle_vector;
|
||||
|
|
|
|||
|
|
@ -303,7 +303,7 @@ public:
|
|||
}
|
||||
else if(fc.is_svertex()) {
|
||||
#ifdef CGAL_USE_TRACE
|
||||
// TODO: is there any warranty that the outter facet cycle enty point is always at first
|
||||
// TODO: is there any warranty that the outer facet cycle entry point is always at first
|
||||
// in the cycles list?
|
||||
++fc; while( fc != fce) { CGAL_assertion( fc.is_svertex()); ++fc; }
|
||||
CGAL_NEF_TRACEN( "no adjacent facets were found (but incident edge(s)).");
|
||||
|
|
@ -369,10 +369,10 @@ public:
|
|||
continue;
|
||||
}
|
||||
|
||||
// We have to comapare the two skalar products sk0 and sk1. Therefore
|
||||
// We have to comapare the two scalar products sk0 and sk1. Therefore
|
||||
// we have to normalize the input vectors vec0 and vec1, which means
|
||||
// that we have to divide them by their lengths len0 and len1.
|
||||
// To cicumvent irrational numbers, we sqaure the whole inequality.
|
||||
// To cicumvent irrational numbers, we square the whole inequality.
|
||||
|
||||
FT len0 = vec0.x()*vec0.x()+vec0.y()*vec0.y()+vec0.z()*vec0.z();
|
||||
FT len1 = vec1.x()*vec1.x()+vec1.y()*vec1.y()+vec1.z()*vec1.z();
|
||||
|
|
@ -441,7 +441,7 @@ public:
|
|||
Objects are marked as done, when placed in the output list. We have
|
||||
to maintain a stack of sface candidates (the spherical rubber sectors
|
||||
that provide connectivity at the local graphs of vertices) and facet
|
||||
candiates (the plane pieces in three space also providing
|
||||
candidates (the plane pieces in three space also providing
|
||||
connectivity). Note that we have to take care about the orientation of
|
||||
sobjects and facets. We have to take care that (1) the search along
|
||||
the shell extends along the whole shell structure (2) does not visit
|
||||
|
|
|
|||
|
|
@ -809,7 +809,7 @@ public:
|
|||
|
||||
SFace_iterator f;
|
||||
// First, we classify all the Shere Faces per Shell. For each Shell we
|
||||
// determine its minimum lexicographyly vertex and we check wheter the
|
||||
// determine its minimum lexicographyly vertex and we check whether the
|
||||
// Shell encloses a region (closed surface) or not.
|
||||
CGAL_forall_sfaces(f,*this->sncp()) {
|
||||
// progress++;
|
||||
|
|
@ -926,7 +926,7 @@ public:
|
|||
// The ray here has an special property since it is shooted from the lowest
|
||||
// vertex in a shell, so it would be expected that the ray goes along the
|
||||
// interior of a volume before it hits a 2-skeleton element.
|
||||
// Unfortunatelly, it seems to be possible that several shells are incident
|
||||
// Unfortunately, it seems to be possible that several shells are incident
|
||||
// to this lowest vertex, and in consequence, the ray could also go along
|
||||
// an edge or a facet belonging to a different shell.
|
||||
// This fact invalidates the precondition of the get_visible_facet method,
|
||||
|
|
|
|||
|
|
@ -197,7 +197,7 @@ class SNC_intersection {
|
|||
if( outer_bound_pos != CGAL::ON_BOUNDED_SIDE )
|
||||
return outer_bound_pos;
|
||||
/* The point p is not in the relative interior of the outer face cycle
|
||||
so it is not necesary to know the possition of p with respect to the
|
||||
so it is not necessary to know the position of p with respect to the
|
||||
inner face cycles */
|
||||
Halffacet_cycle_const_iterator fe = f->facet_cycles_end();
|
||||
++fc;
|
||||
|
|
@ -226,7 +226,7 @@ class SNC_intersection {
|
|||
if( inner_bound_pos != CGAL::ON_UNBOUNDED_SIDE )
|
||||
return opposite(inner_bound_pos);
|
||||
/* At this point the point p belongs to relative interior of the facet's
|
||||
outer cycle, and its possition is completely known when it belongs
|
||||
outer cycle, and its position is completely known when it belongs
|
||||
to the clousure of any inner cycle */
|
||||
}
|
||||
return CGAL::ON_BOUNDED_SIDE;
|
||||
|
|
|
|||
|
|
@ -185,7 +185,7 @@ Comparison_result cr;
|
|||
|
||||
/*
|
||||
An edge is considered intersecting a plane if its endpoints lie on the
|
||||
plane or if they lie on diferent sides. Partial tangency is not considered
|
||||
plane or if they lie on different sides. Partial tangency is not considered
|
||||
as intersection, due the fact that a lower dimensional face (the vertex)
|
||||
should be already reported as an object intersecting the plane.
|
||||
*/
|
||||
|
|
@ -209,9 +209,9 @@ Side_of_plane<SNC_decorator>::operator()(Halfedge_handle e) {
|
|||
|
||||
|
||||
/*
|
||||
As for the edges, if a facet is tanget to the plane it is not considered as
|
||||
a interesection since lower dimensional faces, like the edges and vertices
|
||||
where the tangency occurrs, should be reported as the objects intersecting
|
||||
As for the edges, if a facet is tangent to the plane it is not considered as
|
||||
a intersection since lower dimensional faces, like the edges and vertices
|
||||
where the tangency occurs, should be reported as the objects intersecting
|
||||
the plane.
|
||||
So, an intersection is reported if all vertices of the facet lie on plane,
|
||||
for which it is only necessary to check three vertices, or if the facet
|
||||
|
|
|
|||
|
|
@ -111,7 +111,7 @@ class SNC_simplify_base : public SNC_decorator<SNC_structure> {
|
|||
if ( SD.is_closed_at_source( u->twin()) )
|
||||
SD.set_face( tgt, fu);
|
||||
/* TO VERIFY: does is_closed_at_source(u) imply is_isolated(src)?
|
||||
if it is true, the svertex face update is not necesary. */
|
||||
if it is true, the svertex face update is not necessary. */
|
||||
|
||||
SHalfedge_around_facet_circulator next = u;
|
||||
++next;
|
||||
|
|
@ -127,7 +127,7 @@ class SNC_simplify_base : public SNC_decorator<SNC_structure> {
|
|||
}
|
||||
else if(fc.is_shalfloop()) {
|
||||
SHalfloop_handle l(fc);
|
||||
// this code is currenlty not used, but it is potentially need
|
||||
// this code is currently not used, but it is potentially need
|
||||
// in the future, e.g for complex marks or a relative interior
|
||||
// function
|
||||
SFace_handle fu = l->incident_sface(), ftu = l->twin()->incident_sface();
|
||||
|
|
@ -144,7 +144,7 @@ class SNC_simplify_base : public SNC_decorator<SNC_structure> {
|
|||
}
|
||||
|
||||
bool is_part_of_volume(Vertex_handle v)
|
||||
/* determines if a vertex v is part of a volume, cheking if its local
|
||||
/* determines if a vertex v is part of a volume, checking if its local
|
||||
graph is trivial (only one sface with no boundary). */ {
|
||||
SM_decorator SD(&*v);
|
||||
CGAL_assertion( !is_empty_range( SD.sfaces_begin(), SD.sfaces_end()));
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue