ML Reference
mlMatrix2.h File Reference

Go to the source code of this file.

Classes

class  ml::Tmat2< DT >
 Declaration of matrix type traits. More...
 

Namespaces

namespace  ml
 Main documentation file for ML users and developers.
 
namespace  std
 STL namespace.
 

Typedefs

Specializations for float, double, and long double.
typedef Tmat2< MLfloatml::Matrix2f
 A 2x2 matrix of type float.
 
typedef Tmat2< MLdoubleml::Matrix2d
 A 2x2 matrix of type double.
 
typedef Tmat2< MLldoubleml::Matrix2ld
 A 2x2 matrix of type long double.
 
typedef Tmat2< MLdoubleml::Matrix2
 The standard 2x2 matrix of type double.
 

Functions

template<class DT >
std::ostream & std::operator<< (std::ostream &os, const ml::Tmat2< DT > &m)
 Output to stream.
 
template<class DT >
std::istream & std::operator>> (std::istream &is, ml::Tmat2< DT > &m)
 Input from stream.
 
Standalone functions and operators for class Tmat2.
template<class DT >
Tmat2< DT > ml::operator- (const Tmat2< DT > &a)
 Returns a matrix a with all values negated.
 
template<class DT >
Tmat2< DT > ml::operator+ (const Tmat2< DT > &a, const Tmat2< DT > &b)
 Returns the component-wise sum of matrix a and matrix b.
 
template<class DT >
Tmat2< DT > ml::operator- (const Tmat2< DT > &a, const Tmat2< DT > &b)
 Returns the component-wise difference of matrix a and matrix b.
 
template<class DT >
Tmat2< DT > ml::operator* (const Tmat2< DT > &a, DT d)
 Returns the component-wise multiplication of matrix a with scalar d.
 
template<class DT >
Tmat2< DT > ml::operator* (const DT d, const Tmat2< DT > &a)
 Returns the component-wise multiplication of scalar d with matrix a.
 
template<class DT >
Tmat2< DT > ml::operator/ (const Tmat2< DT > &a, const DT d)
 Returns the component-wise division of matrix a by scalar d.
 
template<class DT >
Tvec2< DT > ml::operator* (const Tmat2< DT > &a, const Tvec2< DT > &v)
 Normal multiplication of 2x2 matrix a with 2D vector v with a Tvec2as result.
 
template<class DT >
Tvec2< DT > ml::operator* (const Tvec2< DT > &v, const Tmat2< DT > &a)
 Normal multiplication of 2D vector v with 2x2 matrix with a Tvec2as result.
 

Functions and operators for class Tmat2.

Helper macro only locally defined for Tmat2 matrix multiplication.

#define _ML_MAT2_RC(i, j)   a[i][0]*b[0][j] + a[i][1]*b[1][j]
 
template<class DT >
Tmat2< DT > ml::operator* (const Tmat2< DT > &a, const Tmat2< DT > &b)
 
template<class DT >
bool ml::operator== (const Tmat2< DT > &a, const Tmat2< DT > &b)
 a == b ? Returns true if yes.
 
template<class DT >
bool ml::operator!= (const Tmat2< DT > &a, const Tmat2< DT > &b)
 a != b ? Returns true if yes.
 

Macro Definition Documentation

◆ _ML_MAT2_RC

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

Definition at line 410 of file mlMatrix2.h.

Referenced by ml::operator*().