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

## Detailed Description

template<typename Type>
class juce::Matrix3D< Type >

A 4x4 3D transformation matrix.

See also
  Vector3D, Quaternion, AffineTransform

The documentation for this class was generated from the following file:

- juce_opengl/geometry/juce_Matrix3D.h

## Public Member Functions

| Matrix3D () noexcept
| Creates an identity matrix.
| Matrix3D (const Matrix3D &other) noexcept
| Creates a copy of another matrix.
Matrix3D & | operator= (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.
Matrix3D & | operator*= (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.

## Constructors and Destructors

## Matrix3D() [1/5]

template<typename Type>

juce::Matrix3D< Type >::Matrix3D | ( |  | ) |

inline noexcept

Creates an identity matrix.

References mat.

Referenced by fromFrustum(), fromTranslation(), Matrix3D(), operator*(), operator*=(), operator=(), and rotation().

## Matrix3D() [2/5]

template<typename Type>

juce::Matrix3D< Type >::Matrix3D | ( | const Matrix3D< Type > & | other | ) |

inline noexcept

Creates a copy of another matrix.

References mat, and Matrix3D().

## Matrix3D() [3/5]

template<typename Type>

juce::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 )

inline noexcept

Creates a matrix from its raw 4x4 values.

References mat.

## Matrix3D() [4/5]

template<typename Type>

juce::Matrix3D< Type >::Matrix3D | ( | const Type * | values | ) |

inline noexcept

Creates a matrix from an array of 16 raw values.

References mat.

## Matrix3D() [5/5]

template<typename Type>

juce::Matrix3D< Type >::Matrix3D | ( | const AffineTransform & | transform | ) |

inline noexcept

Creates a matrix from a 2D affine transform.

References mat.

## Member Functions

## operator=()

template<typename Type>

Matrix3D & juce::Matrix3D< Type >::operator= | ( | const Matrix3D< Type > & | other | ) |

inline noexcept

Copies another matrix.

References mat, and Matrix3D().

## fromTranslation()

template<typename Type>

Matrix3D juce::Matrix3D< Type >::fromTranslation | ( | Vector3D< Type > | vector | ) |

inline static noexcept

Creates a matrix from a 3D vector translation.

References Matrix3D().

## fromFrustum()

template<typename Type>

Matrix3D juce::Matrix3D< Type >::fromFrustum | ( | Type | left,
|  | Type | right,
|  | Type | bottom,
|  | Type | top,
|  | Type | nearDistance,
|  | Type | farDistance )

inline static noexcept

Returns a new matrix from the given frustum values.

References Matrix3D().

## rotation()

template<typename Type>

Matrix3D juce::Matrix3D< Type >::rotation | ( | Vector3D< Type > | eulerAngleRadians | ) |

inline static noexcept

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

References Matrix3D().

## operator*=()

template<typename Type>

Matrix3D & juce::Matrix3D< Type >::operator*= | ( | const Matrix3D< Type > & | other | ) |

inline noexcept

Multiplies this matrix by another.

References Matrix3D().

## operator*()

template<typename Type>

Matrix3D juce::Matrix3D< Type >::operator* | ( | const Matrix3D< Type > & | other | ) | const

inline noexcept

Multiplies this matrix by another, and returns the result.

References mat, and Matrix3D().

## Member Data Documentation

## mat

template<typename Type>

Type juce::Matrix3D< Type >::mat[16]

The 4x4 matrix values.

These are stored in the standard OpenGL order.

Referenced by Matrix3D(), Matrix3D(), Matrix3D(), Matrix3D(), Matrix3D(), operator*(), and operator=().

### Purchase

Get JUCE

### Discover

What's New in JUCE Features

### Learn

Documentaion Tutorials Made with JUCE Resources

### Support

JUCE Forum Newsletter Archive

### About

Contact Us JUCE Legal JUCE Licensing FAQ

### Events

Audio Developer Conference
© Raw Material Software Limited