csMatrix3 Class Reference (Crystal Space 2.0 Public API Reference)

| ## Public API Reference

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Friends
csMatrix3 Class Reference
Geometry utilities

A 3x3 matrix. More...

`#include <csgeom/matrix3.h>`

Inheritance diagram for csMatrix3:

List of all members.

## Public Member Functions
csVector3 | Col (size_t n) const
| Get a column from this matrix as a vector.
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 ()
| Construct a matrix, initialized to be the identity.
| 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 (csMatrix3 const &o)
| Copy constructor.
| csMatrix3 (float x, float y, float z, float angle)
| Construct a matrix from axis-angle specifier.
| csMatrix3 (const csQuaternion &quat)
| Construct a matrix with a quaternion.
csString | Description () const
| Return a textual representation of the matrix.
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.
csMatrix3 & | operator*= (const csMatrix3 &m)
| Multiply another matrix with this matrix.
csMatrix3 & | operator*= (float s)
| Multiply this matrix with a scalar.
csMatrix3 | operator+ () const
| Unary + operator.
csMatrix3 & | operator+= (const csMatrix3 &m)
| Add another matrix to this matrix.
csMatrix3 | operator- () const
| Unary - operator.
csMatrix3 & | operator-= (const csMatrix3 &m)
| Subtract another matrix from this matrix.
csMatrix3 & | operator/= (float s)
| Divide this matrix by a scalar.
csMatrix3 & | operator= (const csMatrix3 &o)
| Assign another matrix to this one.
csVector3 | Row (size_t n) const
| Get a row from this matrix as a vector.
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 (float o11, float o12, float o13, float o21, float o22, float o23, float o31, float o32, float o33)
| Set matrix values.
void | Set (csMatrix3 const &o)
| Set matrix values.
void | Set (const csQuaternion &)
| Initialize matrix with a quaternion.
void | Transpose ()
| Transpose this matrix.
## Friends
bool | operator!= (const csMatrix3 &m1, const csMatrix3 &m2)
| Check if two matricies are not equal.
csMatrix3 | operator* (const csMatrix3 &m1, const csMatrix3 &m2)
| Multiply two matricies.
csVector3 | operator* (const csMatrix3 &m, const csVector3 &v)
| Multiply a vector by a matrix (transform it).
csMatrix3 | operator* (const csMatrix3 &m, float f)
| Multiply a matrix and a scalar.
csMatrix3 | operator* (float f, const csMatrix3 &m)
| Multiply a matrix and a scalar.
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 73 of file matrix3.h.

## Member Function Documentation

csVector3 csMatrix3::Col | ( | size_t | n | ) | const`[inline]`

Get a column from this matrix as a vector.

Definition at line 118 of file matrix3.h.

csVector3 csMatrix3::Col1 | ( |  | ) | const`[inline]`

Get the first column of this matrix as a vector.

Definition at line 106 of file matrix3.h.

csVector3 csMatrix3::Col2 | ( |  | ) | const`[inline]`

Get the second column of this matrix as a vector.

Definition at line 110 of file matrix3.h.

csVector3 csMatrix3::Col3 | ( |  | ) | const`[inline]`

Get the third column of this matrix as a vector.

Definition at line 114 of file matrix3.h.

csString csMatrix3::Description | ( |  | ) | const

Return a textual representation of the matrix.

float csMatrix3::Determinant | ( |  | ) | const`[inline]`

Compute the determinant of this matrix.

Definition at line 266 of file matrix3.h.

csMatrix3 csMatrix3::GetInverse | ( |  | ) | const`[inline]`

Return the inverse of this matrix.

Definition at line 250 of file matrix3.h.

csMatrix3 csMatrix3::GetTranspose | ( |  | ) | const`[inline]`

Return the transpose of this matrix.

Definition at line 241 of file matrix3.h.

void csMatrix3::Identity | ( |  | ) | `[inline]`

Set this matrix to the identity matrix.

Definition at line 274 of file matrix3.h.

void csMatrix3::Invert | ( |  | ) | `[inline]`

Invert this matrix.

Definition at line 262 of file matrix3.h.

bool csMatrix3::IsIdentity | ( |  | ) | const`[inline]`

Check if the matrix is identity.

Definition at line 281 of file matrix3.h.

csMatrix3& csMatrix3::operator*= | ( | const csMatrix3 & | m | ) | `[inline]`

Multiply another matrix with this matrix.

Definition at line 175 of file matrix3.h.

csMatrix3& csMatrix3::operator*= | ( | float | s | ) | `[inline]`

Multiply this matrix with a scalar.

Definition at line 201 of file matrix3.h.

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

Unary + operator.

Definition at line 220 of file matrix3.h.

csMatrix3& csMatrix3::operator+= | ( | const csMatrix3 & | m | ) | `[inline]`

Add another matrix to this matrix.

Definition at line 157 of file matrix3.h.

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

Unary - operator.

Definition at line 224 of file matrix3.h.

csMatrix3& csMatrix3::operator-= | ( | const csMatrix3 & | m | ) | `[inline]`

Subtract another matrix from this matrix.

Definition at line 166 of file matrix3.h.

csMatrix3& csMatrix3::operator/= | ( | float | s | ) | `[inline]`

Divide this matrix by a scalar.

Definition at line 210 of file matrix3.h.

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

Assign another matrix to this one.

Definition at line 153 of file matrix3.h.

csVector3 csMatrix3::Row | ( | size_t | n | ) | const`[inline]`

Get a row from this matrix as a vector.

Definition at line 92 of file matrix3.h.

csVector3 csMatrix3::Row1 | ( |  | ) | const`[inline]`

Get the first row of this matrix as a vector.

Definition at line 80 of file matrix3.h.

csVector3 csMatrix3::Row2 | ( |  | ) | const`[inline]`

Get the second row of this matrix as a vector.

Definition at line 84 of file matrix3.h.

csVector3 csMatrix3::Row3 | ( |  | ) | const`[inline]`

Get the third row of this matrix as a vector.

Definition at line 88 of file matrix3.h.

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 132 of file matrix3.h.

void csMatrix3::Set | ( | csMatrix3 const & | o | ) | `[inline]`

Set matrix values.

Definition at line 142 of file matrix3.h.

void csMatrix3::Set | ( | const csQuaternion & |  | ) |

Initialize matrix with a quaternion.

void csMatrix3::Transpose | ( |  | ) | `[inline]`

Transpose this matrix.

Definition at line 232 of file matrix3.h.

## Friends And Related Function Documentation

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

Check if two matricies are not equal.

Definition at line 370 of file matrix3.h.

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

Multiply two matricies.

Definition at line 307 of file matrix3.h.

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

Multiply a vector by a matrix (transform it).

Definition at line 322 of file matrix3.h.

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

Multiply a matrix and a scalar.

Definition at line 330 of file matrix3.h.

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

Multiply a matrix and a scalar.

Definition at line 339 of file matrix3.h.

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

Add two matricies.

Definition at line 289 of file matrix3.h.

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

Subtract two matricies.

Definition at line 298 of file matrix3.h.

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

Divide a matrix by a scalar.

Definition at line 348 of file matrix3.h.

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

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

Definition at line 379 of file matrix3.h.

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

Check if two matricies are equal.

Definition at line 358 of file matrix3.h.

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

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

Definition at line 387 of file matrix3.h.

The documentation for this class was generated from the following file:

- csgeom/matrix3.h