Main Page | Class Hierarchy | Class List | File List | Class Members

Matrix Class Reference

#include <matrix.h>

List of all members.

Public Member Functions

 Matrix ()
 Matrix (DBL d[3][3])
 Matrix (int d)
DBL & operator() (int i, int j)
const DBL & operator() (int i, int j) const
void zero ()
void transpose ()
bool invert ()
void applyFromLeft (const Matrix &m)

Static Public Member Functions

Matrix generateScaleMatrix (const Vector3 &v)
Matrix generateRotationMatrix (const Vector3 &v)


Detailed Description

3x3 transformation matrix.
Author:
Micha Riser


Constructor & Destructor Documentation

Matrix::Matrix  )  [inline]
 

Create uninitialized matrix.

Matrix::Matrix DBL  d[3][3]  )  [inline]
 

Create matrix from array.

Parameters:
d 3x3 array holding the matrix entries

Matrix::Matrix int  d  )  [inline]
 

Create matrix with same entries.

Parameters:
d value for all elements


Member Function Documentation

void Matrix::applyFromLeft const Matrix m  ) 
 

Matrix multiplication. Calculate A = M*A.

Parameters:
m the matrix M

Matrix Matrix::generateRotationMatrix const Vector3 v  )  [static]
 

Create rotation matrix.

Parameters:
v x,y,z rotation values in radians. Rotating is first done around x then around y and finally around z axis

Matrix Matrix::generateScaleMatrix const Vector3 v  )  [static]
 

Create scaling matrix. Elements of v on the diagonal and zeros elsewhere.

Parameters:
v x,y,z scaling value

bool Matrix::invert  ) 
 

Invert matrix.

Returns:
false if matrix is singular else (that means inversion was successful) true

const DBL& Matrix::operator() int  i,
int  j
const [inline]
 

Access to matrix elements in constant matrix.

DBL& Matrix::operator() int  i,
int  j
[inline]
 

Access to matrix elements.

void Matrix::transpose  ) 
 

Transpose matrix.

void Matrix::zero  )  [inline]
 

Set all matrix entries to zero.


The documentation for this class was generated from the following files:
Generated on Thu Jan 27 12:16:06 2005 for raytracer.kdevelop by doxygen 1.3.8