Fixed subtle issue with new consolidated iterator that slightly altered it behavior.
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@549 fdac6126-5c0c-442c-9429-916003d36597
This commit is contained in:
@@ -77,7 +77,7 @@ template <class Mesh> class ConstFaceIterT;
|
||||
template <class Mesh> class FaceIterT;
|
||||
|
||||
|
||||
template <class Mesh, class ValueHandle>
|
||||
template <class Mesh, class ValueHandle, class PrimitiveStatusFnOwner, bool (PrimitiveStatusFnOwner::*PrimitiveStatusFn)() const>
|
||||
class GenericIteratorT {
|
||||
public:
|
||||
//--- Typedefs ---
|
||||
@@ -154,7 +154,7 @@ class GenericIteratorT {
|
||||
|
||||
/// Turn on skipping: automatically skip deleted/hidden elements
|
||||
void enable_skipping() {
|
||||
if (mesh_ && mesh_->has_vertex_status()) {
|
||||
if (mesh_ && (mesh_->*PrimitiveStatusFn)()) {
|
||||
Attributes::StatusInfo status;
|
||||
status.set_deleted(true);
|
||||
status.set_hidden(true);
|
||||
|
||||
@@ -76,10 +76,10 @@ public:
|
||||
*/
|
||||
//@{
|
||||
/// Linear iterator
|
||||
typedef Iterators::GenericIteratorT<This, This::VertexHandle> VertexIter;
|
||||
typedef Iterators::GenericIteratorT<This, This::HalfedgeHandle> HalfedgeIter;
|
||||
typedef Iterators::GenericIteratorT<This, This::EdgeHandle> EdgeIter;
|
||||
typedef Iterators::GenericIteratorT<This, This::FaceHandle> FaceIter;
|
||||
typedef Iterators::GenericIteratorT<This, This::VertexHandle, ArrayKernel, &This::has_vertex_status> VertexIter;
|
||||
typedef Iterators::GenericIteratorT<This, This::HalfedgeHandle, ArrayKernel, &This::has_halfedge_status> HalfedgeIter;
|
||||
typedef Iterators::GenericIteratorT<This, This::EdgeHandle, ArrayKernel, &This::has_edge_status> EdgeIter;
|
||||
typedef Iterators::GenericIteratorT<This, This::FaceHandle, ArrayKernel, &This::has_face_status> FaceIter;
|
||||
|
||||
typedef VertexIter ConstVertexIter;
|
||||
typedef HalfedgeIter ConstHalfedgeIter;
|
||||
|
||||
Reference in New Issue
Block a user