omni::math::linalg::matrix4
Defined in usdrt/gf/matrix.h
-
template<typename T>
class matrix4 : public omni::math::linalg::base_matrix<T, 4> Public Types
-
using base_type = base_matrix<T, 4>
Public Functions
-
matrix4() = default
-
inline matrix4(T v00, T v01, T v02, T v03, T v10, T v11, T v12, T v13, T v20, T v21, T v22, T v23, T v30, T v31, T v32, T v33)
-
inline this_type &Set(const T m[numRows][numColumns])
-
inline this_type &Set(T v00, T v01, T v02, T v03, T v10, T v11, T v12, T v13, T v20, T v21, T v22, T v23, T v30, T v31, T v32, T v33)
-
inline int GetHandedness() const
-
inline bool IsRightHanded() const
-
inline bool IsLeftHanded() const
-
inline bool Orthonormalize()
-
inline this_type &SetLookAt(const vec3<T> &cameraPosition, const vec3<T> &focusPosition, const vec3<T> &upDirection)
-
template<typename R>
inline this_type &SetLookAt(const vec3<T> &cameraPosition, const R &orientation)
-
bool Factor(this_type *r, vec3<T> *s, this_type *u, vec3<T> *t, this_type *p, float eps = 1e-10) const
-
template<typename R>
inline vec3<T> DecomposeRotation(const vec3<T> &axis0, const vec3<T> &axis1, const vec3<T> &axis2) 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 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)
-
using base_type = base_matrix<T, 4>