Table of Contents

Struct Matrix44

Namespace
Lime
Assembly
Lime.dll
public struct Matrix44 : IEquatable<Matrix44>
Implements
Inherited Members

Constructors

Matrix44(float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float)

public Matrix44(float m11, float m12, float m13, float m14, float m21, float m22, float m23, float m24, float m31, float m32, float m33, float m34, float m41, float m42, float m43, float m44)

Parameters

m11 float
m12 float
m13 float
m14 float
m21 float
m22 float
m23 float
m24 float
m31 float
m32 float
m33 float
m34 float
m41 float
m42 float
m43 float
m44 float

Fields

M11

[YuzuMember("0")]
public float M11

Field Value

float

M12

[YuzuMember("1")]
public float M12

Field Value

float

M13

[YuzuMember("2")]
public float M13

Field Value

float

M14

[YuzuMember("3")]
public float M14

Field Value

float

M21

[YuzuMember("4")]
public float M21

Field Value

float

M22

[YuzuMember("5")]
public float M22

Field Value

float

M23

[YuzuMember("6")]
public float M23

Field Value

float

M24

[YuzuMember("7")]
public float M24

Field Value

float

M31

[YuzuMember("8")]
public float M31

Field Value

float

M32

[YuzuMember("9")]
public float M32

Field Value

float

M33

[YuzuMember("A")]
public float M33

Field Value

float

M34

[YuzuMember("B")]
public float M34

Field Value

float

M41

[YuzuMember("C")]
public float M41

Field Value

float

M42

[YuzuMember("D")]
public float M42

Field Value

float

M43

[YuzuMember("E")]
public float M43

Field Value

float

M44

[YuzuMember("F")]
public float M44

Field Value

float

Properties

Backward

public Vector3 Backward { get; set; }

Property Value

Vector3

Down

public Vector3 Down { get; set; }

Property Value

Vector3

Forward

public Vector3 Forward { get; set; }

Property Value

Vector3

Identity

public static Matrix44 Identity { get; }

Property Value

Matrix44

Left

public Vector3 Left { get; set; }

Property Value

Vector3

Right

public Vector3 Right { get; set; }

Property Value

Vector3

Rotation

public Quaternion Rotation { get; }

Property Value

Quaternion

Scale

public Vector3 Scale { get; }

Property Value

Vector3

Translation

public Vector3 Translation { get; set; }

Property Value

Vector3

Up

public Vector3 Up { get; set; }

Property Value

Vector3

Methods

CalcDeterminant()

public float CalcDeterminant()

Returns

float

CalcInverted()

public Matrix44 CalcInverted()

Returns

Matrix44

CreateFromAxisAngle(Vector3, float)

public static Matrix44 CreateFromAxisAngle(Vector3 axis, float angle)

Parameters

axis Vector3
angle float

Returns

Matrix44

CreateFromAxisAngle(ref Vector3, float, out Matrix44)

public static void CreateFromAxisAngle(ref Vector3 axis, float angle, out Matrix44 result)

Parameters

axis Vector3
angle float
result Matrix44

CreateLookAt(Vector3, Vector3, Vector3)

public static Matrix44 CreateLookAt(Vector3 cameraPosition, Vector3 cameraTarget, Vector3 cameraUpVector)

Parameters

cameraPosition Vector3
cameraTarget Vector3
cameraUpVector Vector3

Returns

Matrix44

CreateLookAt(ref Vector3, ref Vector3, ref Vector3, out Matrix44)

public static void CreateLookAt(ref Vector3 cameraPosition, ref Vector3 cameraTarget, ref Vector3 cameraUpVector, out Matrix44 result)

Parameters

cameraPosition Vector3
cameraTarget Vector3
cameraUpVector Vector3
result Matrix44

CreateOrthographic(float, float, float, float)

public static Matrix44 CreateOrthographic(float width, float height, float zNear, float zFar)

Parameters

width float
height float
zNear float
zFar float

Returns

Matrix44

CreateOrthographicOffCenter(float, float, float, float, float, float)

public static Matrix44 CreateOrthographicOffCenter(float left, float right, float bottom, float top, float zNear, float zFar)

Parameters

left float
right float
bottom float
top float
zNear float
zFar float

Returns

Matrix44

CreatePerspective(float, float, float, float)

public static Matrix44 CreatePerspective(float width, float height, float zNear, float zFar)

Parameters

width float
height float
zNear float
zFar float

Returns

Matrix44

CreatePerspectiveFieldOfView(float, float, float, float)

public static Matrix44 CreatePerspectiveFieldOfView(float vFov, float aspectRatio, float zNear, float zFar)

Parameters

vFov float
aspectRatio float
zNear float
zFar float

Returns

Matrix44

CreatePerspectiveOffCenter(float, float, float, float, float, float)

public static Matrix44 CreatePerspectiveOffCenter(float left, float right, float bottom, float top, float zNear, float zFar)

Parameters

left float
right float
bottom float
top float
zNear float
zFar float

Returns

Matrix44

CreateReflection(Plane)

public static Matrix44 CreateReflection(Plane plane)

Parameters

plane Plane

Returns

Matrix44

CreateRotation(Quaternion)

public static Matrix44 CreateRotation(Quaternion quaternion)

Parameters

quaternion Quaternion

Returns

Matrix44

CreateRotation(ref Quaternion, out Matrix44)

public static void CreateRotation(ref Quaternion quaternion, out Matrix44 result)

Parameters

quaternion Quaternion
result Matrix44

CreateRotationX(float)

public static Matrix44 CreateRotationX(float radians)

Parameters

radians float

Returns

Matrix44

CreateRotationX(float, out Matrix44)

public static void CreateRotationX(float radians, out Matrix44 result)

Parameters

radians float
result Matrix44

CreateRotationY(float)

public static Matrix44 CreateRotationY(float radians)

Parameters

radians float

Returns

Matrix44

CreateRotationY(float, out Matrix44)

public static void CreateRotationY(float radians, out Matrix44 result)

Parameters

radians float
result Matrix44

CreateRotationZ(float)

public static Matrix44 CreateRotationZ(float radians)

Parameters

radians float

Returns

Matrix44

CreateRotationZ(float, out Matrix44)

public static void CreateRotationZ(float radians, out Matrix44 result)

Parameters

radians float
result Matrix44

CreateScale(Vector3)

public static Matrix44 CreateScale(Vector3 scales)

Parameters

scales Vector3

Returns

Matrix44

CreateScale(float, float, float)

public static Matrix44 CreateScale(float x, float y, float z)

Parameters

x float
y float
z float

Returns

Matrix44

CreateTranslation(Vector3)

public static Matrix44 CreateTranslation(Vector3 position)

Parameters

position Vector3

Returns

Matrix44

CreateTranslation(float, float, float)

public static Matrix44 CreateTranslation(float x, float y, float z)

Parameters

x float
y float
z float

Returns

Matrix44

Decompose(out Vector3, out Matrix44, out Vector3)

Decomposes a matrix into a scale, rotation, and translation.

public void Decompose(out Vector3 scale, out Matrix44 rotation, out Vector3 translation)

Parameters

scale Vector3

When the method completes, contains the scaling component of the decomposed matrix.

rotation Matrix44

When the method completes, contains the rtoation component of the decomposed matrix.

translation Vector3

When the method completes, contains the translation component of the decomposed matrix.

Remarks

This method is designed to decompose an SRT transformation matrix only.

Decompose(out Vector3, out Quaternion, out Vector3)

Decomposes a matrix into a scale, rotation, and translation.

public void Decompose(out Vector3 scale, out Quaternion rotation, out Vector3 translation)

Parameters

scale Vector3

When the method completes, contains the scaling component of the decomposed matrix.

rotation Quaternion

When the method completes, contains the rtoation component of the decomposed matrix.

translation Vector3

When the method completes, contains the translation component of the decomposed matrix.

Remarks

This method is designed to decompose an SRT transformation matrix only.

Equals(Matrix44)

Indicates whether the current object is equal to another object of the same type.

public bool Equals(Matrix44 other)

Parameters

other Matrix44

An object to compare with this object.

Returns

bool

true if the current object is equal to the other parameter; otherwise, false.

Equals(object)

Indicates whether this instance and a specified object are equal.

public override bool Equals(object obj)

Parameters

obj object

The object to compare with the current instance.

Returns

bool

