newspeoplefor developersdocumentationdownloads

_matrix33 Class Reference
[Math Data Types]

#include <_matrix33.h>

List of all members.


Detailed Description

A generic matrix33 class.

(C) 2002 RadonLabs GmbH

Definition at line 26 of file _matrix33.h.


Public Member Functions

 _matrix33 ()
 constructor 1
 _matrix33 (const _vector3 &v0, const _vector3 &v1, const _vector3 &v2)
 constructor 2
 _matrix33 (const _matrix33 &mx)
 constructor 3
 _matrix33 (float _m11, float _m12, float _m13, float _m21, float _m22, float _m23, float _m31, float _m32, float _m33)
 constructor 4
 _matrix33 (const quaternion &q)
 constructor 5
quaternion get_quaternion () const
 get as quaternion
_vector3 to_euler () const
 get as euler representation
void from_euler (const _vector3 &ea)
 set as euler
void lookat (const _vector3 &from, const _vector3 &to, const _vector3 &up)
 unrestricted lookat
void billboard (const _vector3 &from, const _vector3 &to, const _vector3 &up)
 restricted lookat (billboard)
void set (float m11, float m12, float m13, float m21, float m22, float m23, float m31, float m32, float m33)
 set 1
void set (const _vector3 &v0, const _vector3 &v1, const _vector3 &v2)
 set 2
void set (const _matrix33 &m1)
 set 3
void ident ()
 set to identity
void transpose ()
 set to transpose
bool orthonorm (float limit)
 is orthonormal?
void scale (const _vector3 &s)
 scale
void rotate_x (const float a)
 rotate about global x
void rotate_y (const float a)
 rotates matrix about global y
void rotate_z (const float a)
 rotate about global z
void rotate_local_x (const float a)
 rotate about local x (not very fast)
void rotate_local_y (const float a)
 rotate about local y (not very fast)
void rotate_local_z (const float a)
 rotate about local z (not very fast)
void rotate (const _vector3 &vec, float a)
 rotate about any axis
_vector3 x_component () const
 get x component
_vector3 y_component () const
 get y component
_vector3 z_component () const
 get z component
void operator *= (const _matrix33 &m1)
void mult (const _vector3 &src, _vector3 &dst) const
 multiply source vector into target vector
void translate (const _vector2 &t)
 translate, this treats the matrix as a 2x2 rotation + translate matrix

Public Attributes

float m [3][3]

Static Public Attributes

static const _matrix33 identity = _matrix33()

Constructor & Destructor Documentation

_matrix33::_matrix33  )  [inline]
 

constructor 1

Definition at line 137 of file _matrix33.h.

_matrix33::_matrix33 const _vector3 v0,
const _vector3 v1,
const _vector3 v2
[inline]
 

constructor 2

Definition at line 146 of file _matrix33.h.

_matrix33::_matrix33 const _matrix33 mx  )  [inline]
 

constructor 3

Definition at line 157 of file _matrix33.h.

_matrix33::_matrix33 float  _m11,
float  _m12,
float  _m13,
float  _m21,
float  _m22,
float  _m23,
float  _m31,
float  _m32,
float  _m33
[inline]
 

constructor 4

Definition at line 166 of file _matrix33.h.

_matrix33::_matrix33 const quaternion q  )  [inline]
 

constructor 5

Definition at line 179 of file _matrix33.h.


Member Function Documentation

quaternion _matrix33::get_quaternion  )  const [inline]
 

get as quaternion

Definition at line 203 of file _matrix33.h.

_vector3 _matrix33::to_euler  )  const [inline]
 

get as euler representation

Definition at line 240 of file _matrix33.h.

void _matrix33::from_euler const _vector3 ea  )  [inline]
 

set as euler

Definition at line 291 of file _matrix33.h.

void _matrix33::lookat const _vector3 from,
const _vector3 to,
const _vector3 up
[inline]
 

unrestricted lookat

Definition at line 325 of file _matrix33.h.

void _matrix33::billboard const _vector3 from,
const _vector3 to,
const _vector3 up
[inline]
 

restricted lookat (billboard)

Definition at line 343 of file _matrix33.h.

void _matrix33::set float  m11,
float  m12,
float  m13,
float  m21,
float  m22,
float  m23,
float  m31,
float  m32,
float  m33
[inline]
 

set 1

Definition at line 362 of file _matrix33.h.

void _matrix33::set const _vector3 v0,
const _vector3 v1,
const _vector3 v2
[inline]
 

set 2

Definition at line 376 of file _matrix33.h.

void _matrix33::set const _matrix33 m1  )  [inline]
 

set 3

Definition at line 388 of file _matrix33.h.

void _matrix33::ident  )  [inline]
 

set to identity

Definition at line 398 of file _matrix33.h.

void _matrix33::transpose  )  [inline]
 

set to transpose

Definition at line 408 of file _matrix33.h.

bool _matrix33::orthonorm float  limit  )  [inline]
 

is orthonormal?

Definition at line 422 of file _matrix33.h.

void _matrix33::scale const _vector3 s  )  [inline]
 

scale

Definition at line 443 of file _matrix33.h.

void _matrix33::rotate_x const float  a  )  [inline]
 

rotate about global x

Definition at line 458 of file _matrix33.h.

void _matrix33::rotate_y const float  a  )  [inline]
 

rotates matrix about global y

Definition at line 477 of file _matrix33.h.

void _matrix33::rotate_z const float  a  )  [inline]
 

rotate about global z

Definition at line 496 of file _matrix33.h.

void _matrix33::rotate_local_x const float  a  )  [inline]
 

rotate about local x (not very fast)

Definition at line 515 of file _matrix33.h.

void _matrix33::rotate_local_y const float  a  )  [inline]
 

rotate about local y (not very fast)

Definition at line 529 of file _matrix33.h.

void _matrix33::rotate_local_z const float  a  )  [inline]
 

rotate about local z (not very fast)

Definition at line 543 of file _matrix33.h.

void _matrix33::rotate const _vector3 vec,
float  a
[inline]
 

rotate about any axis

Definition at line 557 of file _matrix33.h.

_vector3 _matrix33::x_component  )  const [inline]
 

get x component

Definition at line 583 of file _matrix33.h.

_vector3 _matrix33::y_component  )  const [inline]
 

get y component

Definition at line 594 of file _matrix33.h.

_vector3 _matrix33::z_component  )  const [inline]
 

get z component

Definition at line 605 of file _matrix33.h.

void _matrix33::operator *= const _matrix33 m1  )  [inline]
 

Definition at line 616 of file _matrix33.h.

void _matrix33::mult const _vector3 src,
_vector3 dst
const [inline]
 

multiply source vector into target vector

multiply source vector with matrix and store in destination vector this eliminates the construction of a temp _vector3 object

Definition at line 636 of file _matrix33.h.

void _matrix33::translate const _vector2 t  )  [inline]
 

translate, this treats the matrix as a 2x2 rotation + translate matrix

Definition at line 648 of file _matrix33.h.


Member Data Documentation

const _matrix33 _matrix33::identity = _matrix33() [static]
 

Definition at line 3 of file _matrix33.cc.

float _matrix33::m[3][3]
 

Definition at line 93 of file _matrix33.h.


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

Copyright © 1999-2005 by the contributing authors. Ideas, requests, problems: Send feedback.