Loading...
Searching...
No Matches
Matrix3D< Type > Class Template Reference

A 4x4 3D transformation matrix. More...

#include <juce_Matrix3D.h>

Public Member Functions

 Matrix3D () noexcept
 Creates an identity matrix.
 
 Matrix3D (const Matrix3D &other) noexcept
 Creates a copy of another matrix.
 
Matrix3Doperator= (const Matrix3D &other) noexcept
 Copies another matrix.
 
 Matrix3D (Type m00, Type m10, Type m20, Type m30, Type m01, Type m11, Type m21, Type m31, Type m02, Type m12, Type m22, Type m32, Type m03, Type m13, Type m23, Type m33) noexcept
 Creates a matrix from its raw 4x4 values.
 
 Matrix3D (const Type *values) noexcept
 Creates a matrix from an array of 16 raw values.
 
 Matrix3D (const AffineTransform &transform) noexcept
 Creates a matrix from a 2D affine transform.
 
Matrix3Doperator*= (const Matrix3D &other) noexcept
 Multiplies this matrix by another.
 
Matrix3D operator* (const Matrix3D &other) const noexcept
 Multiplies this matrix by another, and returns the result.
 

Static Public Member Functions

static Matrix3D fromTranslation (Vector3D< Type > vector) noexcept
 Creates a matrix from a 3D vector translation.
 
static Matrix3D fromFrustum (Type left, Type right, Type bottom, Type top, Type nearDistance, Type farDistance) noexcept
 Returns a new matrix from the given frustum values.
 
static Matrix3D rotation (Vector3D< Type > eulerAngleRadians) noexcept
 Returns a matrix which will apply a rotation through the Y, X and Z angles specified by a vector.
 

Public Attributes

Type mat [16]
 The 4x4 matrix values.
 

Detailed Description

template<typename Type>
class Matrix3D< Type >

A 4x4 3D transformation matrix.

See also
Vector3D, Quaternion, AffineTransform

Constructor & Destructor Documentation

◆ Matrix3D() [1/5]

template<typename Type >
Matrix3D< Type >::Matrix3D ( )
noexcept

Creates an identity matrix.

References Matrix3D< Type >::mat.

◆ Matrix3D() [2/5]

template<typename Type >
Matrix3D< Type >::Matrix3D ( const Matrix3D< Type > & other)
noexcept

Creates a copy of another matrix.

References Matrix3D< Type >::mat.

◆ Matrix3D() [3/5]

template<typename Type >
Matrix3D< Type >::Matrix3D ( Type m00,
Type m10,
Type m20,
Type m30,
Type m01,
Type m11,
Type m21,
Type m31,
Type m02,
Type m12,
Type m22,
Type m32,
Type m03,
Type m13,
Type m23,
Type m33 )
noexcept

Creates a matrix from its raw 4x4 values.

References Matrix3D< Type >::mat.

◆ Matrix3D() [4/5]

template<typename Type >
Matrix3D< Type >::Matrix3D ( const Type * values)
noexcept

Creates a matrix from an array of 16 raw values.

References Matrix3D< Type >::mat.

◆ Matrix3D() [5/5]

template<typename Type >
Matrix3D< Type >::Matrix3D ( const AffineTransform & transform)
noexcept

Creates a matrix from a 2D affine transform.

References Matrix3D< Type >::mat.

Member Function Documentation

◆ operator=()

template<typename Type >
Matrix3D & Matrix3D< Type >::operator= ( const Matrix3D< Type > & other)
noexcept

Copies another matrix.

References Matrix3D< Type >::mat.

◆ fromTranslation()

template<typename Type >
static Matrix3D Matrix3D< Type >::fromTranslation ( Vector3D< Type > vector)
staticnoexcept

Creates a matrix from a 3D vector translation.

◆ fromFrustum()

template<typename Type >
static Matrix3D Matrix3D< Type >::fromFrustum ( Type left,
Type right,
Type bottom,
Type top,
Type nearDistance,
Type farDistance )
staticnoexcept

Returns a new matrix from the given frustum values.

◆ rotation()

template<typename Type >
static Matrix3D Matrix3D< Type >::rotation ( Vector3D< Type > eulerAngleRadians)
staticnoexcept

Returns a matrix which will apply a rotation through the Y, X and Z angles specified by a vector.

◆ operator*=()

template<typename Type >
Matrix3D & Matrix3D< Type >::operator*= ( const Matrix3D< Type > & other)
noexcept

Multiplies this matrix by another.

◆ operator*()

template<typename Type >
Matrix3D Matrix3D< Type >::operator* ( const Matrix3D< Type > & other) const
noexcept

Multiplies this matrix by another, and returns the result.

References Matrix3D< Type >::mat.

Member Data Documentation

◆ mat

template<typename Type >
Type Matrix3D< Type >::mat[16]

The documentation for this class was generated from the following file:
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram