Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

base::Matrix4 Class Reference

Collaboration diagram for base::Matrix4:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Matrix4 ()
 Matrix4 (const Matrix4 &m)
 Matrix4 (const Matrix3 &m)
 Matrix4 (const Real &s)
 Matrix4 (Real e11, Real e12, Real e13, Real e14, Real e21, Real e22, Real e23, Real e24, Real e31, Real e32, Real e33, Real e34, Real e41, Real e42, Real e43, Real e44)
 Matrix4 (const Matrix3 &orientation, const Point3 &translation)
 Matrix4 (const osg::Matrix &matrix)
 ~Matrix4 ()
Matrix4 & setIdentity () throw ()
Matrix4 & setZero () throw ()
Reale (Int row, Int col) throw ()
const Reale (Int row, Int col) const throw ()
Realat (Int row, Int col) throw (std::out_of_range)
const Realat (Int row, Int col) const throw (std::out_of_range)
Realoperator() (Int row, Int col) throw ()
const Realoperator() (Int row, Int col) const throw ()
Vector4 row (Int row) const
Vector4 column (Int col) const
void setRow (Int row, const Vector3 &r) throw ()
void setRow (Int row, const Vector4 &r) throw ()
void setColumn (Int col, const Vector3 &c) throw ()
void setColumn (Int col, const Vector4 &c) throw ()
void swapColumns (Int col1, Int col2) throw (std::out_of_range)
void swapRows (Int row1, Int row2) throw (std::out_of_range)
Vector4 operator[] (Int r) const
int index (Int row, Int col) const throw ()
Matrix4 & operator= (const Matrix4 &src) throw ()
bool operator== (const Matrix4 &m1) const throw ()
bool equals (const Matrix4 &m1, Real epsilon=consts::epsilon) const throw ()
void setToTranslation (const Vector3 &trans)
void setTranslationComponent (const Vector3 &trans)
Vector3 getTranslationComponent () const
void setRotationAboutZ (Real angle)
Matrix4 & transpose ()
Matrix4 & invert ()
Matrix4 & negate () throw ()
void decomposeLUP (Matrix4 &L, Matrix4 &U, Vector4 &Pi) const
Vector4 solve (const Vector4 &b) const
Matrix4 & operator *= (const Matrix4 &m2)
Matrix4 & operator+= (const Matrix4 &m2)
Matrix4 & operator-= (const Matrix4 &m2)
Matrix4 & operator *= (const Real &s)
Matrix4 & operator/= (const Real &s)
 operator Matrix3 () const
 convert to 3x3 submatrix

 operator osg::Matrix () const
 convert to osg::Matrix

const Realc_array () const
Realc_array ()
void serialize (Serializer &s)
 read or write object state to Serializer


Static Public Member Functions

Vector4 solveLUP (const Matrix4 &L, const Matrix4 &U, const Vector4 &Pi, const Vector4 &b)
void decomposeLUP (const Matrix4 &A, Matrix4 &L, Matrix4 &U, Vector4 &Pi)
Vector4 matrixMulVector (const Matrix4 &m, const Vector4 &v)
Vector4 matrixMulVectorAddVector (const Matrix4 &m, const Vector4 &v, const Vector4 &v2)
Vector4 matrixMulVector (const Matrix4 &m, const Vector3 &v)

Constructor & Destructor Documentation

base::Matrix4::Matrix4  )  [inline]
 

Definition at line 81 of file Matrix4.

References setIdentity().

Referenced by operator=(), setIdentity(), and setZero().

base::Matrix4::Matrix4 const Matrix4 &  m  )  [inline]
 

Definition at line 82 of file Matrix4.

References operator=().

base::Matrix4::Matrix4 const Matrix3 m  )  [inline]
 

Definition at line 83 of file Matrix4.

References base::Matrix3::e(), and e().

base::Matrix4::Matrix4 const Real s  )  [inline, explicit]
 