true if obj and this instance are the same type and represent the same value; otherwise, false.

GetHashCode()

Returns the hash code for this instance.

public override int GetHashCode()

Returns

int

A 32-bit signed integer that is the hash code for this instance.

GetScale(bool)

public Vector3 GetScale(bool checkReflexion)

Parameters

checkReflexion bool

Returns

Vector3

Invert(Matrix44)

public static Matrix44 Invert(Matrix44 matrix)

Parameters

matrix Matrix44

Returns

Matrix44

Invert(ref Matrix44, out Matrix44)

public static void Invert(ref Matrix44 matrix, out Matrix44 result)

Parameters

matrix Matrix44
result Matrix44

Lerp(Matrix44, Matrix44, float)

public static Matrix44 Lerp(Matrix44 value1, Matrix44 value2, float amount)

Parameters

value1 Matrix44
value2 Matrix44
amount float

Returns

Matrix44

ProjectVector(Vector2)

public Vector2 ProjectVector(Vector2 position)

Parameters

position Vector2

Returns

Vector2

ProjectVector(Vector3)

public Vector3 ProjectVector(Vector3 position)

Parameters

position Vector3

Returns

Vector3

ToFloatArray()

public float[] ToFloatArray()

Returns

float[]

ToString()

Returns the fully qualified type name of this instance.

public override string ToString()

Returns

string

The fully qualified type name.

TransformNormal(Vector2)

public Vector2 TransformNormal(Vector2 normal)

Parameters

normal Vector2

Returns

Vector2

TransformNormal(Vector3)

public Vector3 TransformNormal(Vector3 normal)

Parameters

normal Vector3

Returns

Vector3

TransformVector(Vector2)

public Vector2 TransformVector(Vector2 position)

Parameters

position Vector2

Returns

Vector2

TransformVector(Vector3)

public Vector3 TransformVector(Vector3 position)

Parameters

position Vector3

Returns

Vector3

TransformVector(Vector4)

public Vector4 TransformVector(Vector4 position)

Parameters

position Vector4

Returns

Vector4

Transpose()

public Matrix44 Transpose()

Returns

Matrix44

Transpose(Matrix44)

public static Matrix44 Transpose(Matrix44 matrix)

Parameters

matrix Matrix44

Returns

Matrix44

Transpose(ref Matrix44, out Matrix44)

public static void Transpose(ref Matrix44 matrix, out Matrix44 result)

Parameters

matrix Matrix44
result Matrix44

Operators

operator +(Matrix44, Matrix44)

public static Matrix44 operator +(Matrix44 matrix1, Matrix44 matrix2)

Parameters

matrix1 Matrix44
matrix2 Matrix44

Returns

Matrix44

operator ==(Matrix44, Matrix44)

public static bool operator ==(Matrix44 matrix1, Matrix44 matrix2)

Parameters

matrix1 Matrix44
matrix2 Matrix44

Returns

bool

operator !=(Matrix44, Matrix44)

public static bool operator !=(Matrix44 matrix1, Matrix44 matrix2)

Parameters

matrix1 Matrix44
matrix2 Matrix44

Returns

bool

operator *(Matrix44, Matrix44)

public static Matrix44 operator *(Matrix44 matrix1, Matrix44 matrix2)

Parameters

matrix1 Matrix44
matrix2 Matrix44

Returns

Matrix44

operator *(Matrix44, float)

public static Matrix44 operator *(Matrix44 matrix, float scaleFactor)

Parameters

matrix Matrix44
scaleFactor float

Returns

Matrix44

operator *(Vector2, Matrix44)

public static Vector2 operator *(Vector2 a, Matrix44 b)

Parameters

a Vector2
b Matrix44

Returns

Vector2

operator *(Vector3, Matrix44)

public static Vector3 operator *(Vector3 a, Matrix44 b)

Parameters

a Vector3
b Matrix44

Returns

Vector3

operator -(Matrix44, Matrix44)

public static Matrix44 operator -(Matrix44 matrix1, Matrix44 matrix2)

Parameters

matrix1 Matrix44
matrix2 Matrix44

Returns

Matrix44

operator -(Matrix44)

public static Matrix44 operator -(Matrix44 matrix)

Parameters

matrix Matrix44

Returns

Matrix44