This is the documentation for Enlighten.

module Matrices

Classes

Name Description
Geo::Matrix

Matrix definition.

Functions

Name Description
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

Name Description
const Matrix & MatrixParam

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


bool GEO_CALL Geo::Equal


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


Return true if all corresponding matrix elements are exactly equal.


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.


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.


bool GEO_CALL Geo::IsFinite


public: bool GEO_CALL IsFinite
(
    MatrixParam m
)


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


bool GEO_CALL Geo::IsNan


public: bool GEO_CALL IsNan
(
    MatrixParam m
)


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


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".


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.


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.


v128 GEO_CALL Geo::MDet


public: v128 GEO_CALL MDet
(
    MatrixParam m
)


Determinant (returned as a broadcast float)


v128 GEO_CALL Geo::MGetRotation


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


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


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.


Matrix Geo::MInverse


public: Matrix GEO_CALL MInverse
(
    MatrixParam m
)


Generalised inverse.


Matrix Geo::MInverse


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


with a precomputed 1/determinant


Matrix GEO_CALL Geo::MInverseSimple


public: Matrix GEO_CALL MInverseSimple
(
    MatrixParam m
)


Inverts assuming only rotation and translation.


Matrix Geo::MTranspose


public: Matrix GEO_CALL MTranspose
(
    MatrixParam m
)


Determinant (returned as a broadcast float)