summaryrefslogtreecommitdiffstats
path: root/src/math/Vector.h
diff options
context:
space:
mode:
authorSergeanur <s.anureev@yandex.ua>2020-12-18 01:57:54 +0100
committerSergeanur <s.anureev@yandex.ua>2020-12-18 01:57:54 +0100
commite9a567034818c5e3338120958061e4a4278d97da (patch)
tree20293ced9c835a859071400fdbb3338b90159846 /src/math/Vector.h
parentPreAllocateRwObjects (diff)
downloadre3-e9a567034818c5e3338120958061e4a4278d97da.tar
re3-e9a567034818c5e3338120958061e4a4278d97da.tar.gz
re3-e9a567034818c5e3338120958061e4a4278d97da.tar.bz2
re3-e9a567034818c5e3338120958061e4a4278d97da.tar.lz
re3-e9a567034818c5e3338120958061e4a4278d97da.tar.xz
re3-e9a567034818c5e3338120958061e4a4278d97da.tar.zst
re3-e9a567034818c5e3338120958061e4a4278d97da.zip
Diffstat (limited to 'src/math/Vector.h')
-rw-r--r--src/math/Vector.h25
1 files changed, 12 insertions, 13 deletions
diff --git a/src/math/Vector.h b/src/math/Vector.h
index 082b296f..776bfcfe 100644
--- a/src/math/Vector.h
+++ b/src/math/Vector.h
@@ -1,23 +1,22 @@
#pragma once
-class CVector
+class CVector : public RwV3d
{
public:
- float x, y, z;
CVector(void) {}
- CVector(float x, float y, float z) : x(x), y(y), z(z) {}
-#ifdef RWCORE_H
- CVector(const RwV3d &v) : x(v.x), y(v.y), z(v.z) {}
-
- operator RwV3d (void) const {
- RwV3d vecRw = { this->x, this->y, this->z };
- return vecRw;
+ CVector(float x, float y, float z)
+ {
+ this->x = x;
+ this->y = y;
+ this->z = z;
}
-
- operator RwV3d *(void) {
- return (RwV3d*)this;
+
+ CVector(const RwV3d &v)
+ {
+ x = v.x;
+ y = v.y;
+ z = v.z;
}
-#endif
// (0,1,0) means no rotation. So get right vector and its atan
float Heading(void) const { return Atan2(-x, y); }
float Magnitude(void) const { return Sqrt(x*x + y*y + z*z); }