Back to class index
float4x4[Class Summary]
v
zero[static][const]
identity[static][const]
nan[static][const]
ctor (+6 overloads)
GetScale()[const]
ComplementaryProjection()[const]
operator[](row) (+1 overload)
At(row,col) (+1 overload)
Row(row) (+1 overload)
Row3(row)[const]
Col(col)[const]
Diagonal()[const]
ScaleRow3(row,scalar)
ScaleRow(row,scalar)
ScaleCol3(col,scalar)
ScaleCol(col,scalar)
Float3x3Part()[const]
Float3x4Part() (+1 overload)
TranslatePart()[const]
RotatePart()[const]
X/Y/Z()[const]
ptr() (+1 overload)
SetRow3(row,data) (+2 overloads)
SetRow(row,data) (+3 overloads)
SetCol3(column,data) (+2 overloads)
SetCol(column,data) (+3 overloads)
Set(...) (+3 overloads)
Set3x3Part(rotation)
Set3x4Part(rotateTranslate)
SetIdentity()
SwapColumns(col1,col2)
SwapRows(row1,row2)
SetTranslatePart(tx,ty,tz) (+2 overloads)
SetRotatePart/X/Y/Z(...) (+2 overloads)
operator=(rhs) (+4 overloads)
Determinant3()[const]
Determinant4()[const]
SubMatrix(i,j)[const]
Minor(i,j)[const]
Adjugate()[const]
CholeskyDecompose(outL)[const]
LUDecompose(outLower,outUpper)[const]
Inverse(epsilon)
Inverted()[const]
InverseColOrthogonal()
InverseOrthogonalUniformScale()
InverseOrthonormal()
Transpose()
Transposed()[const]
InverseTranspose()
InverseTransposed()[const]
Trace()[const]
Orthogonalize3(...) (+1 overload)
Orthonormalize3(...) (+1 overload)
RemoveScale()
Pivot()
TransformPos(pointVector)[const] (+2 overloads)
TransformDir(directionVector)[const] (+2 overloads)
Transform(vector)[const]
TransformPos(...)[const] (+1 overload)
TransformDir(...)[const] (+1 overload)
Transform(...)[const] (+1 overload)
operator*(rhs)[const] (+5 overloads)
operator/(scalar)[const]
operator+(rhs)[const]
operator-(rhs)[const] (+1 overload)
operator+()[const]
operator*=(scalar)
operator/=(scalar)
operator+=(rhs)
operator-=(rhs)
IsFinite()[const]
IsIdentity(epsilon)[const]
IsLowerTriangular(epsilon)[const]
IsUpperTriangular(epsilon)[const]
IsInvertible(epsilon)[const]
IsSymmetric(epsilon)[const]
IsSkewSymmetric(epsilon)[const]
IsIdempotent(epsilon)[const]
HasUnitaryScale(epsilon)[const]
HasNegativeScale()[const]
HasUniformScale(epsilon)[const]
IsRowOrthogonal3(epsilon)[const]
IsColOrthogonal3(epsilon)[const]
IsOrthonormal3(epsilon)[const]
Equals(other,epsilon)[const]
ContainsProjection(epsilon)[const]
ToString()[const]
SerializeToString()[const]
ToString2()[const]
ToEuler***()[const]
ExtractScale()[const]
Decompose(...)[const] (+3 overloads)
Abs()[const]
Mul(rhs)[const] (+3 overloads)
MulPos(pointVector)[const] (+1 overload)
MulDir(directionVector)[const] (+1 overload)
Mul(vector)[const]
Translate(tx,ty,tz)[static] (+1 overload)
RotateX/Y/Z(...)[static] (+1 overload)
RotateAxisAngle(...)[static] (+1 overload)
RotateFromTo(...)[static] (+1 overload)
RandomGeneral(...)[static]
RotateFromTo(...)[static] (+1 overload)
FromQuat(orientation)[static] (+1 overload)
FromTRS(...)[static] (+3 overloads)
FromEuler***(x2,y,x)[static]
Scale(sx,sy,sz)[static] (+2 overloads)
ScaleAlongAxis(...)[static] (+1 overload)
UniformScale(uniformScale)[static] (+1 overload)
ShearX/Y/Z(yFactor,zFactor)[static]
Mirror(p)[static]
D3DOrthoProjLH(...)[static]
D3DOrthoProjRH(...)[static]
D3DPerspProjLH(...)[static]
D3DPerspProjRH(...)[static]
OpenGLOrthoProjLH(...)[static]
OpenGLOrthoProjRH(...)[static]
OpenGLPerspProjLH(...)[static]
OpenGLPerspProjRH(...)[static]
OrthographicProjection/YZ/XZ/XY(target)[static]
LookAt(...)[static] (+1 overload)

float4x4::float4x4

Syntax

float4x4::float4x4(); [1 line of code]

Creates a new float4x4 with uninitialized member values.

[opaque-qtscript]

Syntax

float4x4::float4x4(float _00, float _01, float _02, float _03, float _10, float _11, float _12, float _13, float _20, float _21, float _22, float _23, float _30, float _31, float _32, float _33); [10 lines of code]

Constructs a new float4x4 by explicitly specifying all the matrix elements.

The elements are specified in row-major format, i.e. the first row first followed by the second and third row. E.g. The element _10 denotes the scalar at second (index 1) row, first (index 0) column.

Syntax

float4x4::float4x4(const float3x3 &other); [7 lines of code]

Constructs this float4x4 to represent the same transformation as the given float3x3.

This function expands the last row and column of this matrix with the elements from the identity matrix.

Syntax

float4x4::float4x4(const float3x4 &other); [14 lines of code]

Constructs this float4x4 to represent the same transformation as the given float3x4.

The last row is set to [0 0 0 1].

Syntax

float4x4::float4x4(const float4 &col0, const float4 &col1, const float4 &col2, const float4 &col3); [18 lines of code]

Constructs the matrix by explicitly specifying the four column vectors.

Parameters

const float4 &col0The first column. If this matrix represents a change-of-basis transformation, this parameter is the world-space direction of the local X axis. const float4 &col1The second column. If this matrix represents a change-of-basis transformation, this parameter is the world-space direction of the local Y axis. const float4 &col2The third column. If this matrix represents a change-of-basis transformation, this parameter is the world-space direction of the local Z axis. const float4 &col3The fourth column. If this matrix represents a change-of-basis transformation, this parameter is the world-space position of the local space pivot.

Syntax

float4x4::float4x4(const Quat &orientation); [10 lines of code]

Constructs this float4x4 from the given quaternion.

Syntax

float4x4::float4x4(const Quat &orientation, const float3 &translation); [10 lines of code]

Constructs this float4x4 from the given quaternion and translation.

Logically, the translation occurs after the rotation has been performed.