Definition at line 90 of file Matrix4.

References base::Real.

base::Matrix4::Matrix4 Real  e11,
Real  e12,
Real  e13,
Real  e14,
Real  e21,
Real  e22,
Real  e23,
Real  e24,
Real  e31,
Real  e32,
Real  e33,
Real  e34,
Real  e41,
Real  e42,
Real  e43,
Real  e44
[inline]
 

Definition at line 91 of file Matrix4.

References e(), and base::Real.

base::Matrix4::Matrix4 const Matrix3 orientation,
const Point3 translation
[inline]
 

Definition at line 101 of file Matrix4.

References base::Matrix3::e(), e(), base::Point3, base::Vector3::x, base::Vector3::y, and base::Vector3::z.

base::Matrix4::Matrix4 const osg::Matrix &  matrix  )  [inline]
 

Definition at line 112 of file Matrix4.

References base::Int.

base::Matrix4::~Matrix4  )  [inline]
 

Definition at line 125 of file Matrix4.


Member Function Documentation

const Real& base::Matrix4::at Int  row,
Int  col
const throw (std::out_of_range) [inline]
 

Definition at line 159 of file Matrix4.

References Exception, base::Int, MATRIX4_ACCESS, and base::Real.

Real& base::Matrix4::at Int  row,
Int  col
throw (std::out_of_range) [inline]
 

Definition at line 151 of file Matrix4.

References Exception, base::Int, MATRIX4_ACCESS, and base::Real.

Referenced by operator()().

Real* base::Matrix4::c_array  )  [inline]
 

Definition at line 285 of file Matrix4.

References base::Real.

const Real* base::Matrix4::c_array  )  const [inline]
 

Definition at line 284 of file Matrix4.

References base::Real.

Vector4 base::Matrix4::column Int  col  )  const [inline]
 

Definition at line 189 of file Matrix4.

References e(), and base::Int.

Referenced by robot::operator<<(), and swapColumns().

void base::Matrix4::decomposeLUP const Matrix4 &  A,
Matrix4 &  L,
Matrix4 &  U,
Vector4 Pi
[inline, static]
 

Definition at line 290 of file Matrix4.

void base::Matrix4::decomposeLUP Matrix4 &  L,
Matrix4 &  U,
Vector4 Pi
const
 

const Real& base::Matrix4::e Int  row,
Int  col
const throw () [inline]
 

Definition at line 145 of file Matrix4.

References Assertm, base::Int, MATRIX4_ACCESS, and base::Real.

Real& base::Matrix4::e Int  row,
Int  col
throw () [inline]
 

Definition at line 139 of file Matrix4.

References Assertm, base::Int, MATRIX4_ACCESS, and base::Real.

Referenced by column(), base::Transform::getTranslation(), getTranslationComponent(), Matrix4(), operator()(), base::operator<<(), row(), setColumn(), and setRow().

bool base::Matrix4::equals const Matrix4 &  m1,
Real  epsilon = consts::epsilon
const throw () [inline]
 

Definition at line 248 of file Matrix4.

References base::equals(), and base::Real.

Vector3 base::Matrix4::getTranslationComponent  )  const [inline]
 

Definition at line 258 of file Matrix4.

References e().

int base::Matrix4::index Int  row,
Int  col
const throw () [inline]
 

Definition at line 229 of file Matrix4.

References base::Int, and MATRIX4_ACCESS.

Matrix4& base::Matrix4::invert  ) 
 

Vector4 base::Matrix4::matrixMulVector const Matrix4 &  m,
const Vector3 v
[static]
 

Vector4 base::Matrix4::matrixMulVector const Matrix4 &  m,
const Vector4 v
[static]
 

Vector4 base::Matrix4::matrixMulVectorAddVector const Matrix4 &  m,
const Vector4 v,
const Vector4 v2
[static]
 

Matrix4& base::Matrix4::negate  )  throw ()
 

