Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Classes

NameDescription
Geo::Matrix

Matrix definition.

Functions

NameDescription
Equal(MatrixParam, MatrixParam)

Return true if all corresponding matrix elements are exactly equal.

EqualWithinEpsilon(MatrixParam, MatrixParam)

Return true if all corresponding matrix elements are within an epsilon.

GetMatrixFromString(const C *)

Read 16 float values from a string and build a Matrix. Same argument order as the 16 float constructor.

IsFinite(MatrixParam)

Returns true if all of the 16 elements of m are finite.

IsNan(MatrixParam)

Returns true if all of the 16 elements of m are finite.

IsPermutationMatrix(MatrixParam)

Returns true if the matrix is a valid permutation matrix, where each column and each row consists of a single positive or negative "1" and the rest "0".

MatrixToString(MatrixParam)

Creates a GeoString containing the 16 elements of the matrix (space-separated) in a form compatible with GetMatrixFromString.

MatrixToUtf8String(MatrixParam)

Creates a GeoString containing the 16 elements of the matrix (space-separated) in a form compatible with GetMatrixFromString.

MDet(MatrixParam)

Determinant (returned as a broadcast float)

MGetRotation(Geo::MatrixParam)

Deconstruct the matrix to retrieve the rotation part as a quaternion.

MGetTranslation(Geo::MatrixParam)

Deconstruct the matrix to retrieve the translation part as a vector.

MInverse(MatrixParam)

Generalised inverse.

MInverse(MatrixParam, v128)

with a precomputed 1/determinant

MInverseSimple(MatrixParam)

Inverts assuming only rotation and translation.

MTranspose(MatrixParam)

Determinant (returned as a broadcast float)

Typedefs

NameDescription
const Matrix & MatrixParam

The type to pass with a function argument so that the compiler does the minimum amount of work.


Anchor
a2528e2958dea1298919e7eddfc5300de
a2528e2958dea1298919e7eddfc5300de

bool GEO_CALL Geo::Equal

...

public: bool GEO_CALL Equal
(
    MatrixParam a,
    MatrixParam b
)

...

Return true if all corresponding matrix elements are exactly equal.


Anchor
af0802b9a0469c2a1293f959fb49b4381
af0802b9a0469c2a1293f959fb49b4381

bool GEO_CALL Geo::EqualWithinEpsilon

...

public: bool GEO_CALL EqualWithinEpsilon
(
    MatrixParam a,
    MatrixParam b
)

...

Return true if all corresponding matrix elements are within an epsilon.


Anchor
ab6b701943bbb9041ac51b31577dd112f
ab6b701943bbb9041ac51b31577dd112f

Geo::Matrix GEO_CALL Geo::GetMatrixFromString

...

public: Geo::MatrixGEO_CALL GetMatrixFromString
(
    const C * str
)

...

Read 16 float values from a string and build a Matrix. Same argument order as the 16 float constructor.


Anchor
a4839ab9ec4b700bfcc1864b3c4209a89
a4839ab9ec4b700bfcc1864b3c4209a89

bool GEO_CALL Geo::IsFinite

...

public: bool GEO_CALL IsFinite
(
    MatrixParam m
)

...

Returns true if all of the 16 elements of m are finite.


Anchor
ab2418c6d4a375ac3f80988052cc0a1cd
ab2418c6d4a375ac3f80988052cc0a1cd

bool GEO_CALL Geo::IsNan

...

public: bool GEO_CALL IsNan
(
    MatrixParam m
)

...

Returns true if all of the 16 elements of m are finite.


Anchor
a730ac1eda2992b417f290d5c80914eae
a730ac1eda2992b417f290d5c80914eae

bool Geo::IsPermutationMatrix

...

public: bool IsPermutationMatrix
(
    MatrixParam m
)

...

Returns true if the matrix is a valid permutation matrix, where each column and each row consists of a single positive or negative "1" and the rest "0".


Anchor
a2d7a4ee2482b1e4d067367d58f4ef8bd
a2d7a4ee2482b1e4d067367d58f4ef8bd

Geo::GeoString<char> GEO_CALL Geo::MatrixToString

...

public: Geo::GeoString< char > GEO_CALL MatrixToString
(
    MatrixParam m
)

...

Creates a GeoString containing the 16 elements of the matrix (space-separated) in a form compatible with GetMatrixFromString.


Anchor
acc98e38184924b96710fe4e1a5e923de
acc98e38184924b96710fe4e1a5e923de

Geo::GeoString<char> GEO_CALL Geo::MatrixToUtf8String

...

public: Geo::GeoString< char > GEO_CALL MatrixToUtf8String
(
    MatrixParam m
)

...

Creates a GeoString containing the 16 elements of the matrix (space-separated) in a form compatible with GetMatrixFromString.


Anchor
a57c595963f8eb28d34235b2c5a51f70a
a57c595963f8eb28d34235b2c5a51f70a

v128 GEO_CALL Geo::MDet

...

public: v128 GEO_CALL MDet
(
    MatrixParam m
)

...

Determinant (returned as a broadcast float)


Anchor
a4ff3b3c006e3e7d728f00b102f93e086
a4ff3b3c006e3e7d728f00b102f93e086

v128 GEO_CALL Geo::MGetRotation

...

public: v128 GEO_CALL MGetRotation
(
    Geo::MatrixParam m
)

...

Deconstruct the matrix to retrieve the rotation part as a quaternion.


Anchor
aa97ef70dd1244fe1184c888da9078bd8
aa97ef70dd1244fe1184c888da9078bd8

Geo::v128 GEO_CALL Geo::MGetTranslation

...

public: Geo::v128GEO_CALL MGetTranslation
(
    Geo::MatrixParam m
)

...

Deconstruct the matrix to retrieve the translation part as a vector.


Anchor
a587e515bf4ae314cd083e96a3d1d413c
a587e515bf4ae314cd083e96a3d1d413c

Matrix Geo::MInverse

...

public: Matrix GEO_CALL MInverse
(
    MatrixParam m
)

...

Generalised inverse.


Anchor
ad2b0d2c563618879220d1f3001300491
ad2b0d2c563618879220d1f3001300491

Matrix Geo::MInverse

...

public: Matrix GEO_CALL MInverse
(
    MatrixParam m,
    v128 idet
)

...

with a precomputed 1/determinant


Anchor
a602dfd319ec3a8dd86a0695c29704bcb
a602dfd319ec3a8dd86a0695c29704bcb

Matrix GEO_CALL Geo::MInverseSimple

...

public: Matrix GEO_CALL MInverseSimple
(
    MatrixParam m
)

...

Inverts assuming only rotation and translation.


Anchor
a748bf01b6fb92b6b34271f43208e3eb5
a748bf01b6fb92b6b34271f43208e3eb5

Matrix Geo::MTranspose

...

public: Matrix GEO_CALL MTranspose
(
    MatrixParam m
)

...

Determinant (returned as a broadcast float)