diff options
Diffstat (limited to 'src/math/vector2f.cc')
-rw-r--r-- | src/math/vector2f.cc | 32 |
1 files changed, 10 insertions, 22 deletions
diff --git a/src/math/vector2f.cc b/src/math/vector2f.cc index c6f1504..809269e 100644 --- a/src/math/vector2f.cc +++ b/src/math/vector2f.cc @@ -5,22 +5,24 @@ */ #include <cstring> +#include <cmath> #include "math/vector2f.h" -namespace math { +namespace math +{ Vector2f::Vector2f() : x(coord[0]), y(coord[1]) { clear(); } -Vector2f::Vector2f(Vector2f const &other) : x(coord[0]), y(coord[1]) +Vector2f::Vector2f(const Vector2f &other) : x(coord[0]), y(coord[1]) { assign(other); } -Vector2f::Vector2f(float const x, float const y) : x(coord[0]), y(coord[1]) +Vector2f::Vector2f(const float x, const float y) : x(coord[0]), y(coord[1]) { assign(x, y); } @@ -30,49 +32,35 @@ void Vector2f::clear() memset(coord, 0, sizeof(coord)); } -void Vector2f::assign(Vector2f const &other) +void Vector2f::assign(const Vector2f &other) { memcpy(coord, other.coord, sizeof(coord)); } -void Vector2f::assign(float const x, float const y) +void Vector2f::assign(const float x, const float y) { coord[0] = x; coord[1] = y; } -Vector2f &Vector2f::operator=(Vector2f const &other) +Vector2f &Vector2f::operator=(const Vector2f &other) { assign(other); return (*this); } -Vector2f &Vector2f::operator+=(Vector2f const &other) +Vector2f &Vector2f::operator+=(const Vector2f &other) { coord[0] += other.coord[0]; coord[1] += other.coord[1]; return (*this); } -Vector2f &Vector2f::operator-=(Vector2f const &other) +Vector2f &Vector2f::operator-=(const Vector2f &other) { coord[0] -= other.coord[0]; coord[1] -= other.coord[1]; return (*this); } -Vector2f Vector2f::operator-(Vector2f const &other) const -{ - Vector2f v(*this); - v -= other; - return v; -} - -Vector2f Vector2f::operator+(Vector2f const &other) const -{ - Vector2f v(*this); - v += other; - return v; -} - } |