Matrix4& base::Matrix4::operator *= const Real s  ) 
 

Matrix4& base::Matrix4::operator *= const Matrix4 &  m2  ) 
 

base::Matrix4::operator Matrix3  )  const
 

convert to 3x3 submatrix

base::Matrix4::operator osg::Matrix  )  const
 

convert to osg::Matrix

const Real& base::Matrix4::operator() Int  row,
Int  col
const throw () [inline]
 

Definition at line 176 of file Matrix4.

References at(), e(), base::Int, and base::Real.

Real& base::Matrix4::operator() Int  row,
Int  col
throw () [inline]
 

Definition at line 167 of file Matrix4.

References at(), e(), base::Int, and base::Real.

Matrix4& base::Matrix4::operator+= const Matrix4 &  m2  ) 
 

Matrix4& base::Matrix4::operator-= const Matrix4 &  m2  ) 
 

Matrix4& base::Matrix4::operator/= const Real s  ) 
 

Matrix4& base::Matrix4::operator= const Matrix4 &  src  )  throw () [inline]
 

Definition at line 232 of file Matrix4.

References Matrix4().

Referenced by Matrix4().

bool base::Matrix4::operator== const Matrix4 &  m1  )  const throw () [inline]
 

Definition at line 241 of file Matrix4.

Vector4 base::Matrix4::operator[] Int  r  )  const [inline]
 

Definition at line 225 of file Matrix4.

References base::Int, and row().

Vector4 base::Matrix4::row Int  row  )  const [inline]
 

Definition at line 186 of file Matrix4.

References e(), and base::Int.

Referenced by operator[](), and swapRows().

void base::Matrix4::serialize Serializer s  ) 
 

read or write object state to Serializer

Referenced by base::Serializer::operator()().

void base::Matrix4::setColumn Int  col,
const Vector4 c
throw () [inline]
 

Definition at line 201 of file Matrix4.

References e(), and base::Int.

void base::Matrix4::setColumn Int  col,
const Vector3 c
throw () [inline]
 

Definition at line 198 of file Matrix4.

References e(), and base::Int.

Referenced by swapColumns().

Matrix4& base::Matrix4::setIdentity  )  throw () [inline]
 

Definition at line 128 of file Matrix4.

References Matrix4(), and base::Real.

Referenced by Matrix4().

void base::Matrix4::setRotationAboutZ Real  angle  ) 
 

void base::Matrix4::setRow Int  row,
const Vector4 r
throw () [inline]
 

Definition at line 195 of file Matrix4.

References e(), and base::Int.

void base::Matrix4::setRow Int  row,
const Vector3 r
throw () [inline]
 

Definition at line 192 of file Matrix4.

References e(), and base::Int.

Referenced by swapRows().

void base::Matrix4::setToTranslation const Vector3 trans  ) 
 

void base::Matrix4::setTranslationComponent const Vector3 trans  ) 
 

Matrix4& base::Matrix4::setZero  )  throw () [inline]
 

Definition at line 133 of file Matrix4.

References Matrix4(), and base::Real.

Vector4 base::Matrix4::solve const Vector4 b  )  const
 

Vector4 base::Matrix4::solveLUP const Matrix4 &  L,
const Matrix4 &  U,
const Vector4 Pi,
const Vector4 b
[static]
 

void base::Matrix4::swapColumns Int  col1,
Int  col2
throw (std::out_of_range) [inline]
 

Definition at line 204 of file Matrix4.

References column(), Exception, base::Int, and setColumn().

void base::Matrix4::swapRows Int  row1,
Int  row2
throw (std::out_of_range) [inline]
 

Definition at line 214 of file Matrix4.

References Exception, base::Int, row(), and setRow().

Matrix4& base::Matrix4::transpose  ) 
 


The documentation for this class was generated from the following file:
Generated on Thu Jul 29 16:38:46 2004 for OpenSim by doxygen 1.3.6