CrystalSpace

Public API Reference

csMatrix3 Class Reference
[Geometry utilities]

A 3x3 matrix. More...

#include <csgeom/matrix3.h>

Inheritance diagram for csMatrix3:

Inheritance graph
[legend]
List of all members.

Public Member Functions

csVector3 Col1 () const
 Get the first column of this matrix as a vector.
csVector3 Col2 () const
 Get the second column of this matrix as a vector.
csVector3 Col3 () const
 Get the third column of this matrix as a vector.
 csMatrix3 (const csQuaternion &quat)
 Construct a matrix with a quaternion.
 csMatrix3 (float x, float y, float z, float angle)
 Construct a matrix from axis-angle specifier.
 csMatrix3 (csMatrix3 const &o)
 Copy constructor.
 csMatrix3 (float am11, float am12, float am13, float am21, float am22, float am23, float am31, float am32, float am33)
 Construct a matrix and initialize it.
 csMatrix3 ()
 Construct a matrix, initialized to be the identity.
float Determinant () const
 Compute the determinant of this matrix.
csMatrix3 GetInverse () const
 Return the inverse of this matrix.
csMatrix3 GetTranspose () const
 Return the transpose of this matrix.
void Identity ()
 Set this matrix to the identity matrix.
void Invert ()
 Invert this matrix.
bool IsIdentity () const
 Check if the matrix is identity.
csMatrix3operator *= (float)
 Multiply this matrix with a scalar.
csMatrix3operator *= (const csMatrix3 &)
 Multiply another matrix with this matrix.
csMatrix3 operator+ () const
 Unary + operator.
csMatrix3operator+= (const csMatrix3 &)
 Add another matrix to this matrix.
csMatrix3 operator- () const
 Unary - operator.
csMatrix3operator-= (const csMatrix3 &)
 Subtract another matrix from this matrix.
csMatrix3operator/= (float)
 Divide this matrix by a scalar.
csMatrix3operator= (const csMatrix3 &o)
 Assign another matrix to this one.
csVector3 Row1 () const
 Get the first row of this matrix as a vector.
csVector3 Row2 () const
 Get the second row of this matrix as a vector.
csVector3 Row3 () const
 Get the third row of this matrix as a vector.
void Set (const csQuaternion &)
 Initialize matrix with a quaternion.
void Set (csMatrix3 const &o)
void Set (float o11, float o12, float o13, float o21, float o22, float o23, float o31, float o32, float o33)
 Set matrix values.
void Transpose ()
 Transpose this matrix.

Public Attributes

float m11
float m12
float m13
float m21
float m22
float m23
float m31
float m32
float m33

Friends

csMatrix3 operator * (float f, const csMatrix3 &m)
 Multiply a matrix and a scalar.
csMatrix3 operator * (const csMatrix3 &m, float f)
 Multiply a matrix and a scalar.
csVector3 operator * (const csMatrix3 &m, const csVector3 &v)
 Multiply a vector by a matrix (transform it).
csMatrix3 operator * (const csMatrix3 &m1, const csMatrix3 &m2)
 Multiply two matricies.
bool operator!= (const csMatrix3 &m1, const csMatrix3 &m2)
 Check if two matricies are not equal.
csMatrix3 operator+ (const csMatrix3 &m1, const csMatrix3 &m2)
 Add two matricies.
csMatrix3 operator- (const csMatrix3 &m1, const csMatrix3 &m2)
 Subtract two matricies.
csMatrix3 operator/ (const csMatrix3 &m, float f)
 Divide a matrix by a scalar.
bool operator< (const csMatrix3 &m, float f)
 Test if each component of a matrix is less than a small epsilon value.
bool operator== (const csMatrix3 &m1, const csMatrix3 &m2)
 Check if two matricies are equal.
bool operator> (float f, const csMatrix3 &m)
 Test if each component of a matrix is greater than a small epsilon value.

Detailed Description

A 3x3 matrix.

Definition at line 38 of file matrix3.h.


Constructor & Destructor Documentation

csMatrix3::csMatrix3 (  )  [inline]

Construct a matrix, initialized to be the identity.

Definition at line 47 of file matrix3.h.

csMatrix3::csMatrix3 ( float  am11,
float  am12,
float  am13,
float  am21,
float  am22,
float  am23,
float  am31,
float  am32,
float  am33 
) [inline]

Construct a matrix and initialize it.

Definition at line 54 of file matrix3.h.

csMatrix3::csMatrix3 ( csMatrix3 const &  o  )  [inline]

Copy constructor.

Definition at line 63 of file matrix3.h.

csMatrix3::csMatrix3 ( float  x,
float  y,
float  z,
float  angle 
)

Construct a matrix from axis-angle specifier.

csMatrix3::csMatrix3 ( const csQuaternion quat  )  [inline, explicit]

