|
Public Member Functions |
| Matrix3 () |
| Default constructor.
|
| Matrix3 (const Real arr[3][3]) |
| Matrix3 (const Matrix3 &rkMatrix) |
| Matrix3 (Real fEntry00, Real fEntry01, Real fEntry02, Real fEntry10, Real fEntry11, Real fEntry12, Real fEntry20, Real fEntry21, Real fEntry22) |
Real * | operator[] (size_t iRow) const |
Vector3 | GetColumn (size_t iCol) const |
void | SetColumn (size_t iCol, const Vector3 &vec) |
void | FromAxes (const Vector3 &xAxis, const Vector3 &yAxis, const Vector3 &zAxis) |
Matrix3 & | operator= (const Matrix3 &rkMatrix) |
bool | operator== (const Matrix3 &rkMatrix) const |
bool | operator!= (const Matrix3 &rkMatrix) const |
Matrix3 | operator+ (const Matrix3 &rkMatrix) const |
Matrix3 | operator- (const Matrix3 &rkMatrix) const |
Matrix3 | operator * (const Matrix3 &rkMatrix) const |
Matrix3 | operator- () const |
Vector3 | operator * (const Vector3 &rkVector) const |
Matrix3 | operator * (Real fScalar) const |
Matrix3 | Transpose () const |
bool | Inverse (Matrix3 &rkInverse, Real fTolerance=1e-06) const |
Matrix3 | Inverse (Real fTolerance=1e-06) const |
Real | Determinant () const |
void | SingularValueDecomposition (Matrix3 &rkL, Vector3 &rkS, Matrix3 &rkR) const |
void | SingularValueComposition (const Matrix3 &rkL, const Vector3 &rkS, const Matrix3 &rkR) |
void | Orthonormalize () |
void | QDUDecomposition (Matrix3 &rkQ, Vector3 &rkD, Vector3 &rkU) const |
Real | SpectralNorm () const |
void | ToAxisAngle (Vector3 &rkAxis, Radian &rfAngle) const |
void | ToAxisAngle (Vector3 &rkAxis, Degree &rfAngle) const |
void | FromAxisAngle (const Vector3 &rkAxis, const Radian &fRadians) |
bool | ToEulerAnglesXYZ (Radian &rfYAngle, Radian &rfPAngle, Radian &rfRAngle) const |
bool | ToEulerAnglesXZY (Radian &rfYAngle, Radian &rfPAngle, Radian &rfRAngle) const |
bool | ToEulerAnglesYXZ (Radian &rfYAngle, Radian &rfPAngle, Radian &rfRAngle) const |
bool | ToEulerAnglesYZX (Radian &rfYAngle, Radian &rfPAngle, Radian &rfRAngle) const |
bool | ToEulerAnglesZXY (Radian &rfYAngle, Radian &rfPAngle, Radian &rfRAngle) const |
bool | ToEulerAnglesZYX (Radian &rfYAngle, Radian &rfPAngle, Radian &rfRAngle) const |
void | FromEulerAnglesXYZ (const Radian &fYAngle, const Radian &fPAngle, const Radian &fRAngle) |
void | FromEulerAnglesXZY (const Radian &fYAngle, const Radian &fPAngle, const Radian &fRAngle) |
void | FromEulerAnglesYXZ (const Radian &fYAngle, const Radian &fPAngle, const Radian &fRAngle) |
void | FromEulerAnglesYZX (const Radian &fYAngle, const Radian &fPAngle, const Radian &fRAngle) |
void | FromEulerAnglesZXY (const Radian &fYAngle, const Radian &fPAngle, const Radian &fRAngle) |
void | FromEulerAnglesZYX (const Radian &fYAngle, const Radian &fPAngle, const Radian &fRAngle) |
void | EigenSolveSymmetric (Real afEigenvalue[3], Vector3 akEigenvector[3]) const |
Static Public Member Functions |
void | TensorProduct (const Vector3 &rkU, const Vector3 &rkV, Matrix3 &rkProduct) |
Static Public Attributes |
const Real | EPSILON |
const Matrix3 | ZERO |
const Matrix3 | IDENTITY |
Protected Member Functions |
void | Tridiagonal (Real afDiag[3], Real afSubDiag[3]) |
bool | QLAlgorithm (Real afDiag[3], Real afSubDiag[3]) |
Static Protected Member Functions |
void | Bidiagonalize (Matrix3 &kA, Matrix3 &kL, Matrix3 &kR) |
void | GolubKahanStep (Matrix3 &kA, Matrix3 &kL, Matrix3 &kR) |
Real | MaxCubicRoot (Real afCoeff[3]) |
Protected Attributes |
Real | m [3][3] |
Static Protected Attributes |
const Real | ms_fSvdEpsilon |
const unsigned int | ms_iSvdMaxIterations |
Friends |
class | Matrix4 |
_OgreExport friend Vector3 | operator * (const Vector3 &rkVector, const Matrix3 &rkMatrix) |
_OgreExport friend Matrix3 | operator * (Real fScalar, const Matrix3 &rkMatrix) |