SilverLining: SilverLining::Matrix4 Class Reference

Public Member Functions | Public Attributes | Friends

# SilverLining::Matrix4 Class Reference

An implementation of a 4x4 matrix and some simple operations on it. More...

`#include <Matrix4.h>`

Inherits SilverLining::MemObject.

Collaboration diagram for SilverLining::Matrix4:
[legend]

List of all members.

## Public Member Functions
| Matrix4 ()
| Default constructor; initializes the matrix to an identity transform.
| Matrix4 (double e11, double e12, double e13, double e14, double e21, double e22, double e23, double e24, double e31, double e32, double e33, double e34, double e41, double e42, double e43, double e44)
| This constructor allows you to initialize the matrix as you please.
| Matrix4 (double *m)
| Initializes the matrix from an array of 16 double-precision values (row-major).
| ~Matrix4 ()
| Destructor.
Matrix4 SILVERLINING_API | operator* (const Matrix4 &mat) const
| Multiplies two matrices together.
Vector4 SILVERLINING_API | operator* (const Vector4 &vec) const
| Transform a point by the matrix.
Vector3 SILVERLINING_API | operator* (const Vector3 &vec) const
| Transform a point by the matrix.
void SILVERLINING_API | Transpose ()
| Transposes the matrix in-place.
double *SILVERLINING_API | GetRow (int row)
| Retrieves a pointer into the requested row of the matrix.
## Public Attributes
double | elem [4][4]
| Data members are public for convenience.
## Friends
Vector4 SILVERLINING_API | operator* (const Vector4 &vec, const Matrix4 &mat)
| Multiplies a 1x3 vector by a matrix, yielding a 1x3 vector.

## Detailed Description

An implementation of a 4x4 matrix and some simple operations on it.

## Constructor & Destructor Documentation

SilverLining::Matrix4::Matrix4 | ( |  | ) | `[inline]`

Default constructor; initializes the matrix to an identity transform.

SilverLining::Matrix4::Matrix4 | ( | double | e11,
|  | double | e12,
|  | double | e13,
|  | double | e14,
|  | double | e21,
|  | double | e22,
|  | double | e23,
|  | double | e24,
|  | double | e31,
|  | double | e32,
|  | double | e33,
|  | double | e34,
|  | double | e41,
|  | double | e42,
|  | double | e43,
|  | double | e44 |
| ) |  |  | `[inline]`

This constructor allows you to initialize the matrix as you please.

SilverLining::Matrix4::Matrix4 | ( | double * | m | ) | `[inline]`

Initializes the matrix from an array of 16 double-precision values (row-major).

SilverLining::Matrix4::~Matrix4 | ( |  | ) | `[inline]`

Destructor.

## Member Function Documentation

double* SILVERLINING_API SilverLining::Matrix4::GetRow | ( | int | row | ) | `[inline]`

Retrieves a pointer into the requested row of the matrix.

Vector4 SILVERLINING_API SilverLining::Matrix4::operator* | ( | const Vector4 & | vec | ) | const

Transform a point by the matrix.

Matrix4 SILVERLINING_API SilverLining::Matrix4::operator* | ( | const Matrix4 & | mat | ) | const

Multiplies two matrices together.

Vector3 SILVERLINING_API SilverLining::Matrix4::operator* | ( | const Vector3 & | vec | ) | const

Transform a point by the matrix.

void SILVERLINING_API SilverLining::Matrix4::Transpose | ( |  | ) | `[inline]`

Transposes the matrix in-place.

## Friends And Related Function Documentation

Vector4 SILVERLINING_API operator* | ( | const Vector4 & | vec,
|  | const Matrix4 & | mat |
| ) |  |  | `[friend]`

Multiplies a 1x3 vector by a matrix, yielding a 1x3 vector.

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

- /home/fkane/sl/trunk/Public Headers/Matrix4.h