Construct a matrix with a quaternion.

Definition at line 69 of file matrix3.h.


Member Function Documentation

csVector3 csMatrix3::Col1 (  )  const [inline]

Get the first column of this matrix as a vector.

Definition at line 81 of file matrix3.h.

csVector3 csMatrix3::Col2 (  )  const [inline]

Get the second column of this matrix as a vector.

Definition at line 84 of file matrix3.h.

csVector3 csMatrix3::Col3 (  )  const [inline]

Get the third column of this matrix as a vector.

Definition at line 87 of file matrix3.h.

float csMatrix3::Determinant (  )  const

Compute the determinant of this matrix.

csMatrix3 csMatrix3::GetInverse (  )  const [inline]

Return the inverse of this matrix.

Definition at line 144 of file matrix3.h.

References m11, m21, and m31.

Referenced by csReversibleTransform::SetO2T(), and csReversibleTransform::SetT2O().

csMatrix3 csMatrix3::GetTranspose (  )  const

Return the transpose of this matrix.

Referenced by csOrthoTransform::SetO2T(), and csOrthoTransform::SetT2O().

void csMatrix3::Identity (  ) 

Set this matrix to the identity matrix.

void csMatrix3::Invert (  )  [inline]

Invert this matrix.

Definition at line 156 of file matrix3.h.

bool csMatrix3::IsIdentity (  )  const

Check if the matrix is identity.

csMatrix3& csMatrix3::operator *= ( float   ) 

Multiply this matrix with a scalar.

csMatrix3& csMatrix3::operator *= ( const csMatrix3  ) 

Multiply another matrix with this matrix.

csMatrix3 csMatrix3::operator+ (  )  const [inline]

Unary + operator.

Definition at line 128 of file matrix3.h.

csMatrix3& csMatrix3::operator+= ( const csMatrix3  ) 

Add another matrix to this matrix.

csMatrix3 csMatrix3::operator- (  )  const [inline]

Unary - operator.

Definition at line 130 of file matrix3.h.

csMatrix3& csMatrix3::operator-= ( const csMatrix3  ) 

Subtract another matrix from this matrix.

csMatrix3& csMatrix3::operator/= ( float   ) 

Divide this matrix by a scalar.

csMatrix3& csMatrix3::operator= ( const csMatrix3 o  )  [inline]

Assign another matrix to this one.

Definition at line 110 of file matrix3.h.

csVector3 csMatrix3::Row1 (  )  const [inline]

Get the first row of this matrix as a vector.

Definition at line 72 of file matrix3.h.

csVector3 csMatrix3::Row2 (  )  const [inline]

Get the second row of this matrix as a vector.

Definition at line 75 of file matrix3.h.

csVector3 csMatrix3::Row3 (  )  const [inline]

Get the third row of this matrix as a vector.

Definition at line 78 of file matrix3.h.

void csMatrix3::Set ( const csQuaternion  ) 

Initialize matrix with a quaternion.

void csMatrix3::Set ( float  o11,
float  o12,
float  o13,
float  o21,
float  o22,
float  o23,
float  o31,
float  o32,
float  o33 
) [inline]

Set matrix values.

Definition at line 90 of file matrix3.h.

void csMatrix3::Transpose (  ) 

Transpose this matrix.


Friends And Related Function Documentation

csMatrix3 operator * ( float  f,
const csMatrix3 m 
) [friend]

Multiply a matrix and a scalar.

csMatrix3 operator * ( const csMatrix3 m,
float  f 
) [friend]

Multiply a matrix and a scalar.

csVector3 operator * ( const csMatrix3 m,
const csVector3 v 
) [friend]

Multiply a vector by a matrix (transform it).

Definition at line 178 of file matrix3.h.

csMatrix3 operator * ( const csMatrix3 m1,
const csMatrix3 m2 
) [friend]

Multiply two matricies.

bool operator!= ( const csMatrix3 m1,
const csMatrix3 m2 
) [friend]

Check if two matricies are not equal.

csMatrix3 operator+ ( const csMatrix3 m1,
const csMatrix3 m2 
) [friend]

Add two matricies.

csMatrix3 operator- ( const csMatrix3 m1,
const csMatrix3 m2 
) [friend]

Subtract two matricies.

csMatrix3 operator/ ( const csMatrix3 m,
float  f 
) [friend]

Divide a matrix by a scalar.

bool operator< ( const csMatrix3 m,
float  f 
) [friend]

Test if each component of a matrix is less than a small epsilon value.

bool operator== ( const csMatrix3 m1,
const csMatrix3 m2 
) [friend]

Check if two matricies are equal.

bool operator> ( float  f,
const csMatrix3 m 
) [friend]

Test if each component of a matrix is greater than a small epsilon value.


The documentation for this class was generated from the following file:
Generated for Crystal Space by doxygen 1.4.7