diff --git a/vcg/complex/trimesh/edge_support.h b/vcg/complex/trimesh/edge_support.h index 07a6d20e..9413205b 100644 --- a/vcg/complex/trimesh/edge_support.h +++ b/vcg/complex/trimesh/edge_support.h @@ -55,8 +55,8 @@ namespace vcg struct VertexPairEdgePtr{ VertexPairEdgePtr(VertexPointer _v0,VertexPointer _v1,EdgePointer _ep):v0(_v0),v1(_v1),ep(_ep){if(v0>v1) std::swap(v0,v1);} - const bool operator <(const VertexPairEdgePtr &o){return (v0 == o.v0)? (v1 flagVisited = - vcg::tri::Allocator:: AddPerFaceAttribute(m,""); + typename MeshType::template PerFaceAttributeHandle flagVisited = + vcg::tri::Allocator::template AddPerFaceAttribute(m,""); std::vector borderEdges; // allocate all new half edges @@ -126,7 +126,7 @@ namespace vcg // add all the border edges int borderLength; - std::vector::iterator ebi; + typename std::vector::iterator ebi; for( ebi = borderEdges.begin(); ebi != borderEdges.end(); ++ebi) if( !flagVisited[(*ebi).f][(*ebi).i])// not already inserted { @@ -153,7 +153,7 @@ namespace vcg } firstEdge+=borderLength; } - vcg::tri::Allocator:: DeletePerFaceAttribute(m,flagVisited ); + vcg::tri::Allocator:: template DeletePerFaceAttribute(m,flagVisited ); std::sort(all.begin(),all.end()); assert(all.size() == n_edges);