Search Results for

    Show / Hide Table of Contents

    Struct Matrix

    Represents a 4x4 mathematical matrix.

    Assembly: FlaxEngine.dll
    File: Engine/Core/Math/Matrix.h
    Syntax
    public struct Matrix

    Constructors

    DEPRECATED("Use Decompose with 'Matrix3x3& rotation' parameter instead")

    Declaration
    public DEPRECATED("Use Decompose with 'Matrix3x3& rotation' parameter instead") void Decompose(Float3& scale
    Parameters
    "Use Decompose with 'Matrix3x3rotation' parameter instead" Matrix_DEPRECATED__Use_Decompose_with__Matrix3x3__rotation__parameter_instead__

    Matrix()

    Empty constructor.

    Declaration
    public Matrix() = default

    Matrix(const Double4x4& matrix)

    Declaration
    public Matrix(const Double4x4& matrix)
    Parameters
    Double4x4 matrix

    Matrix(const Matrix3x3& matrix)

    Declaration
    public Matrix(const Matrix3x3& matrix)
    Parameters
    Matrix3x3 matrix

    Matrix(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)

    Initializes a new instance of the Matrix struct.

    Declaration
    public Matrix(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
    float m11

    The value to assign at row 1 column 1 of the matrix.

    float m12

    The value to assign at row 1 column 2 of the matrix.

    float m13

    The value to assign at row 1 column 3 of the matrix.

    float m14

    The value to assign at row 1 column 4 of the matrix.

    float m21

    The value to assign at row 2 column 1 of the matrix.

    float m22

    The value to assign at row 2 column 2 of the matrix.

    float m23

    The value to assign at row 2 column 3 of the matrix.

    float m24

    The value to assign at row 2 column 4 of the matrix.

    float m31

    The value to assign at row 3 column 1 of the matrix.

    float m32

    The value to assign at row 3 column 2 of the matrix.

    float m33

    The value to assign at row 3 column 3 of the matrix.

    float m34

    The value to assign at row 3 column 4 of the matrix.

    float m41

    The value to assign at row 4 column 1 of the matrix.

    float m42

    The value to assign at row 4 column 2 of the matrix.

    float m43

    3The value to assign at row 4 column 3 of the matrix.

    float m44

    The value to assign at row 4 column 4 of the matrix.

    Matrix(float values[16])

    Initializes a new instance of the Matrix struct.

    Declaration
    public Matrix(float values[16])
    Parameters
    float values

    The values to assign to the components of the matrix. This must be an array with sixteen elements.

    Fields

    const

    Declaration
    public Matrix Float3translation const
    Field Value
    Matrix Float3translation

    Identity

    The identity matrix.

    Declaration
    public static Matrix Identity
    Field Value
    Matrix

    M11

    Value at row 1 column 1 of the matrix.

    Declaration
    public float M11
    Field Value
    float

    M12

    Value at row 1 column 2 of the matrix.

    Declaration
    public float M12
    Field Value
    float

    M13

    Value at row 1 column 3 of the matrix.

    Declaration
    public float M13
    Field Value
    float

    M14

    Value at row 1 column 4 of the matrix.

    Declaration
    public float M14
    Field Value
    float

    M21

    Value at row 2 column 1 of the matrix.

    Declaration
    public float M21
    Field Value
    float

    M22

    Value at row 2 column 2 of the matrix.

    Declaration
    public float M22
    Field Value
    float

    M23

    Value at row 2 column 3 of the matrix.

    Declaration
    public float M23
    Field Value
    float

    M24

    Value at row 2 column 4 of the matrix.

    Declaration
    public float M24
    Field Value
    float

    M31

    Value at row 3 column 1 of the matrix.

    Declaration
    public float M31
    Field Value
    float

    M32

    Value at row 3 column 2 of the matrix.

    Declaration
    public float M32
    Field Value
    float

    M33

    Value at row 3 column 3 of the matrix.

    Declaration
    public float M33
    Field Value
    float

    M34

    Value at row 3 column 4 of the matrix.

    Declaration
    public float M34
    Field Value
    float

    M41

    Value at row 4 column 1 of the matrix.

    Declaration
    public float M41
    Field Value
    float

    M42

    Value at row 4 column 2 of the matrix.

    Declaration
    public float M42
    Field Value
    float

    M43

    Value at row 4 column 3 of the matrix.

    Declaration
    public float M43
    Field Value
    float

    M44

    Value at row 4 column 4 of the matrix.

    Declaration
    public float M44
    Field Value
    float

    Raw

    Declaration
    public float Raw[16]
    Field Value
    float

    rotation

    Declaration
    public Matrix rotation
    Field Value
    Matrix

    Values

    Declaration
    public float Values[4][4]
    Field Value
    float

    Zero

    A matrix with all of its components set to zero.

    Declaration
    public static Matrix Zero
    Field Value
    Matrix

    Methods

    Add(const Matrix& left, const Matrix& right, Matrix& result)

    Declaration
    public static void Add(const Matrix& left, const Matrix& right, Matrix& result)
    Parameters
    Matrix left

    Matrix right

    Matrix result

    AffineTransformation(float scaling, const Float3& rotationCenter, const Quaternion& rotation, const Float3& translation, Matrix& result)

    Declaration
    public static void AffineTransformation(float scaling, const Float3& rotationCenter, const Quaternion& rotation, const Float3& translation, Matrix& result)
    Parameters
    float scaling

    Float3 rotationCenter

    Quaternion rotation

    Float3 translation

    Matrix result

    AffineTransformation(float scaling, const Quaternion& rotation, const Float3& translation, Matrix& result)

    Declaration
    public static void AffineTransformation(float scaling, const Quaternion& rotation, const Float3& translation, Matrix& result)
    Parameters
    float scaling

    Quaternion rotation

    Float3 translation

    Matrix result

    AffineTransformation2D(float scaling, const Float2& rotationCenter, float rotation, const Float2& translation, Matrix& result)

    Declaration
    public static void AffineTransformation2D(float scaling, const Float2& rotationCenter, float rotation, const Float2& translation, Matrix& result)
    Parameters
    float scaling

    Float2 rotationCenter

    float rotation

    Float2 translation

    Matrix result

    AffineTransformation2D(float scaling, float rotation, const Float2& translation, Matrix& result)

    Declaration
    public static void AffineTransformation2D(float scaling, float rotation, const Float2& translation, Matrix& result)
    Parameters
    float scaling

    float rotation

    Float2 translation

    Matrix result

    Billboard(const Float3& objectPosition, const Float3& cameraPosition, const Float3& cameraUpFloat, const Float3& cameraForwardFloat, Matrix& result)

    Declaration
    public static void Billboard(const Float3& objectPosition, const Float3& cameraPosition, const Float3& cameraUpFloat, const Float3& cameraForwardFloat, Matrix& result)
    Parameters
    Float3 objectPosition

    Float3 cameraPosition

    Float3 cameraUpFloat

    Float3 cameraForwardFloat

    Matrix result

    CreateFromAxisAngle(const Float3& axis, float angle)

    Creates a new Matrix that rotates around an arbitrary vector.

    Declaration
    public static Matrix CreateFromAxisAngle(const Float3& axis, float angle)
    Parameters
    Float3 axis

    The axis to rotate around.

    float angle

    The angle to rotate around the vector.

    Returns
    Matrix

    Result matrix.

    CreateFromAxisAngle(const Float3& axis, float angle, Matrix& result)

    Creates a new Matrix that rotates around an arbitrary vector.

    <param name="axis"The axis to rotate around.>

    Declaration
    public static void CreateFromAxisAngle(const Float3& axis, float angle, Matrix& result)
    Parameters
    Float3 axis

    float angle

    The angle to rotate around the vector.

    Matrix result

    Result matrix.

    CreateWorld(const Float3& position, const Float3& forward, const Float3& up)

    Creates a world matrix with the specified parameters.

    Declaration
    public static Matrix CreateWorld(const Float3& position, const Float3& forward, const Float3& up)
    Parameters
    Float3 position

    Position of the object. This value is used in translation operations.

    Float3 forward

    Forward direction of the object.

    Float3 up

    Upward direction of the object; usually [0, 1, 0].

    Returns
    Matrix

    Created world matrix of given transformation world.

    CreateWorld(const Float3& position, const Float3& forward, const Float3& up, Matrix& result)

    Creates a world matrix with the specified parameters.

    Declaration
    public static void CreateWorld(const Float3& position, const Float3& forward, const Float3& up, Matrix& result)
    Parameters
    Float3 position

    Position of the object. This value is used in translation operations.

    Float3 forward

    Forward direction of the object.

    Float3 up

    Upward direction of the object; usually [0, 1, 0].

    Matrix result

    Created world matrix of given transformation world.

    Decompose(float& yaw, float& pitch, float& roll)

    Decomposes a rotation matrix with the specified yaw, pitch, roll.

    Declaration
    public void Decompose(float& yaw, float& pitch, float& roll) const
    Parameters
    float yaw

    The result yaw (in radians).

    float pitch

    The result pitch (in radians).

    float roll

    The result roll (in radians).

    Decompose(Float3& scale, Float3& translation)

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

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

    Declaration
    public void Decompose(Float3& scale, Float3& translation) const
    Parameters
    Float3 scale

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

    Float3 translation

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

    Decompose(Float3& scale, Matrix3x3& rotation, Float3& translation)

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

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

    Declaration
    public void Decompose(Float3& scale, Matrix3x3& rotation, Float3& translation) const
    Parameters
    Float3 scale

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

    Matrix3x3 rotation

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

    Float3 translation

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

    Decompose(Float3& scale, Quaternion& rotation, Float3& translation)

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

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

    Declaration
    public void Decompose(Float3& scale, Quaternion& rotation, Float3& translation) const
    Parameters
    Float3 scale

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

    Quaternion rotation

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

    Float3 translation

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

    Decompose(Transform& transform)

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

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

    Declaration
    public void Decompose(Transform& transform) const
    Parameters
    Transform transform

    When the method completes, contains the transformation of the decomposed matrix.

    Divide(const Matrix& left, const Matrix& right, Matrix& result)

    Declaration
    public static void Divide(const Matrix& left, const Matrix& right, Matrix& result)
    Parameters
    Matrix left

    Matrix right

    Matrix result

    Divide(const Matrix& left, float right, Matrix& result)

    Declaration
    public static void Divide(const Matrix& left, float right, Matrix& result)
    Parameters
    Matrix left

    float right

    Matrix result

    GetBackward()

    Declaration
    public Float3 GetBackward() const
    Returns
    Float3

    GetColumn1()

    Declaration
    public Float4 GetColumn1() const
    Returns
    Float4

    GetColumn2()

    Declaration
    public Float4 GetColumn2() const
    Returns
    Float4

    GetColumn3()

    Declaration
    public Float4 GetColumn3() const
    Returns
    Float4

    GetColumn4()

    Declaration
    public Float4 GetColumn4() const
    Returns
    Float4

    GetDeterminant()

    Declaration
    public float GetDeterminant() const
    Returns
    float

    GetDown()

    Declaration
    public Float3 GetDown() const
    Returns
    Float3

    GetForward()

    Declaration
    public Float3 GetForward() const
    Returns
    Float3

    GetLeft()

    Declaration
    public Float3 GetLeft() const
    Returns
    Float3

    GetRight()

    Declaration
    public Float3 GetRight() const
    Returns
    Float3

    GetRow1()

    Declaration
    public Float4 GetRow1() const
    Returns
    Float4

    GetRow2()

    Declaration
    public Float4 GetRow2() const
    Returns
    Float4

    GetRow3()

    Declaration
    public Float4 GetRow3() const
    Returns
    Float4

    GetRow4()

    Declaration
    public Float4 GetRow4() const
    Returns
    Float4

    GetScaleVector()

    Declaration
    public Float3 GetScaleVector() const
    Returns
    Float3

    GetTranslation()

    Declaration
    public Float3 GetTranslation() const
    Returns
    Float3

    GetUp()

    Declaration
    public Float3 GetUp() const
    Returns
    Float3

    Invert()

    Declaration
    public void Invert()

    Invert(const Matrix& value)

    Calculates the inverse of the specified matrix.

    Declaration
    public static Matrix Invert(const Matrix& value)
    Parameters
    Matrix value

    The matrix whose inverse is to be calculated.

    Returns
    Matrix

    The inverse of the specified matrix.

    Invert(const Matrix& value, Matrix& result)

    Calculates the inverse of the specified matrix.

    Declaration
    public static void Invert(const Matrix& value, Matrix& result)
    Parameters
    Matrix value

    The matrix whose inverse is to be calculated.

    Matrix result

    When the method completes, contains the inverse of the specified matrix.

    IsIdentity()

    Declaration
    public bool IsIdentity() const
    Returns
    bool

    Lerp(const Matrix& start, const Matrix& end, float amount, Matrix& result)

    Declaration
    public static void Lerp(const Matrix& start, const Matrix& end, float amount, Matrix& result)
    Parameters
    Matrix start

    Matrix end

    float amount

    Matrix result

    LookAt(const Float3& eye, const Float3& target, const Float3& up, Matrix& result)

    Declaration
    public static void LookAt(const Float3& eye, const Float3& target, const Float3& up, Matrix& result)
    Parameters
    Float3 eye

    Float3 target

    Float3 up

    Matrix result

    Multiply(const Matrix& left, const Matrix& right)

    Declaration
    public static Matrix Multiply(const Matrix& left, const Matrix& right)
    Parameters
    Matrix left

    Matrix right

    Returns
    Matrix

    Multiply(const Matrix& left, const Matrix& right, Matrix& result)

    Declaration
    public static void Multiply(const Matrix& left, const Matrix& right, Matrix& result)
    Parameters
    Matrix left

    Matrix right

    Matrix result

    Multiply(const Matrix& left, float right, Matrix& result)

    Declaration
    public static void Multiply(const Matrix& left, float right, Matrix& result)
    Parameters
    Matrix left

    float right

    Matrix result

    Negate(const Matrix& value, Matrix& result)

    Declaration
    public static void Negate(const Matrix& value, Matrix& result)
    Parameters
    Matrix value

    Matrix result

    NormalizeScale()

    Removes any scaling from the matrix by performing the normalization (each row magnitude is 1). Does not modify the 4th row with translation vector.

    Declaration
    public void NormalizeScale()

    operator!=(const Matrix& other)

    Declaration
    public bool operator!=(const Matrix& other) const
    Parameters
    Matrix other

    Returns
    bool

    operator*(const float scale)

    Declaration
    public Matrix operator*(const float scale) const
    Parameters
    float scale

    Returns
    Matrix

    operator*(const Matrix& other)

    Declaration
    public Matrix operator*(const Matrix& other) const
    Parameters
    Matrix other

    Returns
    Matrix

    operator*=(const float scale)

    Declaration
    public Matrix operator*=(const float scale)
    Parameters
    float scale

    Returns
    Matrix

    operator*=(const Matrix& other)

    Declaration
    public Matrix operator*=(const Matrix& other)
    Parameters
    Matrix other

    Returns
    Matrix

    operator+=(const Matrix& other)

    Declaration
    public Matrix operator+=(const Matrix& other)
    Parameters
    Matrix other

    Returns
    Matrix

    operator-=(const Matrix& other)

    Declaration
    public Matrix operator-=(const Matrix& other)
    Parameters
    Matrix other

    Returns
    Matrix

    operator==(const Matrix& other)

    Declaration
    public bool operator==(const Matrix& other) const
    Parameters
    Matrix other

    Returns
    bool

    Ortho(float width, float height, float zNear, float zFar, Matrix& result)

    Declaration
    public static void Ortho(float width, float height, float zNear, float zFar, Matrix& result)
    Parameters
    float width

    float height

    float zNear

    float zFar

    Matrix result

    OrthoOffCenter(float left, float right, float bottom, float top, float zNear, float zFar, Matrix& result)

    Declaration
    public static void OrthoOffCenter(float left, float right, float bottom, float top, float zNear, float zFar, Matrix& result)
    Parameters
    float left

    float right

    float bottom

    float top

    float zNear

    float zFar

    Matrix result

    Perspective(float width, float height, float zNear, float zFar, Matrix& result)

    Declaration
    public static void Perspective(float width, float height, float zNear, float zFar, Matrix& result)
    Parameters
    float width

    float height

    float zNear

    float zFar

    Matrix result

    PerspectiveFov(float fov, float aspect, float zNear, float zFar, Matrix& result)

    Declaration
    public static void PerspectiveFov(float fov, float aspect, float zNear, float zFar, Matrix& result)
    Parameters
    float fov

    float aspect

    float zNear

    float zFar

    Matrix result

    PerspectiveOffCenter(float left, float right, float bottom, float top, float zNear, float zFar, Matrix& result)

    Declaration
    public static void PerspectiveOffCenter(float left, float right, float bottom, float top, float zNear, float zFar, Matrix& result)
    Parameters
    float left

    float right

    float bottom

    float top

    float zNear

    float zFar

    Matrix result

    RotationAxis(const Float3& axis, float angle)

    Declaration
    public static Matrix RotationAxis(const Float3& axis, float angle)
    Parameters
    Float3 axis

    float angle

    Returns
    Matrix

    RotationAxis(const Float3& axis, float angle, Matrix& result)

    Declaration
    public static void RotationAxis(const Float3& axis, float angle, Matrix& result)
    Parameters
    Float3 axis

    float angle

    Matrix result

    RotationQuaternion(const Quaternion& rotation)

    Creates a rotation matrix from a quaternion

    Declaration
    public static Matrix RotationQuaternion(const Quaternion& rotation)
    Parameters
    Quaternion rotation

    The quaternion to use to build the matrix.

    Returns
    Matrix

    The created rotation matrix

    RotationQuaternion(const Quaternion& rotation, Matrix& result)

    Creates a rotation matrix from a quaternion.

    Declaration
    public static void RotationQuaternion(const Quaternion& rotation, Matrix& result)
    Parameters
    Quaternion rotation

    The quaternion to use to build the matrix.

    Matrix result

    The created rotation matrix.

    RotationX(float angle)

    Declaration
    public static Matrix RotationX(float angle)
    Parameters
    float angle

    Returns
    Matrix

    RotationX(float angle, Matrix& result)

    Declaration
    public static void RotationX(float angle, Matrix& result)
    Parameters
    float angle

    Matrix result

    RotationY(float angle)

    Declaration
    public static Matrix RotationY(float angle)
    Parameters
    float angle

    Returns
    Matrix

    RotationY(float angle, Matrix& result)

    Declaration
    public static void RotationY(float angle, Matrix& result)
    Parameters
    float angle

    Matrix result

    RotationYawPitchRoll(float yaw, float pitch, float roll)

    Declaration
    public static Matrix RotationYawPitchRoll(float yaw, float pitch, float roll)
    Parameters
    float yaw

    float pitch

    float roll

    Returns
    Matrix

    RotationYawPitchRoll(float yaw, float pitch, float roll, Matrix& result)

    Declaration
    public static void RotationYawPitchRoll(float yaw, float pitch, float roll, Matrix& result)
    Parameters
    float yaw

    float pitch

    float roll

    Matrix result

    RotationZ(float angle)

    Declaration
    public static Matrix RotationZ(float angle)
    Parameters
    float angle

    Returns
    Matrix

    RotationZ(float angle, Matrix& result)

    Declaration
    public static void RotationZ(float angle, Matrix& result)
    Parameters
    float angle

    Matrix result

    RotDeterminant()

    Calculates determinant of the rotation 3x3 matrix.

    Declaration
    public float RotDeterminant() const
    Returns
    float

    The determinant of the 3x3 matrix.

    Scaling(const Float3& scale)

    Declaration
    public static Matrix Scaling(const Float3& scale)
    Parameters
    Float3 scale

    Returns
    Matrix

    Scaling(const Float3& scale, Matrix& result)

    Declaration
    public static void Scaling(const Float3& scale, Matrix& result)
    Parameters
    Float3 scale

    Matrix result

    Scaling(float scale)

    Declaration
    public static Matrix Scaling(float scale)
    Parameters
    float scale

    Returns
    Matrix

    Scaling(float scale, Matrix& result)

    Declaration
    public static void Scaling(float scale, Matrix& result)
    Parameters
    float scale

    Matrix result

    Scaling(float x, float y, float z)

    Declaration
    public static Matrix Scaling(float x, float y, float z)
    Parameters
    float x

    float y

    float z

    Returns
    Matrix

    Scaling(float x, float y, float z, Matrix& result)

    Declaration
    public static void Scaling(float x, float y, float z, Matrix& result)
    Parameters
    float x

    float y

    float z

    Matrix result

    SetBackward(const Float3& value)

    Declaration
    public void SetBackward(const Float3& value)
    Parameters
    Float3 value

    SetColumn1(const Float4& value)

    Declaration
    public void SetColumn1(const Float4& value)
    Parameters
    Float4 value

    SetColumn2(const Float4& value)

    Declaration
    public void SetColumn2(const Float4& value)
    Parameters
    Float4 value

    SetColumn3(const Float4& value)

    Declaration
    public void SetColumn3(const Float4& value)
    Parameters
    Float4 value

    SetColumn4(const Float4& value)

    Declaration
    public void SetColumn4(const Float4& value)
    Parameters
    Float4 value

    SetDown(const Float3& value)

    Declaration
    public void SetDown(const Float3& value)
    Parameters
    Float3 value

    SetForward(const Float3& value)

    Declaration
    public void SetForward(const Float3& value)
    Parameters
    Float3 value

    SetLeft(const Float3& value)

    Declaration
    public void SetLeft(const Float3& value)
    Parameters
    Float3 value

    SetRight(const Float3& value)

    Declaration
    public void SetRight(const Float3& value)
    Parameters
    Float3 value

    SetRow1(const Float4& value)

    Declaration
    public void SetRow1(const Float4& value)
    Parameters
    Float4 value

    SetRow2(const Float4& value)

    Declaration
    public void SetRow2(const Float4& value)
    Parameters
    Float4 value

    SetRow3(const Float4& value)

    Declaration
    public void SetRow3(const Float4& value)
    Parameters
    Float4 value

    SetRow4(const Float4& value)

    Declaration
    public void SetRow4(const Float4& value)
    Parameters
    Float4 value

    SetScaleVector(const Float3& value)

    Declaration
    public void SetScaleVector(const Float3& value)
    Parameters
    Float3 value

    SetTranslation(const Float3& value)

    Declaration
    public void SetTranslation(const Float3& value)
    Parameters
    Float3 value

    SetUp(const Float3& value)

    Declaration
    public void SetUp(const Float3& value)
    Parameters
    Float3 value

    SetX(const Float3& value)

    Declaration
    public void SetX(const Float3& value)
    Parameters
    Float3 value

    SetY(const Float3& value)

    Declaration
    public void SetY(const Float3& value)
    Parameters
    Float3 value

    SetZ(const Float3& value)

    Declaration
    public void SetZ(const Float3& value)
    Parameters
    Float3 value

    Skew(float angle, const Float3& rotationVec, const Float3& transVec, Matrix& matrix)

    Declaration
    public static void Skew(float angle, const Float3& rotationVec, const Float3& transVec, Matrix& matrix)
    Parameters
    float angle

    Float3 rotationVec

    Float3 transVec

    Matrix matrix

    SmoothStep(const Matrix& start, const Matrix& end, float amount, Matrix& result)

    Declaration
    public static void SmoothStep(const Matrix& start, const Matrix& end, float amount, Matrix& result)
    Parameters
    Matrix start

    Matrix end

    float amount

    Matrix result

    Subtract(const Matrix& left, const Matrix& right, Matrix& result)

    Declaration
    public static void Subtract(const Matrix& left, const Matrix& right, Matrix& result)
    Parameters
    Matrix left

    Matrix right

    Matrix result

    ToString()

    Declaration
    public String ToString() const
    Returns
    String

    Transformation(const Float3& scaling, const Quaternion& rotation, const Float3& translation, Matrix& result)

    Creates a matrix that contains both the X, Y and Z rotation, as well as scaling and translation.

    Declaration
    public static void Transformation(const Float3& scaling, const Quaternion& rotation, const Float3& translation, Matrix& result)
    Parameters
    Float3 scaling

    The scaling.

    Quaternion rotation

    Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin.

    Float3 translation

    The translation.

    Matrix result

    When the method completes, contains the created transformation matrix.

    Transformation(const Float3& scalingCenter, const Quaternion& scalingRotation, const Float3& scaling, const Float3& rotationCenter, const Quaternion& rotation, const Float3& translation, Matrix& result)

    Declaration
    public static void Transformation(const Float3& scalingCenter, const Quaternion& scalingRotation, const Float3& scaling, const Float3& rotationCenter, const Quaternion& rotation, const Float3& translation, Matrix& result)
    Parameters
    Float3 scalingCenter

    Quaternion scalingRotation

    Float3 scaling

    Float3 rotationCenter

    Quaternion rotation

    Float3 translation

    Matrix result

    Transformation2D(const Float2& scalingCenter, float scalingRotation, const Float2& scaling, const Float2& rotationCenter, float rotation, const Float2& translation, Matrix& result)

    Declaration
    public static void Transformation2D(const Float2& scalingCenter, float scalingRotation, const Float2& scaling, const Float2& rotationCenter, float rotation, const Float2& translation, Matrix& result)
    Parameters
    Float2 scalingCenter

    float scalingRotation

    Float2 scaling

    Float2 rotationCenter

    float rotation

    Float2 translation

    Matrix result

    TransformPosition(const Matrix& m, const Float3& v)

    Declaration
    public static Float4 TransformPosition(const Matrix& m, const Float3& v)
    Parameters
    Matrix m

    Float3 v

    Returns
    Float4

    TransformPosition(const Matrix& m, const Float4& v)

    Declaration
    public static Float4 TransformPosition(const Matrix& m, const Float4& v)
    Parameters
    Matrix m

    Float4 v

    Returns
    Float4

    TransformVector(const Matrix& m, const Vector3& v)

    Declaration
    public static Vector3 TransformVector(const Matrix& m, const Vector3& v)
    Parameters
    Matrix m

    Vector3 v

    Returns
    Vector3

    Translation(const Float3& value)

    Declaration
    public static Matrix Translation(const Float3& value)
    Parameters
    Float3 value

    Returns
    Matrix

    Translation(const Float3& value, Matrix& result)

    Declaration
    public static void Translation(const Float3& value, Matrix& result)
    Parameters
    Float3 value

    Matrix result

    Translation(float x, float y, float z, Matrix& result)

    Declaration
    public static void Translation(float x, float y, float z, Matrix& result)
    Parameters
    float x

    float y

    float z

    Matrix result

    Transpose()

    Declaration
    public void Transpose()

    Transpose(const Matrix& value)

    Declaration
    public static Matrix Transpose(const Matrix& value)
    Parameters
    Matrix value

    Returns
    Matrix

    Transpose(const Matrix& value, Matrix& result)

    Declaration
    public static void Transpose(const Matrix& value, Matrix& result)
    Parameters
    Matrix value

    Matrix result

    • Improve this Doc
    • View Source
    In This Article
    Back to top Copyright © 2012-2024 Wojciech Figat