Share via


SCNMatrix4 Struct

Definition

Represents a 4x4 matrix using a column-major memory layout.

[System.Serializable]
public struct SCNMatrix4 : IEquatable<SceneKit.SCNMatrix4>
[<System.Serializable>]
type SCNMatrix4 = struct
Inheritance
SCNMatrix4
Attributes
Implements

Constructors

Name Description
SCNMatrix4(CATransform3D)
SCNMatrix4(NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, NFloat)

Constructs a new instance.

SCNMatrix4(SCNVector4, SCNVector4, SCNVector4, SCNVector4)

Constructs a new instance.

SCNMatrix4(Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single)

Constructs a new instance.

Fields

Name Description
Column0

Left-most column of the matrix

Column1

2nd column of the matrix

Column2

3rd column of the matrix

Column3

Right-most column of the matrix

Identity

The identity matrix

Properties

Name Description
Determinant

The determinant of this matrix

M11

Gets or sets the value at column 1, row 1 of this instance.

M12

Gets or sets the value at column 1, row 2 of this instance.

M13

Gets or sets the value at column 1, row 3 of this instance.

M14

Gets or sets the value at column 1, row 4 of this instance.

M21

Gets or sets the value at column 2, row 1 of this instance.

M22

Gets or sets the value at column 2, row 2 of this instance.

M23

Gets or sets the value at column 2, row 3 of this instance.

M24

Gets or sets the value at column 2, row 4 of this instance.

M31

Gets or sets the value at column 3, row 1 of this instance.

M32

Gets or sets the value at column 3, row 2 of this instance.

M33

Gets or sets the value at column 3, row 3 of this instance.

M34

Gets or sets the value at column 3, row 4 of this instance.

M41

Gets or sets the value at column 4, row 1 of this instance.

M42

Gets or sets the value at column 4, row 2 of this instance.

M43

Gets or sets the value at column 4, row 3 of this instance.

M44

Gets or sets the value at column 4, row 4 of this instance.

Row0

The top row of this matrix

Row1

The second row of this matrix

Row2

The third row of this matrix

Row3

The last row of this matrix

Methods

Name Description
CreateFromAxisAngle(NVector3d, Double, SCNMatrix4)
CreateFromAxisAngle(SCNVector3, NFloat, SCNMatrix4)

Build a rotation matrix from the specified axis/angle rotation.

CreateFromAxisAngle(SCNVector3, NFloat)

Build a rotation matrix from the specified axis/angle rotation.

CreateFromAxisAngle(SCNVector3, Single, SCNMatrix4)

Build a rotation matrix from the specified axis/angle rotation.

CreateFromAxisAngle(SCNVector3, Single)

Build a rotation matrix from the specified axis/angle rotation.

CreateFromAxisAngle(Vector3, Single, SCNMatrix4)
CreateFromColumns(SCNVector4, SCNVector4, SCNVector4, SCNVector4, SCNMatrix4)
CreateFromColumns(SCNVector4, SCNVector4, SCNVector4, SCNVector4)
CreateOrthographic(NFloat, NFloat, NFloat, NFloat, SCNMatrix4)

Creates an orthographic projection matrix.

CreateOrthographic(NFloat, NFloat, NFloat, NFloat)

Creates an orthographic projection matrix.

CreateOrthographic(Single, Single, Single, Single, SCNMatrix4)

Creates an orthographic projection matrix.

CreateOrthographic(Single, Single, Single, Single)

Creates an orthographic projection matrix.

CreateOrthographicOffCenter(NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, SCNMatrix4)

Creates an orthographic projection matrix.

CreateOrthographicOffCenter(NFloat, NFloat, NFloat, NFloat, NFloat, NFloat)

Creates an orthographic projection matrix.

CreateOrthographicOffCenter(Single, Single, Single, Single, Single, Single, SCNMatrix4)

Creates an orthographic projection matrix.

CreateOrthographicOffCenter(Single, Single, Single, Single, Single, Single)

Creates an orthographic projection matrix.

CreatePerspectiveFieldOfView(NFloat, NFloat, NFloat, NFloat, SCNMatrix4)

Creates a perspective projection matrix.

CreatePerspectiveFieldOfView(NFloat, NFloat, NFloat, NFloat)

Creates a perspective projection matrix.

