matrix3
Fully qualified name: omni::math::linalg::matrix3
-
template<typename T>
class matrix3 : public omni::math::linalg::base_matrix<T, 3>
-
Public Functions
-
matrix3() = default
-
constexpr matrix3(const this_type&) = default
-
constexpr this_type &operator=(const this_type&) = default
-
inline matrix3(const base_type &other)
-
template<typename OTHER_T>
inline explicit matrix3(
- const matrix3<OTHER_T> &other,
)
-
inline matrix3(
- T v00,
- T v01,
- T v02,
- T v10,
- T v11,
- T v12,
- T v20,
- T v21,
- T v22,
)
-
inline matrix3(const usdrt::GfRotation &rot)
-
inline matrix3(const quat<double> &rotation)
-
inline this_type &Set(const T m[numRows][numColumns])
-
inline this_type &Set(
- T v00,
- T v01,
- T v02,
- T v10,
- T v11,
- T v12,
- T v20,
- T v21,
- T v22,
)
-
inline this_type &SetIdentity()
-
inline this_type &SetZero()
-
inline this_type &SetDiagonal(T scalar)
-
inline this_type &SetDiagonal(
- const base_vec<T, numRows> &diagonal,
)
-
inline this_type GetTranspose() const
-
inline this_type GetInverse(T *det = nullptr, T epsilon = T(0)) const
-
inline T GetDeterminant() const
-
inline bool Orthonormalize()
-
inline this_type GetOrthonormalized() const
-
inline int GetHandedness() const
-
inline bool IsRightHanded() const
-
inline bool IsLeftHanded() const
-
inline this_type &operator*=(const base_type &other)
-
inline this_type &operator*=(T scalar)
-
inline this_type &operator+=(const base_type &other)
-
inline this_type &operator-=(const base_type &other)
-
inline this_type operator-() const
-
inline this_type &SetScale(T scale)
-
inline this_type &SetScale(const vec3<T> &scales)
-
template<typename R>
inline this_type &SetGfRotation(const R &rot)
-
inline this_type &SetRotate(const quat<double> &rotation)
-
template<typename R>
inline vec3<T> DecomposeRotation(
- const vec3<T> &axis0,
- const vec3<T> &axis1,
- const vec3<T> &axis2,
) const
-
inline void SetRow(
- size_t rowIndex,
- const base_vec<T, N> &rowValues,
)
-
inline void SetColumn(
- size_t colIndex,
- const base_vec<T, N> &colValues,
)
-
inline base_vec<T, N> GetRow(size_t rowIndex) const
-
inline base_vec<T, N> GetColumn(size_t colIndex) const
-
inline base_matrix<T, N> &Set(const T m[N][N])
-
inline base_matrix<T, N> &SetDiagonal(
- const base_vec<T, N> &diagonal,
)
-
inline T *Get(T m[N][N]) const
-
inline T *data()
-
inline const T *data() const
-
inline T *GetArray()
-
inline const T *GetArray() const
-
inline T *operator[](size_t row)
-
inline const T *operator[](size_t row) const
-
inline bool operator==(const base_matrix<T, N> &other) const
-
inline bool operator==(const base_matrix<OTHER_T, N> &other) const
-
inline bool operator!=(const base_matrix<T, N> &other) const
-
inline bool operator!=(const base_matrix<OTHER_T, N> &other) const
-
inline base_matrix<T, N> &operator*=(
- const base_matrix<T, N> &other,
)
-
inline base_matrix<T, N> &operator+=(
- const base_matrix<T, N> &other,
)
-
inline base_matrix<T, N> &operator-=(
- const base_matrix<T, N> &other,
)
Public Static Attributes
-
static const size_t numRows
-
static const size_t numColumns
Protected Attributes
-
T v[N][N]