This commit is contained in:
Andreas Fabri 2014-10-02 10:30:58 +02:00
parent 0f82ce4b5a
commit 05038ebdd0
2 changed files with 8 additions and 7 deletions

View File

@ -37,9 +37,9 @@ represent the basic elements of the halfedge data structure:
- `Surface_mesh::Face_index`
- `Surface_mesh::Edge_index`
Descriptors are just a typed wrapper for an index
and should be passed by value. They are
default constructible, which yields an *invalid* element. New
These types are just wrappers for an `unsigned int` and their
main purpose is to guarantee type safety.
They are default constructible, which yields an *invalid* element. New
simplices can be added and removed to the `Surface_mesh` through a
set of low-level functions which do not maintain connectivity. One
exception is `Surface_mesh::add_face()` which tries to add a new
@ -94,7 +94,7 @@ face are oriented counterclockwise, as illustrated in
\cgalFigureRef{FigSurfaceMeshConnectivity}
\section sectionSurfaceMesh_iterators Ranges and Iterators and Circulators
\section sectionSurfaceMesh_iterators Ranges and Iterators
`Surface_mesh` provides iterator ranges to enumerate all vertices,
halfedges, edges, and faces. It provides member functions
@ -106,7 +106,7 @@ library.
The following example shows how to obtain the iterator type from
a range, alternatives for obtaining the begin and end iterator,
and alernatives for range-based for loops.
and alternatives for range-based for loops.
\cgalExample{Surface_mesh/sm_iterators.cpp}

View File

@ -802,7 +802,7 @@ public:
/// \name Range Types
///
/// Each range `R` in this section has a nested type `R::iterator`,
/// is convertible to `std:pair<R::iterator,R::iterator`, so that one can use `boost::tie()`,
/// is convertible to `std:pair<R::iterator,R::iterator>`, so that one can use `boost::tie()`,
/// and can be used with `BOOST_FOREACH()`, as well as with the C++11 range based `for(..)` loop.
///@{
@ -2286,8 +2286,9 @@ adjust_incoming_halfedge(Vertex_index v)
template <typename P>
template <typename Range>
typename Surface_mesh<P>::Face_index
Surface_mesh<P>::add_face(const Range& vertices)
Surface_mesh<P>::add_face(const Range& r)
{
std::vector<Vertex_index> vertices(r.begin(), r.end()); // quick and dirty copy
Vertex_index v;
unsigned int i, ii, n((int)vertices.size()), id;
std::vector<Halfedge_index> halfedges(n);