From 592c13ab5c6d5e68e0056f914ba286c18c8b2963 Mon Sep 17 00:00:00 2001 From: Max Lyon Date: Mon, 7 Oct 2019 13:05:49 +0200 Subject: [PATCH] add non-member versions of min and max for vector class --- src/OpenMesh/Core/Geometry/Vector11T.hh | 15 +++++++++++++++ src/OpenMesh/Core/Geometry/VectorT.hh | 16 ++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/src/OpenMesh/Core/Geometry/Vector11T.hh b/src/OpenMesh/Core/Geometry/Vector11T.hh index b9113a6a..3ebf2394 100644 --- a/src/OpenMesh/Core/Geometry/Vector11T.hh +++ b/src/OpenMesh/Core/Geometry/Vector11T.hh @@ -759,6 +759,21 @@ VectorT& minimize(VectorT& _v1, VectorT& return _v1.minimize(_v2); } +/// \relates OpenMesh::VectorT +/// non-member max +template +VectorT& max(VectorT& _v1, VectorT& _v2) { + return VectorT(_v1).maximize(_v2); +} + +/// \relates OpenMesh::VectorT +/// non-member min +template +VectorT& min(VectorT& _v1, VectorT& _v2) { + return VectorT(_v1).minimize(_v2); +} + + //== TYPEDEFS ================================================================= /** 1-byte signed vector */ diff --git a/src/OpenMesh/Core/Geometry/VectorT.hh b/src/OpenMesh/Core/Geometry/VectorT.hh index ef407a2a..cf8e7c40 100644 --- a/src/OpenMesh/Core/Geometry/VectorT.hh +++ b/src/OpenMesh/Core/Geometry/VectorT.hh @@ -317,6 +317,22 @@ VectorT& minimize(VectorT& _v1, VectorT& } +/// \relates OpenMesh::VectorT +/// non-member max +template +VectorT& max(VectorT& _v1, VectorT& _v2) { + return VectorT(_v1).maximize(_v2); +} + + +/// \relates OpenMesh::VectorT +/// non-member min +template +VectorT& max(VectorT& _v1, VectorT& _v2) { + return VectorT(_v1).minimize(_v2); +} + + //== TYPEDEFS ================================================================= /** 1-byte signed vector */