#include <MRSymMatrix4.h>
Public Types | |
using | ValueType = T |
Public Member Functions | |
constexpr | SymMatrix4 () noexcept=default |
template<typename U > | |
constexpr | SymMatrix4 (const SymMatrix4< U > &m) |
constexpr T | trace () const noexcept |
computes trace of the matrix | |
constexpr T | normSq () const noexcept |
computes the squared norm of the matrix, which is equal to the sum of 16 squared elements | |
SymMatrix4 & | operator+= (const SymMatrix4< T > &b) |
SymMatrix4 & | operator-= (const SymMatrix4< T > &b) |
SymMatrix4 & | operator*= (T b) |
SymMatrix4 & | operator/= (T b) |
bool | operator== (const SymMatrix4< T > &) const =default |
Static Public Member Functions | |
static constexpr SymMatrix4 | identity () noexcept |
static constexpr SymMatrix4 | diagonal (T diagVal) noexcept |
Public Attributes | |
T | xx = 0 |
zero matrix by default | |
T | xy = 0 |
T | xz = 0 |
T | xw = 0 |
T | yy = 0 |
T | yz = 0 |
T | yw = 0 |
T | zz = 0 |
T | zw = 0 |
T | ww = 0 |
Related Symbols | |
(Note that these are not member symbols.) | |
template<typename T > | |
Vector4< T > | operator* (const SymMatrix4< T > &a, const Vector4< T > &b) |
x = a * b | |
template<typename T > | |
SymMatrix4< T > | outerSquare (const Vector4< T > &a) |
x = a * a^T | |
template<typename T > | |
SymMatrix4< T > | outerSquare (T k, const Vector4< T > &a) |
x = k * a * a^T | |
symmetric 4x4 matrix
using MR::SymMatrix4< T >::ValueType = T |
|
constexprdefaultnoexcept |
|
inlineexplicitconstexpr |
|
inlinestaticconstexprnoexcept |
|
inlinestaticconstexprnoexcept |
|
constexprnoexcept |
computes the squared norm of the matrix, which is equal to the sum of 16 squared elements
SymMatrix4 & MR::SymMatrix4< T >::operator*= | ( | T | b | ) |
SymMatrix4 & MR::SymMatrix4< T >::operator+= | ( | const SymMatrix4< T > & | b | ) |
SymMatrix4 & MR::SymMatrix4< T >::operator-= | ( | const SymMatrix4< T > & | b | ) |
SymMatrix4 & MR::SymMatrix4< T >::operator/= | ( | T | b | ) |
|
default |
|
inlineconstexprnoexcept |
computes trace of the matrix
|
related |
x = a * b
|
related |
x = a * a^T
|
related |
x = k * a * a^T
T MR::SymMatrix4< T >::ww = 0 |
T MR::SymMatrix4< T >::xw = 0 |
T MR::SymMatrix4< T >::xx = 0 |
zero matrix by default
T MR::SymMatrix4< T >::xy = 0 |
T MR::SymMatrix4< T >::xz = 0 |
T MR::SymMatrix4< T >::yw = 0 |
T MR::SymMatrix4< T >::yy = 0 |
T MR::SymMatrix4< T >::yz = 0 |
T MR::SymMatrix4< T >::zw = 0 |
T MR::SymMatrix4< T >::zz = 0 |