CreatePerspectiveFieldOfView(Single, Single, Single, Single, SCNMatrix4)

Creates a perspective projection matrix.

CreatePerspectiveFieldOfView(Single, Single, Single, Single)

Creates a perspective projection matrix.

CreatePerspectiveOffCenter(NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, SCNMatrix4)

Creates a perspective projection matrix.

CreatePerspectiveOffCenter(NFloat, NFloat, NFloat, NFloat, NFloat, NFloat)

Creates a perspective projection matrix.

CreatePerspectiveOffCenter(Single, Single, Single, Single, Single, Single, SCNMatrix4)

Creates a perspective projection matrix.

CreatePerspectiveOffCenter(Single, Single, Single, Single, Single, Single)

Creates a perspective projection matrix.

CreateRotationX(NFloat, SCNMatrix4)

Builds a rotation matrix for a rotation around the x-axis.

CreateRotationX(NFloat)

Builds a rotation matrix for a rotation around the x-axis.

CreateRotationX(Single, SCNMatrix4)

Builds a rotation matrix for a rotation around the x-axis.

CreateRotationX(Single)

Builds a rotation matrix for a rotation around the x-axis.

CreateRotationY(NFloat, SCNMatrix4)

Builds a rotation matrix for a rotation around the y-axis.

CreateRotationY(NFloat)

Builds a rotation matrix for a rotation around the y-axis.

CreateRotationY(Single, SCNMatrix4)

Builds a rotation matrix for a rotation around the y-axis.

CreateRotationY(Single)

Builds a rotation matrix for a rotation around the y-axis.

CreateRotationZ(NFloat, SCNMatrix4)

Builds a rotation matrix for a rotation around the z-axis.

CreateRotationZ(NFloat)

Builds a rotation matrix for a rotation around the z-axis.

CreateRotationZ(Single, SCNMatrix4)

Builds a rotation matrix for a rotation around the z-axis.

CreateRotationZ(Single)

Builds a rotation matrix for a rotation around the z-axis.

CreateTranslation(NFloat, NFloat, NFloat, SCNMatrix4)

Creates a translation matrix.

CreateTranslation(NFloat, NFloat, NFloat)

Creates a translation matrix.

CreateTranslation(SCNVector3, SCNMatrix4)

Creates a translation matrix.

CreateTranslation(SCNVector3)

Creates a translation matrix.

CreateTranslation(Single, Single, Single, SCNMatrix4)

Creates a translation matrix.

CreateTranslation(Single, Single, Single)

Creates a translation matrix.

Equals(Object)

Indicates whether this instance and a specified object are equal.

Equals(SCNMatrix4)

Indicates whether the current matrix is equal to another matrix.

GetHashCode()

Returns the hashcode for this instance.

Invert()

Converts this instance into its inverse.

Invert(SCNMatrix4)

Calculate the inverse of the given matrix

LookAt(NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, NFloat, NFloat)

Build a world space to camera space matrix

LookAt(SCNVector3, SCNVector3, SCNVector3)

Build a world space to camera space matrix

LookAt(Single, Single, Single, Single, Single, Single, Single, Single, Single)

Build a world space to camera space matrix

Mult(SCNMatrix4, SCNMatrix4, SCNMatrix4)

Combines two transformation matrices.

Mult(SCNMatrix4, SCNMatrix4)

Combines two transformation matrices.

Rotate(NQuaterniond)

Build a rotation matrix from a quaternion

Rotate(Quaternion)

Build a rotation matrix from a quaternion

Scale(NFloat, NFloat, NFloat)

Build a scaling matrix

Scale(NFloat)

Build a scaling matrix

Scale(SCNVector3)

Build a scaling matrix

Scale(Single, Single, Single)

Build a scaling matrix

Scale(Single)

Build a scaling matrix

ToString()

Returns a System.String that represents the current SCNMatrix4.

Transpose()

Converts this instance into its transpose.

Transpose(SCNMatrix4, SCNMatrix4)

Calculate the transpose of the given matrix

Transpose(SCNMatrix4)

Calculate the transpose of the given matrix

Operators

Name Description
Equality(SCNMatrix4, SCNMatrix4)

Compares two instances for equality.

Inequality(SCNMatrix4, SCNMatrix4)

Compares two instances for inequality.

Multiply(SCNMatrix4, SCNMatrix4)

Matrix multiplication

Applies to