JMatrix

struct JMatrix : System.ValueType

3x3 Matrix. Member of the math namespace, so every method has it’s ‘by reference’ equivalent to speed up time critical math operations.

float M11

M11

float M12

M12

float M13

M13

float M21

M21

float M22

M22

float M23

M23

float M31

M31

float M32

M32

float M33

M33

JMatrix Identity

Identity matrix.

JMatrix Zero
JMatrix CreateFromYawPitchRoll(float yaw, float pitch, float roll)
Parameters:
  • yaw (float) –
  • pitch (float) –
  • roll (float) –
JMatrix CreateRotationX(float radians)
Parameters:
  • radians (float) –
void CreateRotationX(float radians, ref JMatrix result)
Parameters:
  • radians (float) –
  • (ref) result (Jitter.LinearMath.JMatrix) –
JMatrix CreateRotationY(float radians)
Parameters:
  • radians (float) –
void CreateRotationY(float radians, ref JMatrix result)
Parameters:
  • radians (float) –
  • (ref) result (Jitter.LinearMath.JMatrix) –
JMatrix CreateRotationZ(float radians)
Parameters:
  • radians (float) –
void CreateRotationZ(float radians, ref JMatrix result)
Parameters:
  • radians (float) –
  • (ref) result (Jitter.LinearMath.JMatrix) –
JMatrix Multiply(JMatrix matrix1, JMatrix matrix2)

Multiply two matrices. Notice: matrix multiplication is not commutative.

Parameters:
  • matrix1 (Jitter.LinearMath.JMatrix) – The first matrix.
  • matrix2 (Jitter.LinearMath.JMatrix) – The second matrix.
Returns:

The product of both matrices.

void Multiply(ref JMatrix matrix1, ref JMatrix matrix2, ref JMatrix result)
Parameters:
  • (ref) matrix1 (Jitter.LinearMath.JMatrix) –
  • (ref) matrix2 (Jitter.LinearMath.JMatrix) –
  • (ref) result (Jitter.LinearMath.JMatrix) –
JMatrix Add(JMatrix matrix1, JMatrix matrix2)

Matrices are added.

Parameters:
  • matrix1 (Jitter.LinearMath.JMatrix) – The first matrix.
  • matrix2 (Jitter.LinearMath.JMatrix) – The second matrix.
Returns:

The sum of both matrices.

void Add(ref JMatrix matrix1, ref JMatrix matrix2, ref JMatrix result)
Parameters:
  • (ref) matrix1 (Jitter.LinearMath.JMatrix) –
  • (ref) matrix2 (Jitter.LinearMath.JMatrix) –
  • (ref) result (Jitter.LinearMath.JMatrix) –
JMatrix Inverse(JMatrix matrix)

Calculates the inverse of a give matrix.

Parameters:
  • matrix (Jitter.LinearMath.JMatrix) – The matrix to invert.
Returns:

The inverted JMatrix.

float Determinant()
void Invert(ref JMatrix matrix, ref JMatrix result)
Parameters:
  • (ref) matrix (Jitter.LinearMath.JMatrix) –
  • (ref) result (Jitter.LinearMath.JMatrix) –
void Inverse(ref JMatrix matrix, ref JMatrix result)
Parameters:
  • (ref) matrix (Jitter.LinearMath.JMatrix) –
  • (ref) result (Jitter.LinearMath.JMatrix) –
JMatrix Multiply(JMatrix matrix1, float scaleFactor)

Multiply a matrix by a scalefactor.

Parameters:
  • matrix1 (Jitter.LinearMath.JMatrix) – The matrix.
  • scaleFactor (float) – The scale factor.
Returns:

A JMatrix multiplied by the scale factor.

void Multiply(ref JMatrix matrix1, float scaleFactor, ref JMatrix result)
Parameters:
  • (ref) matrix1 (Jitter.LinearMath.JMatrix) –
  • scaleFactor (float) –
  • (ref) result (Jitter.LinearMath.JMatrix) –
JMatrix CreateFromQuaternion(JQuaternion quaternion)

Creates a JMatrix representing an orientation from a quaternion.

Parameters:
  • quaternion (Jitter.LinearMath.JQuaternion) – The quaternion the matrix should be created from.
Returns:

JMatrix representing an orientation.

void CreateFromQuaternion(ref JQuaternion quaternion, ref JMatrix result)
Parameters:
  • (ref) quaternion (Jitter.LinearMath.JQuaternion) –
  • (ref) result (Jitter.LinearMath.JMatrix) –
JMatrix Transpose(JMatrix matrix)

Creates the transposed matrix.

Parameters:
  • matrix (Jitter.LinearMath.JMatrix) – The matrix which should be transposed.
Returns:

The transposed JMatrix.

void Transpose(ref JMatrix matrix, ref JMatrix result)
Parameters:
  • (ref) matrix (Jitter.LinearMath.JMatrix) –
  • (ref) result (Jitter.LinearMath.JMatrix) –
JMatrix op_Multiply(JMatrix value1, JMatrix value2)

Multiplies two matrices.

Parameters:
  • value1 (Jitter.LinearMath.JMatrix) – The first matrix.
  • value2 (Jitter.LinearMath.JMatrix) – The second matrix.
Returns:

The product of both values.

float Trace()
JMatrix op_Addition(JMatrix value1, JMatrix value2)

Adds two matrices.

Parameters:
  • value1 (Jitter.LinearMath.JMatrix) – The first matrix.
  • value2 (Jitter.LinearMath.JMatrix) – The second matrix.
Returns:

The sum of both values.

JMatrix op_Subtraction(JMatrix value1, JMatrix value2)

Subtracts two matrices.

Parameters:
  • value1 (Jitter.LinearMath.JMatrix) – The first matrix.
  • value2 (Jitter.LinearMath.JMatrix) – The second matrix.
Returns:

The difference of both values.

void CreateFromAxisAngle(ref JVector axis, float angle, ref JMatrix result)
Parameters:
  • (ref) axis (Jitter.LinearMath.JVector) –
  • angle (float) –
  • (ref) result (Jitter.LinearMath.JMatrix) –
JMatrix CreateFromAxisAngle(JVector axis, float angle)

Creates a matrix which rotates around the given axis by the given angle.

Parameters:
  • axis (Jitter.LinearMath.JVector) – The axis.
  • angle (float) – The angle.
Returns:

The resulting rotation matrix