SPMatrix Class Reference

#include <SPMatrix.h>

Inherited by Transformation.

List of all members.

Public Member Functions

 SPMatrix ()
 SPMatrix (const SPMatrix &m)
 SPMatrix (float _11, float _12, float _13, float _14, float _21, float _22, float _23, float _24, float _31, float _32, float _33, float _34, float _41, float _42, float _43, float _44)
 SPMatrix (const float *arr)
SPMatrixoperator= (const SPMatrix &a)
float & operator() (int i, int j)
F32vec4 & operator() (int i)
F32vec4 & operator[] (int i)
F32vec4 & operator[] (int i) const
SPMatrixoperator*= (const SPMatrix &)
SPMatrixoperator*= (const float)
SPMatrixoperator+= (const SPMatrix &)
SPMatrixoperator-= (const SPMatrix &)
void Transpose ()
float Inverse ()
float Determinant ()
float MinValue ()
float MaxValue ()
void ZeroMatrix ()
void IdentityMatrix ()
void TranslateMatrix (const float dx, const float dy, const float dz)
void ScaleMatrix (const float a, const float b, const float c)
void ScaleMatrix (const float a)
void RotateXMatrix (const float rads)
void RotateYMatrix (const float rads)
void RotateZMatrix (const float rads)
void IdentityMatrix ()
void TranslateMatrix (const float dx, const float dy, const float dz)
void ScaleMatrix (const float a, const float b, const float c)
SPMatrixoperator*= (const SPMatrix &)

Public Attributes

union {
   struct {
      __m128   _L1
      __m128   _L2
      __m128   _L3
      __m128   _L4
   } 
   struct {
      float   _11
      float   _12
      float   _13
      float   _14
      float   _21
      float   _22
      float   _23
      float   _24
      float   _31
      float   _32
      float   _33
      float   _34
      float   _41
      float   _42
      float   _43
      float   _44
   } 
}; 
union {
   struct {
      __m128   _L1
      __m128   _L2
      __m128   _L3
      __m128   _L4
   } 
   struct {
      float   _11
      float   _12
      float   _13
      float   _14
      float   _21
      float   _22
      float   _23
      float   _24
      float   _31
      float   _32
      float   _33
      float   _34
      float   _41
      float   _42
      float   _43
      float   _44
   } 
}; 

Friends

SPMatrix operator* (const SPMatrix &, const SPMatrix &)
SPMatrix operator+ (const SPMatrix &, const SPMatrix &)
SPMatrix operator- (const SPMatrix &, const SPMatrix &)
SPMatrix operator+ (const SPMatrix &)
SPMatrix operator- (const SPMatrix &)
SPMatrix operator* (const SPMatrix &, const float)
SPMatrix operator* (const float, const SPMatrix &)


Constructor & Destructor Documentation

SPMatrix::SPMatrix (  )  [inline]

SPMatrix::SPMatrix ( const SPMatrix m  )  [inline]

SPMatrix::SPMatrix ( float  _11,
float  _12,
float  _13,
float  _14,
float  _21,
float  _22,
float  _23,
float  _24,
float  _31,
float  _32,
float  _33,
float  _34,
float  _41,
float  _42,
float  _43,
float  _44 
) [inline]

SPMatrix::SPMatrix ( const float *  arr  )  [inline]


Member Function Documentation

float SPMatrix::Determinant (  ) 

void SPMatrix::IdentityMatrix (  ) 

void SPMatrix::IdentityMatrix (  )  [inline]

float SPMatrix::Inverse (  ) 

float SPMatrix::MaxValue (  ) 

float SPMatrix::MinValue (  ) 

F32vec4& SPMatrix::operator() ( int  i  )  [inline]

float& SPMatrix::operator() ( int  i,
int  j 
) [inline]

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

SPMatrix & SPMatrix::operator*= ( const float  s  )  [inline]

SPMatrix & SPMatrix::operator*= ( const SPMatrix B  )  [inline]

SPMatrix & SPMatrix::operator+= ( const SPMatrix B  )  [inline]

SPMatrix & SPMatrix::operator-= ( const SPMatrix B  )  [inline]

SPMatrix& SPMatrix::operator= ( const SPMatrix a  )  [inline]

F32vec4& SPMatrix::operator[] ( int  i  )  const [inline]

F32vec4& SPMatrix::operator[] ( int  i  )  [inline]

void SPMatrix::RotateXMatrix ( const float  rads  ) 

void SPMatrix::RotateYMatrix ( const float  rads  ) 

void SPMatrix::RotateZMatrix ( const float  rads  ) 

void SPMatrix::ScaleMatrix ( const float  a,
const float  b,
const float  c 
)

void SPMatrix::ScaleMatrix ( const float  a  ) 

void SPMatrix::ScaleMatrix ( const float  a,
const float  b,
const float  c 
)

void SPMatrix::TranslateMatrix ( const float  dx,
const float  dy,
const float  dz 
)

void SPMatrix::TranslateMatrix ( const float  dx,
const float  dy,
const float  dz 
)

void SPMatrix::Transpose (  )  [inline]

void SPMatrix::ZeroMatrix (  )  [inline]


Friends And Related Function Documentation

SPMatrix operator* ( const float  s,
const SPMatrix A 
) [friend]

SPMatrix operator* ( const SPMatrix A,
const float  s 
) [friend]

SPMatrix operator* ( const SPMatrix A,
const SPMatrix B 
) [friend]

SPMatrix operator+ ( const SPMatrix A  )  [friend]

SPMatrix operator+ ( const SPMatrix A,
const SPMatrix B 
) [friend]

SPMatrix operator- ( const SPMatrix A  )  [friend]

SPMatrix operator- ( const SPMatrix A,
const SPMatrix B 
) [friend]


Member Data Documentation

union { ... }

union { ... }

__m128 SPMatrix::_L1

__m128 SPMatrix::_L2

__m128 SPMatrix::_L3

__m128 SPMatrix::_L4


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

Generated on Fri Nov 21 16:18:02 2008 for Raytracer by  doxygen 1.5.7.1