Mat23D

Description

struct Tinman.Core.Math.Vectors.Mat23D

A reduced 3x3 matrix with 64-bit floating-point precision.

/                 \
|  M11  M12  M13  |
|  M21  M22  M23  |
|    0    0    1  |
\                 /

Public / Constants

Identity


public static readonly attribute Identity → (Mat23D)

The identity matrix.

M31


public constant M31 → (0:float64)

Matrix component in third row, first column.

M32


public constant M32 → (0:float64)

Matrix component in third row, second column.

M33


public constant M33 → (1:float64)

Matrix component in third row, third column.

Zero


public static readonly attribute Zero → (Mat23D)

The zero matrix.

Public / Constructors

From​Columns


[Pure]
public static method FromColumns → (3)

col1 in : Vec2D

The first column vector.

col2 in : Vec2D

The second column vector.

col3 in : Vec2D

The third column vector.

returns → Mat23D

The matrix.

Creates a new instance of Mat23D.

From​Rows


[Pure]
public static method FromRows → (2)

row1 in : Vec3D

The first row vector.

row2 in : Vec3D

The second row vector.

returns → Mat23D

The matrix.

Creates a new instance of Mat23D.

Mat23​D


public constructor Mat23D → (6)

m11 in : float64

Matrix component in first row, first column.

m12 in : float64

Matrix component in first row, second column.

m13 in : float64

Matrix component in first row, third column.

m21 in : float64

Matrix component in second row, first column.

m22 in : float64

Matrix component in second row, second column.

m23 in : float64

Matrix component in second row, third column.

Creates a new instance of Mat23D.

Rotate


[Pure]
public static method Rotate → (1)

angle in : float64

The rotation angle, in radians.

returns → Mat23D

The resulting matrix.

Returns a rotation matrix (counter-clockwise for right-handed coordinate system when viewed from above).

Scale

3 overloads


[Pure]
public static method Scale1 → (1)

in : float64

The scale factor.

returns → Mat23D

The resulting matrix.

Returns a 2D scaling matrix.


[Pure]
public static method Scale2 → (1)

in : Vec2D

The scale factors.

returns → Mat23D

The resulting matrix.

Returns a 2D scaling matrix.


[Pure]
public static method Scale3 → (2)

fx in : float64

The scale factor along the X-axis.

fy in : float64

The scale factor along the Y-axis.

returns → Mat23D

The resulting matrix.

Returns a 2D scaling matrix.

Translate

2 overloads


[Pure]
public static method Translate1 → (1)

in : Vec2D

The 2D translation vector.

returns → Mat23D

The resulting matrix.

Returns a homogeneous 2D translation matrix.


[Pure]
public static method Translate2 → (2)

in : float64

X-component of translation vector.

in : float64

Y-component of translation vector.

returns → Mat23D

The resulting matrix.

Returns a homogeneous 2D translation matrix.

Public / Attributes

M11


public readonly attribute M11 → (float64)

Matrix component in first row, first column.

M12


public readonly attribute M12 → (float64)

Matrix component in first row, second column.

M13


public readonly attribute M13 → (float64)

Matrix component in first row, third column.

M21


public readonly attribute M21 → (float64)

Matrix component in second row, first column.

M22


public readonly attribute M22 → (float64)

Matrix component in second row, second column.

M23


public readonly attribute M23 → (float64)

Matrix component in second row, third column.

Serialization

Serializer


public static readonly attribute Serializer → (ITypeSerializer<Mat23D>)

The serialization helper object for values of Mat23D.