IVT
Math2d Namespace Reference

Efficient mathematic functions operating on the data types Vec2d and Mat2d. More...

Functions

void SetVec (Vec2d &vec, float x, float y)
void SetVec (Vec2d &vec, const Vec2d &sourceVector)
void SetRotationMat (Mat2d &matrix, float theta)
void MulMatMat (const Mat2d &matrix1, const Mat2d &matrix2, Mat2d &result)
void MulMatVec (const Mat2d &matrix, const Vec2d &vec, Vec2d &result)
void MulMatVec (const Mat2d &matrix, const Vec2d &vector1, const Vec2d &vector2, Vec2d &result)
void MulMatScalar (const Mat2d &matrix, float scalar, Mat2d &result)
void MulVecScalar (const Vec2d &vec, float scalar, Vec2d &result)
void RotateVec (const Vec2d &vec, float alpha, Vec2d &result)
void AddVecVec (const Vec2d &vector1, const Vec2d &vector2, Vec2d &result)
void SubtractVecVec (const Vec2d &vector1, const Vec2d &vector2, Vec2d &result)
void AddToVec (Vec2d &vec, const Vec2d &vectorToAdd)
void SubtractFromVec (Vec2d &vec, const Vec2d &vectorToSubtract)
float ScalarProduct (const Vec2d &vector1, const Vec2d &vector2)
float SquaredLength (const Vec2d &vec)
float Length (const Vec2d &vec)
float Distance (const Vec2d &vector1, const Vec2d &vector2)
float SquaredDistance (const Vec2d &vector1, const Vec2d &vector2)
float Angle (const Vec2d &vector1, const Vec2d &vector2)
void Transpose (const Mat2d &matrix, Mat2d &result)
void Invert (const Mat2d &matrix, Mat2d &result)
void NormalizeVec (Vec2d &vec)
void ApplyHomography (const Mat3d &A, const Vec2d &p, Vec2d &result)

Variables

const Vec2d zero_vec = { 0, 0 }

Detailed Description

Efficient mathematic functions operating on the data types Vec2d and Mat2d.


Function Documentation

void Math2d::AddToVec ( Vec2d vec,
const Vec2d vectorToAdd 
)

Definition at line 79 of file Math2d.cpp.

void Math2d::AddVecVec ( const Vec2d vector1,
const Vec2d vector2,
Vec2d result 
)

Definition at line 91 of file Math2d.cpp.

float Math2d::Angle ( const Vec2d vector1,
const Vec2d vector2 
)

Definition at line 195 of file Math2d.cpp.

void Math2d::ApplyHomography ( const Mat3d A,
const Vec2d p,
Vec2d result 
)

Definition at line 239 of file Math2d.cpp.

float Math2d::Distance ( const Vec2d vector1,
const Vec2d vector2 
)

Definition at line 179 of file Math2d.cpp.

void Math2d::Invert ( const Mat2d matrix,
Mat2d result 
)

Definition at line 224 of file Math2d.cpp.

float Math2d::Length ( const Vec2d vec)

Definition at line 169 of file Math2d.cpp.

void Math2d::MulMatMat ( const Mat2d matrix1,
const Mat2d matrix2,
Mat2d result 
)

Definition at line 115 of file Math2d.cpp.

void Math2d::MulMatScalar ( const Mat2d matrix,
float  scalar,
Mat2d result 
)

Definition at line 107 of file Math2d.cpp.

void Math2d::MulMatVec ( const Mat2d matrix,
const Vec2d vec,
Vec2d result 
)

Definition at line 126 of file Math2d.cpp.

void Math2d::MulMatVec ( const Mat2d matrix,
const Vec2d vector1,
const Vec2d vector2,
Vec2d result 
)

Definition at line 133 of file Math2d.cpp.

void Math2d::MulVecScalar ( const Vec2d vec,
float  scalar,
Vec2d result 
)

Definition at line 140 of file Math2d.cpp.

void Math2d::NormalizeVec ( Vec2d vec)

Definition at line 158 of file Math2d.cpp.

void Math2d::RotateVec ( const Vec2d vec,
float  alpha,
Vec2d result 
)

Definition at line 204 of file Math2d.cpp.

float Math2d::ScalarProduct ( const Vec2d vector1,
const Vec2d vector2 
)

Definition at line 153 of file Math2d.cpp.

void Math2d::SetRotationMat ( Mat2d matrix,
float  theta 
)

Definition at line 97 of file Math2d.cpp.

void Math2d::SetVec ( Vec2d vec,
const Vec2d sourceVector 
)

Definition at line 72 of file Math2d.cpp.

void Math2d::SetVec ( Vec2d vec,
float  x,
float  y 
)

Definition at line 66 of file Math2d.cpp.

float Math2d::SquaredDistance ( const Vec2d vector1,
const Vec2d vector2 
)

Definition at line 187 of file Math2d.cpp.

float Math2d::SquaredLength ( const Vec2d vec)

Definition at line 174 of file Math2d.cpp.

void Math2d::SubtractFromVec ( Vec2d vec,
const Vec2d vectorToSubtract 
)

Definition at line 85 of file Math2d.cpp.

void Math2d::SubtractVecVec ( const Vec2d vector1,
const Vec2d vector2,
Vec2d result 
)

Definition at line 146 of file Math2d.cpp.

void Math2d::Transpose ( const Mat2d matrix,
Mat2d result 
)

Definition at line 214 of file Math2d.cpp.


Variable Documentation

const Vec2d Math2d::zero_vec = { 0, 0 }

Definition at line 59 of file Math2d.cpp.