ML Reference
MeVis/Foundation/Sources/MLLinearAlgebra/mlMatrix3.h File Reference

Template class for a 3x3 matrix of 3 rows of Tvec3 vectors. More...

Go to the source code of this file.

Classes

class  ml::Tmat3< DT >
 A three by three matrix class of three row vectors. More...

Namespaces

namespace  ml
 

Define the namespace name like in the ML. Default is ml.


namespace  std
 

Provide trigonometric etc.


Typedefs

Specializations for float, double and long double.
typedef Tmat3< MLfloatml::Matrix3f
 A 3x3 matrix of type float.
typedef Tmat3< MLdoubleml::Matrix3d
 A 3x3 matrix of type double.
typedef Tmat3< MLldoubleml::Matrix3ld
 A 3x3 matrix of type long double.
typedef Tmat3< MLdoubleml::Matrix3
 The standard 3x3 matrix of type double.
Deprecated
typedef Tmat3< MLfloatml::matf3
 A floating point 3x3 matrix.
typedef Tmat3< MLdoubleml::matd3
 A double 3x3 matrix.
typedef Tmat3< MLldoubleml::matld3
 A long double double 3x3 matrix.
typedef Tmat3< MLdoubleml::mat3
 Define the standard mat3 type, using double.

Functions

template<class DT >
std::ostream & std::operator<< (std::ostream &os, const ml::Tmat3< DT > &m)
 Output to std::ostream.
template<class DT >
std::istream & std::operator>> (std::istream &is, ml::Tmat3< DT > &m)
 Input from stream.
Global operators and functions of class Tmat3.
template<class DT >
Tmat3< DT > ml::operator- (const Tmat3< DT > &a)
 Returns matrix a with all values negated.
template<class DT >
Tmat3< DT > ml::operator+ (const Tmat3< DT > &a, const Tmat3< DT > &b)
 Returns component wise sum of matrix a and matrix b.
template<class DT >
Tmat3< DT > ml::operator- (const Tmat3< DT > &a, const Tmat3< DT > &b)
 Returns component wise difference of matrix a and matrix b.
template<class DT >
Tmat3< DT > ml::operator* (const Tmat3< DT > &a, const DT d)
 Returns the component wise multiplication of matrix a with scalar d.
template<class DT >
Tmat3< DT > ml::operator* (const DT d, const Tmat3< DT > &a)
 Returns the component wise multiplication of scalar d with matrix a.
template<class DT >
Tmat3< DT > ml::operator/ (const Tmat3< DT > &a, const DT d)
 Return the component wise division of matrix a by scalar d.

Special Functions

#define DET3(A, B, C, D, E, F, G, H, I)   ((A*E*I + B*F*G + C*D*H) - (A*F*H + B*D*I + C*E*G))
 Internal helper macro to calculate the determinant of 3x3 matrix with given entries, do not use.
#define _ML_MAT3_RC(i, j)   a[i][0]*b[0][j] + a[i][1]*b[1][j] + a[i][2]*b[2][j]
 Internal helper macro to multiply two matrices, do not use.
template<class DT >
Tmat3< DT > ml::operator* (const Tmat3< DT > &a, const Tmat3< DT > &b)
 Matrix 3 product.
template<class DT >
bool ml::operator== (const Tmat3< DT > &a, const Tmat3< DT > &b)
 a == b ? Return true if yes, otherwise false.
template<class DT >
bool ml::operator!= (const Tmat3< DT > &a, const Tmat3< DT > &b)
 a != b ? Return true if yes, otherwise false.
template<class DT >
Tmat3< DT > ml::identity2D ()
 Returns a 3x3 homogeneous identity2D matrix; synonym for Tmat3<DT>::getIdentity().
template<class DT >
Tmat3< DT > ml::translation2D (const Tvec2< DT > &v)
 Returns a 2D translation matrix as 3D homogeneous matrix where the translation is located in the right colum.
template<class DT >
Tmat3< DT > ml::rotation2D (const Tvec2< DT > &Center, const DT angleDeg)
 Returns a 2D rotation matrix as 3D homogeneous matrix where center specifies the center of rotation.
template<class DT >
Tmat3< DT > ml::scaling2D (const Tvec2< DT > &scaleVector)
 Returns a 2D scale matrix as 3D homogeneous matrix.

Detailed Description

Template class for a 3x3 matrix of 3 rows of Tvec3 vectors.

Author:
Wolf Spindler
Date:
11/2003

Definition in file mlMatrix3.h.


Define Documentation

#define _ML_MAT3_RC (   i,
 
)    a[i][0]*b[0][j] + a[i][1]*b[1][j] + a[i][2]*b[2][j]

Internal helper macro to multiply two matrices, do not use.

Definition at line 544 of file mlMatrix3.h.

Referenced by ml::operator*().

#define DET3 (   A,
  B,
  C,
  D,
  E,
  F,
  G,
  H,
 
)    ((A*E*I + B*F*G + C*D*H) - (A*F*H + B*D*I + C*E*G))

Internal helper macro to calculate the determinant of 3x3 matrix with given entries, do not use.

Definition at line 485 of file mlMatrix3.h.

Referenced by ml::Tmat3< DT >::det().