diff options
author | Max-001 <80035972+Max-001@users.noreply.github.com> | 2024-12-11 14:14:43 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-12-11 14:14:43 +0100 |
commit | 78c4a8772526f40c531b5402b56932b0a41e22e8 (patch) | |
tree | 7305c4f88bf177cb8dd704eb9363d3935325804f /src/crepe/api/Vector2.h | |
parent | c45b60941b82dec2097d958b396a117b1634eada (diff) | |
parent | 0dbbbe4bac4ad4fcb9e88908034e90000056363e (diff) |
Merge pull request #68 from lonkaars/max/AI
Max/ai
Diffstat (limited to 'src/crepe/api/Vector2.h')
-rw-r--r-- | src/crepe/api/Vector2.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/crepe/api/Vector2.h b/src/crepe/api/Vector2.h index c278c87..bf9d124 100644 --- a/src/crepe/api/Vector2.h +++ b/src/crepe/api/Vector2.h @@ -66,6 +66,30 @@ struct Vector2 { //! Checks if this vector is not equal to another vector. bool operator!=(const Vector2<T> & other) const; + + //! Truncates the vector to a maximum length. + void truncate(T max); + + //! Normalizes the vector (resulting in vector with a length of 1). + void normalize(); + + //! Returns the length of the vector. + T length() const; + + //! Returns the squared length of the vector. + T length_squared() const; + + //! Returns the dot product (inwendig product) of this vector and another vector. + T dot(const Vector2<T> & other) const; + + //! Returns the distance between this vector and another vector. + T distance(const Vector2<T> & other) const; + + //! Returns the squared distance between this vector and another vector. + T distance_squared(const Vector2<T> & other) const; + + //! Returns the perpendicular vector to this vector. + Vector2 perpendicular() const; }; } // namespace crepe |