Photon Engine 2.0.0-beta
A physically based renderer.
|
Represents a 4x4 matrix. More...
#include <TMatrix4.h>
Public Types | |
using | Elements = std::array<std::array<T, 4>, 4> |
Public Member Functions | |
TMatrix4 ()=default | |
TMatrix4 (T value) | |
TMatrix4 (const Elements &elements) | |
TMatrix4 (const TMatrix4 &other)=default | |
template<typename U > | |
TMatrix4 (const TMatrix4< U > &other) | |
TMatrix4 & | initIdentity () |
TMatrix4 & | initTranslation (T x, T y, T z) |
TMatrix4 & | initTranslation (const TVector3< T > &value) |
TMatrix4 & | initRotation (const TQuaternion< T > &rot) |
TMatrix4 & | initRotation (const TVector3< T > &orthBasisX, const TVector3< T > &orthBasisY, const TVector3< T > &orthBasisZ) |
TMatrix4 & | initScale (T x, T y, T z) |
TMatrix4 & | initScale (const TVector3< T > &scale) |
TMatrix4 & | initPerspectiveProjection (T fov, T aspectRatio, T zNear, T zFar) |
TMatrix4 | mul (const TMatrix4 &rhs) const |
void | mul (const TMatrix4 &rhs, TMatrix4 *out_result) const |
void | mul (const TVector3< T > &rhsXYZ, T rhsW, TVector3< T > *out_result) const |
TMatrix4 & | mulLocal (T rhs) |
TMatrix4 & | inverse (TMatrix4 *out_result) const |
TMatrix4 | transpose () const |
T | determinant () const |
bool | isEqual (const TMatrix4 &other) const |
std::string | toString () const |
Static Public Member Functions | |
static TMatrix4 | makeIdentity () |
Public Attributes | |
Elements | m |
Represents a 4x4 matrix.
using ph::math::TMatrix4< T >::Elements = std::array<std::array<T, 4>, 4> |
|
inlinedefault |
|
inlineexplicit |
|
inlineexplicit |
|
inlinedefault |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
static |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Elements ph::math::TMatrix4< T >::m |