MeshLib C++ Docs
Loading...
Searching...
No Matches

#include <MRMesh/MRSymMatrix3.h>

Public Types

using ValueType = T

Public Member Functions

constexpr SymMatrix3 () noexcept=default
template<typename U>
 MR_REQUIRES_IF_SUPPORTED (!std::is_same_v< T, U >) const expr explicit SymMatrix3(const SymMatrix3< 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 9 squared elements
constexpr T det () const noexcept
 computes determinant of the matrix
constexpr SymMatrix3< T > inverse () const noexcept
 computes inverse matrix
constexpr SymMatrix3< T > inverse (T det) const noexcept
 computes inverse matrix given determinant of this
SymMatrix3operator+= (const SymMatrix3< T > &b)
SymMatrix3operator-= (const SymMatrix3< T > &b)
SymMatrix3operator*= (T b)
SymMatrix3operator/= (T b)

Static Public Member Functions

static constexpr SymMatrix3 identity () noexcept
static constexpr SymMatrix3 diagonal (T diagVal) noexcept

Public Attributes

xx = 0
 zero matrix by default
xy = 0
xz = 0
yy = 0
yz = 0
zz = 0

(Note that these are not member symbols.)

template<typename T>
Vector3< T > operator* (const SymMatrix3< T > &a, const Vector3< T > &b)
 x = a * b
template<typename T>
SymMatrix3< T > outerSquare (const Vector3< T > &a)
 x = a * a^T
template<typename T>
SymMatrix3< T > outerSquare (T k, const Vector3< T > &a)
 x = k * a * a^T
template<typename T>
SymMatrix3< T > crossSquare (const Vector3< T > &a)

Detailed Description

template<typename T>
struct MR::SymMatrix3< T >

symmetric 3x3 matrix


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