diff --git a/include/assimp/vector3.h b/include/assimp/vector3.h index 9edaf5bf6..a4c33b194 100644 --- a/include/assimp/vector3.h +++ b/include/assimp/vector3.h @@ -88,6 +88,7 @@ public: // comparison bool operator== (const aiVector3t& other) const; bool operator!= (const aiVector3t& other) const; + bool operator < (const aiVector3t& other) const; bool Equal(const aiVector3t& other, TReal epsilon = 1e-6) const; diff --git a/include/assimp/vector3.inl b/include/assimp/vector3.inl index 93f317645..f69bea9a6 100644 --- a/include/assimp/vector3.inl +++ b/include/assimp/vector3.inl @@ -159,6 +159,11 @@ AI_FORCE_INLINE bool aiVector3t::Equal(const aiVector3t& other, TR } // ------------------------------------------------------------------------------------------------ template +AI_FORCE_INLINE bool aiVector3t::operator < (const aiVector3t& other) const { + return x != other.x ? x < other.x : y != other.y ? y < other.y : z < other.z; +} +// ------------------------------------------------------------------------------------------------ +template AI_FORCE_INLINE const aiVector3t aiVector3t::SymMul(const aiVector3t& o) { return aiVector3t(x*o.x,y*o.y,z*o.z); }