Implement Vector2 Less-Than and Greater-Than operators

This commit is contained in:
2024-12-11 01:31:31 -05:00
parent fa6d2fefcc
commit f4d8523bdc
2 changed files with 10 additions and 0 deletions

View File

@@ -121,6 +121,8 @@ namespace J3ML::LinearAlgebra {
bool operator == (const Vector2& rhs) const;
bool operator != (const Vector2& rhs) const;
bool operator > (const Vector2& rhs) const;
bool operator < (const Vector2& rhs) const;
/// Returns an element-wise minimum between two vectors.
[[nodiscard]] Vector2 Min(const Vector2& min) const;

View File

@@ -499,6 +499,14 @@ namespace J3ML::LinearAlgebra {
return std::format("{},{}", x, y);
}
bool Vector2::operator>(const Vector2 &rhs) const {
return this->Magnitude() > rhs.Magnitude();
}
bool Vector2::operator<(const Vector2 &rhs) const {
return this->Magnitude() < rhs.Magnitude();
}
Vector2 operator*(float lhs, const Vector2 &rhs) {
return {lhs * rhs.x, lhs * rhs.y};
}