Merge branch 'master' of https://www.graphics.rwth-aachen.de:9000/OpenMesh/OpenMesh into featureSplitCopyInternal

This commit is contained in:
Martin Schultz
2017-06-29 10:31:42 +02:00
5 changed files with 89 additions and 6 deletions

View File

@@ -218,7 +218,7 @@ public:
template <class _Vec>
Scalar operator()(const _Vec& _v) const
{
return evaluate(_v, GenProg::Int2Type<_Vec::size_>());
return evaluate(_v, GenProg::Int2Type<vector_traits<_Vec>::size_>());
}
Scalar a() const { return a_; }

View File

@@ -1123,6 +1123,9 @@ public:
ITER_TYPE (CONTAINER_TYPE::*end_fn)() const>
class EntityRange {
public:
typedef ITER_TYPE iterator;
typedef ITER_TYPE const_iterator;
EntityRange(CONTAINER_TYPE &container) : container_(container) {}
ITER_TYPE begin() const { return (container_.*begin_fn)(); }
ITER_TYPE end() const { return (container_.*end_fn)(); }
@@ -1184,12 +1187,15 @@ public:
ITER_TYPE (CONTAINER_TYPE::*end_fn)(CENTER_ENTITY_TYPE) const>
class CirculatorRange {
public:
typedef ITER_TYPE iterator;
typedef ITER_TYPE const_iterator;
CirculatorRange(
const CONTAINER_TYPE &container,
CENTER_ENTITY_TYPE center) :
container_(container), center_(center) {}
ITER_TYPE begin() { return (container_.*begin_fn)(center_); }
ITER_TYPE end() { return (container_.*end_fn)(center_); }
ITER_TYPE begin() const { return (container_.*begin_fn)(center_); }
ITER_TYPE end() const { return (container_.*end_fn)(center_); }
private:
const CONTAINER_TYPE &container_;