diff options
Diffstat (limited to 'src/math/math.cpp')
-rw-r--r-- | src/math/math.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/math/math.cpp b/src/math/math.cpp index eeb9d3fa..0cfc2ce9 100644 --- a/src/math/math.cpp +++ b/src/math/math.cpp @@ -60,6 +60,12 @@ CMatrix::RotateX(float x) } void +CMatrix::RotateY(float y) +{ + Rotate(0.0f, y, 0.0f); +} + +void CMatrix::RotateZ(float z) { Rotate(0.0f, 0.0f, z); @@ -178,6 +184,17 @@ CQuaternion::Slerp(const CQuaternion &q1, const CQuaternion &q2, float theta, fl } void +CQuaternion::Set(RwV3d *axis, float angle) +{ + float halfCos = Cos(angle*0.5f); + float halfSin = Sin(angle*0.5f); + x = axis->x*halfSin; + y = axis->y*halfSin; + z = axis->z*halfSin; + w = halfCos; +} + +void CQuaternion::Get(RwMatrix *matrix) { float x2 = x+x; |