3#include <game/mLib/m_angle.hpp>
4#include <game/mLib/m_vec.hpp>
15 mMtx_c(
float _00,
float _01,
float _02,
float _03,
float _10,
float _11,
float _12,
float _13,
float _20,
float _21,
float _22,
float _23);
18 operator Mtx*() {
return &mtx; }
21 operator const Mtx*()
const {
return &mtx; }
37 mVec3_c getTranslation()
const {
44 static mMtx_c createTrans(
const mVec3_c &v) {
mMtx_c mtx; PSMTXTrans(mtx, v.x, v.y, v.z);
return mtx; }
46 mMtx_c &concat(
const mMtx_c &other) { PSMTXConcat(*
this, other, *
this);
return *
this; }
47 mMtx_c &trans(
const mVec3_c &v) { PSMTXTrans(*
this, v.x, v.y, v.z);
return *
this; }
48 mMtx_c &trans(
float x,
float y,
float z) { PSMTXTrans(*
this, x, y, z);
return *
this; }
51 float transX()
const {
return getTranslation().x; }
52 float transY()
const {
return getTranslation().y; }
53 float transZ()
const {
return getTranslation().z; }
A three-dimensional short angle vector.
mAng y
The rotation on the Y axis.
mAng z
The rotation on the Z axis.
mAng x
The rotation on the X axis.
mMtx_c()
Constructs an empty matrix.
void ZrotS(mAng angle)
Generates a rotation matrix for the Z axis with the given angle.
void XYZrotM(mAng xRot, mAng yRot, mAng zRot)
Rotates the matrix on the Z, Y and X axes by the given angles.
void toRot(mAng3_c &out) const
Extracts the rotation vector from the matrix.
void multVecZero(nw4r::math::VEC3 &out) const
Extracts the translation vector from the matrix.
void ZrotM(mAng angle)
Rotates the matrix on the Z axis by the given angle.
void XrotS(mAng angle)
Generates a rotation matrix for the X axis with the given angle.
void YrotS(mAng angle)
Generates a rotation matrix for the Y axis with the given angle.
void ZXYrotM(mAng xRot, mAng yRot, mAng zRot)
Rotates the matrix on the Y, X and Z axes by the given angles.
static mMtx_c Identity
The identity matrix.
void XrotM(mAng angle)
Rotates the matrix on the X axis by the given angle.
void zero()
Zeroes out the matrix.
void YrotM(mAng angle)
Rotates the matrix on the Y axis by the given angle.
A three-dimensional floating point vector.
A one-dimensional short angle vector.