summaryrefslogtreecommitdiffstats
path: root/src/math/Vector.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/math/Vector.h')
-rw-r--r--src/math/Vector.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/math/Vector.h b/src/math/Vector.h
index 1274a4b2..44e646e9 100644
--- a/src/math/Vector.h
+++ b/src/math/Vector.h
@@ -9,6 +9,11 @@ public:
#ifdef RWCORE_H
CVector(const RwV3d &v) : x(v.x), y(v.y), z(v.z) {}
+ RwV3d toRwV3d(void) const {
+ RwV3d vecRw = { this->x, this->y, this->z };
+ return vecRw;
+ }
+
operator RwV3d (void) const {
RwV3d vecRw = { this->x, this->y, this->z };
return vecRw;
@@ -46,6 +51,13 @@ public:
y *= invsqrt;
z *= invsqrt;
}
+
+ void Normalise2D(void) {
+ float sq = MagnitudeSqr2D();
+ float invsqrt = RecipSqrt(sq);
+ x *= invsqrt;
+ y *= invsqrt;
+ }
const CVector &operator+=(CVector const &right) {
x += right.x;