CrystalSpace

Public API Reference

csDMatrix3 Class Reference
[Geometry utilities]

A 3x3 matrix. More...

#include <csgeom/math3d_d.h>

List of all members.

Public Member Functions

csDVector3 Col1 () const
 Get the first column of this matrix as a vector.
csDVector3 Col2 () const
 Get the second column of this matrix as a vector.
csDVector3 Col3 () const
 Get the third column of this matrix as a vector.
 csDMatrix3 (double m11, double m12, double m13, double m21, double m22, double m23, double m31, double m32, double m33)
 Construct a matrix and initialize it.
 csDMatrix3 ()
 Construct a matrix, initialized to be the identity.
double Determinant () const
 Compute the determinant of this matrix.
csDMatrix3 GetInverse () const
 Return the inverse of this matrix.
csDMatrix3 GetTranspose () const
 Return the transpose of this matrix.
void Identity ()
 Set this matrix to the identity matrix.
void Invert ()
 Invert this matrix.
csDMatrix3operator *= (double s)
 Multiply this matrix with a scalar.
csDMatrix3operator *= (const csDMatrix3 &m)
 Multiply another matrix with this matrix.
csDMatrix3 operator+ () const
 Unary + operator.
csDMatrix3operator+= (const csDMatrix3 &m)
 Add another matrix to this matrix.
csDMatrix3 operator- () const
 Unary - operator.
csDMatrix3operator-= (const csDMatrix3 &m)
 Subtract another matrix from this matrix.
csDMatrix3operator/= (double s)
 Divide this matrix by a scalar.
csDVector3 Row1 () const
 Get the first row of this matrix as a vector.
csDVector3 Row2 () const
 Get the second row of this matrix as a vector.
csDVector3 Row3 () const
 Get the third row of this matrix as a vector.
void Set (double m11, double m12, double m13, double m21, double m22, double m23, double m31, double m32, double m33)
 Set matrix values.
void Transpose ()
 Transpose this matrix.

Public Attributes

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

Friends

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


Detailed Description

A 3x3 matrix.

Definition at line 223 of file math3d_d.h.


Constructor & Destructor Documentation

csDMatrix3::csDMatrix3 (  ) 

Construct a matrix, initialized to be the identity.

csDMatrix3::csDMatrix3 ( double  m11,
double  m12,
double  m13,
double  m21,
double  m22,
double  m23,
double  m31,
double  m32,
double  m33 
)

Construct a matrix and initialize it.


Member Function Documentation

csDVector3 csDMatrix3::Col1 (  )  const [inline]

Get the first column of this matrix as a vector.

Definition at line 249 of file math3d_d.h.

csDVector3 csDMatrix3::Col2 (  )  const [inline]

Get the second column of this matrix as a vector.

Definition at line 252 of file math3d_d.h.

csDVector3 csDMatrix3::Col3 (  )  const [inline]

Get the third column of this matrix as a vector.

Definition at line 255 of file math3d_d.h.

double csDMatrix3::Determinant (  )  const

Compute the determinant of this matrix.

csDMatrix3 csDMatrix3::GetInverse (  )  const [inline]

Return the inverse of this matrix.

Definition at line 299 of file math3d_d.h.

References m11, m21, and m31.

csDMatrix3 csDMatrix3::GetTranspose (  )  const

Return the transpose of this matrix.

void csDMatrix3::Identity (  ) 

Set this matrix to the identity matrix.

void csDMatrix3::Invert (  )  [inline]

Invert this matrix.

Definition at line 313 of file math3d_d.h.

csDMatrix3& csDMatrix3::operator *= ( double  s  ) 

Multiply this matrix with a scalar.

csDMatrix3& csDMatrix3::operator *= ( const csDMatrix3 m  ) 

Multiply another matrix with this matrix.

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

Unary + operator.

Definition at line 283 of file math3d_d.h.

csDMatrix3& csDMatrix3::operator+= ( const csDMatrix3 m  ) 

Add another matrix to this matrix.

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

Unary - operator.

Definition at line 285 of file math3d_d.h.

csDMatrix3& csDMatrix3::operator-= ( const csDMatrix3 m  ) 

Subtract another matrix from this matrix.

csDMatrix3& csDMatrix3::operator/= ( double  s  ) 

Divide this matrix by a scalar.

csDVector3 csDMatrix3::Row1 (  )  const [inline]

Get the first row of this matrix as a vector.

Definition at line 240 of file math3d_d.h.

csDVector3 csDMatrix3::Row2 (  )  const [inline]

Get the second row of this matrix as a vector.

Definition at line 243 of file math3d_d.h.

csDVector3 csDMatrix3::Row3 (  )  const [inline]

Get the third row of this matrix as a vector.

Definition at line 246 of file math3d_d.h.

void csDMatrix3::Set ( double  m11,
double  m12,
double  m13,
double  m21,
double  m22,
double  m23,
double  m31,
double  m32,
double  m33 
) [inline]

Set matrix values.

Definition at line 258 of file math3d_d.h.

References m11, m12, m13, m21, m22, m23, m31, m32, and m33.

void csDMatrix3::Transpose (  ) 

Transpose this matrix.


Friends And Related Function Documentation

csDMatrix3 operator * ( double  f,
const csDMatrix3 m 
) [friend]

Multiply a matrix and a scalar.

csDMatrix3 operator * ( const csDMatrix3 m,
double  f 
) [friend]

Multiply a matrix and a scalar.

csDVector3 operator * ( const csDMatrix3 m,
const csDVector3 v 
) [friend]

Multiply a vector by a matrix (transform it).

Definition at line 329 of file math3d_d.h.

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

Multiply two matricies.

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

Check if two matricies are not equal.

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

Add two matricies.

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

Subtract two matricies.

csDMatrix3 operator/ ( const csDMatrix3 m,
double  f 
) [friend]

Divide a matrix by a scalar.

bool operator< ( const csDMatrix3 m,
double  f 
) [friend]

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

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

Check if two matricies are equal.

bool operator> ( double  f,
const csDMatrix3 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 1.0.2 by doxygen 1.4.7