smat4f.md 3.9 KB


id: smat4f title: SMat4F

sidebar_label: SMat4F

A standard Float backed 4x4 transformation matrix.

Constructors

Method New(a:Float, b:Float, c:Float, d:Float, e:Float, f:Float, g:Float, h:Float, i:Float, j:Float, k:Float, l:Float, m:Float, n:Float, o:Float, p:Float)

Creates a new SMat4F from the supplied arguments.


Operators

Method Operator+:SMat4F(z:SMat4F Var)

Adds z to the matrix, returning a new matrix.


Method Operator-:SMat4F(z:SMat4F Var)

Subtracts z from the matrix, returning a new matrix.


Method Operator*:SMat4F(z:SMat4F Var)

Multiplies the matrix by z, the dot product, returning a new matrix.


Methods

Method Apply:SVec2F(v:SVec2F)

Applies the matrix to the vector v, returning a new vector.


Method Apply:SVec3F(v:SVec3F)

Applies the 4x4 matrix b to the vector, returning a new vector.


Method Apply:SVec4F(v:SVec4F)

Applies the 4x4 matrix b to the vector, returning a new vector.


Method Adjoint:SMat4F()

Returns the transposition of the cofactor matrix.


Method CompMul:SMat4F(z:SMat4F Var)

Multiplies the matrix by z by its components, returning a new matrix.


Method Determinant:Float()

Returns the determinant of the matrix.


Method Invert:SMat4F()

The inverse of this matrix.

An inverted matrix is such that if multiplied by the original would result in identity matrix. If some matrix transforms vectors in a particular way, then the inverse matrix can transform them back.


Method Rotate:SMat4F(axis:SVec3F, angle:Double)

Creates a rotation matrix, rotated angle degrees around the point axis.


Method Scale:SMat4F(s:SVec3F)

Scales the matrix, return the new scaled matrix.


Method Scale:SMat4F(s:SVec3D)

Scales the matrix, return the new scaled matrix.


Method Transpose:SMat4F()

Returns the transpose of this matrix.

The transposed matrix is the one that has the columns exchanged with its rows.


Method Translate:SMat4F(s:SVec3F)

Translates the matrix to s.


Method Translate:SMat4F(s:SVec3D)

Translates the matrix To s.


Method ToString:String() Override

Returns a String representation of the matrix.


Functions

Function Identity:SMat4F()

Returns the identity matrix.


Function Frustum:SMat4F(l:Float, r:Float, b:Float, t:Float, n:Float, f:Float)

Returns a projection matrix with a viewing frustum defined by the plane coordinates passed in.


Function LookAt:SMat4F(eye:SVec3F, pos:SVec3F, upDir:SVec3F)

Computes a transformation matrix that corresponds to a camera viewing the eye from the pos.

The right-hand vector is perpendicular to the up vector.


Function Orthogonal:SMat4F(width:Float, height:Float, zNear:Float, zFar:Float)

Creates an orthogonal projection matrix.

The returned matrix, when used as a Camera's projection matrix, creates a view showing the area between width and height, with zNear and zFar as the near and far depth clipping planes.


Function Perspective:SMat4F(fov:Float, w:Float, h:Float, n:Float, f:Float)

Creates a perspective projection matrix.


Function Rotation:SMat4F(axis:SVec3F, angle:Double)

Returns a rotation matrix on the given axis and angle degrees.


Function Scaling:SMat4F(s:SVec3F)

Creates a scaling matrix.


Function Scaling:SMat4F(s:SVec3D)

Creates a Scaling matrix.


Function Translation:SMat4F(s:SVec3F)

Creates a translation matrix.


Function Translation:SMat4F(s:SVec3D)

Creates a translation matrix.