HDK
|
#include "UT_API.h"
#include "UT_Assert.h"
#include "UT_Axis.h"
#include "UT_FixedVectorTraits.h"
#include "UT_SymMatrix4.h"
#include "UT_Vector3.h"
#include "UT_Vector4.h"
#include "UT_VectorTypes.h"
#include "UT_XformOrder.h"
#include <SYS/SYS_Math.h>
#include <iosfwd>
#include <VM/VM_SIMD.h>
#include "UT_Matrix3.h"
Go to the source code of this file.
Classes | |
class | UT_Matrix4T< T > |
struct | UT_Matrix4T< T >::PivotSpaceT< S > |
Define parameters for Houdini's pivot space. More... | |
struct | UT_Matrix4T< T >::FullTransformModel |
Define parameters for Houdini's full transform model. More... | |
class | UT_FixedVector< T, D > |
struct | UT_FixedVectorTraits< UT_Matrix4T< T > > |
struct | UT_Matrix4TFromFixed< T > |
struct | UT_FromFixed< V > |
struct | UT_FromFixed< UT_Matrix4T< T > > |
Macros | |
#define | __UT_Matrix4_h__ |
Functions | |
template<typename T > | |
UT_Matrix4T< T > | operator+ (const UT_Matrix4T< T > &m1, const UT_Matrix4T< T > &m2) |
template<typename T > | |
UT_Matrix4T< T > | operator- (const UT_Matrix4T< T > &m1, const UT_Matrix4T< T > &m2) |
template<typename T > | |
UT_Matrix4T< T > | operator* (const UT_Matrix4T< T > &m1, const UT_Matrix4T< T > &m2) |
template<typename T , typename S > | |
UT_Matrix4T< T > | operator+ (const UT_Matrix4T< T > &mat, const UT_Vector4T< S > &vec) |
template<typename T , typename S > | |
UT_Matrix4T< T > | operator+ (const UT_Vector4T< S > &vec, const UT_Matrix4T< T > &mat) |
template<typename T , typename S > | |
UT_Matrix4T< T > | operator- (const UT_Matrix4T< T > &mat, const UT_Vector4T< S > &vec) |
template<typename T , typename S > | |
UT_Matrix4T< T > | operator- (const UT_Vector4T< S > &vec, const UT_Matrix4T< T > &mat) |
template<typename T , typename S > | |
UT_Matrix4T< T > | operator+ (const UT_Matrix4T< T > &mat, S sc) |
template<typename T , typename S > | |
UT_Matrix4T< T > | operator- (const UT_Matrix4T< T > &mat, S sc) |
template<typename T , typename S > | |
UT_Matrix4T< T > | operator* (const UT_Matrix4T< T > &mat, S sc) |
template<typename T , typename S > | |
UT_Matrix4T< T > | operator/ (const UT_Matrix4T< T > &mat, S sc) |
template<typename T , typename S > | |
UT_Matrix4T< T > | operator+ (S sc, const UT_Matrix4T< T > &mat) |
template<typename T , typename S > | |
UT_Matrix4T< T > | operator- (S sc, const UT_Matrix4T< T > &mat) |
template<typename T , typename S > | |
UT_Matrix4T< T > | operator* (S sc, const UT_Matrix4T< T > &mat) |
template<typename T , typename S > | |
UT_Matrix4T< T > | operator/ (S sc, const UT_Matrix4T< T > &mat) |
template<typename T > | |
UT_Matrix4T< T > | SYSmin (const UT_Matrix4T< T > &v1, const UT_Matrix4T< T > &v2) |
template<typename T > | |
UT_Matrix4T< T > | SYSmax (const UT_Matrix4T< T > &v1, const UT_Matrix4T< T > &v2) |
template<typename T , typename S > | |
UT_Matrix4T< T > | SYSlerp (const UT_Matrix4T< T > &v1, const UT_Matrix4T< T > &v2, S t) |
template<typename T , typename S > | |
UT_Matrix4T< T > | SYSbilerp (const UT_Matrix4T< T > &u0v0, const UT_Matrix4T< T > &u1v0, const UT_Matrix4T< T > &u0v1, const UT_Matrix4T< T > &u1v1, S u, S v) |
Bilinear interpolation. More... | |
template<typename T , typename S > | |
UT_Matrix4T< T > | SYSbarycentric (const UT_Matrix4T< T > &v0, const UT_Matrix4T< T > &v1, const UT_Matrix4T< T > &v2, S u, S v) |
Barycentric interpolation. More... | |
template<> | |
UT_Matrix4T< float > | operator* (const UT_Matrix4T< float > &m1, const UT_Matrix4T< float > &m2) |
template<typename T , typename S > | |
UT_Vector3T< T > | operator* (const UT_Vector3T< T > &v, const UT_Matrix4T< S > &m) |
template<> | |
UT_Vector3T< float > | rowVecMult (const UT_Vector3T< float > &v, const UT_Matrix4T< float > &m) |
template<> | |
UT_Vector3T< float > | rowVecMult3 (const UT_Vector3T< float > &v, const UT_Matrix4T< float > &m) |
template<> | |
UT_Vector3T< float > | colVecMult (const UT_Matrix4T< float > &m, const UT_Vector3T< float > &v) |
template<> | |
UT_Vector3T< float > | colVecMult3 (const UT_Matrix4T< float > &m, const UT_Vector3T< float > &v) |
template<> | |
UT_Matrix4T< float > | SYSlerp (const UT_Matrix4T< float > &v1, const UT_Matrix4T< float > &v2, float t) |
template<typename T > | |
UT_API size_t | format (char *buffer, size_t buffer_size, const UT_Matrix4T< T > &v) |
template<typename TS > | |
constexpr UT_Matrix4T < SYS_FixedArrayElement_t< TS > > | UTmakeMatrix4T (const TS &as) noexcept |
template<typename T , typename S > | |
UT_Vector3T< T > | rowVecMult (const UT_Vector3T< T > &v, const UT_Matrix4T< S > &m) |
template<typename T , typename S > | |
UT_Vector3T< T > | colVecMult (const UT_Matrix4T< S > &m, const UT_Vector3T< T > &v) |
template<typename T , typename S > | |
UT_Vector3T< T > | rowVecMult3 (const UT_Vector3T< T > &v, const UT_Matrix4T< S > &m) |
template<typename T , typename S > | |
UT_Vector3T< T > | colVecMult3 (const UT_Matrix4T< S > &m, const UT_Vector3T< T > &v) |
#define __UT_Matrix4_h__ |
Definition at line 11 of file UT_Matrix4.h.
|
inline |
Multiplication of a row or column vector by a matrix (ie. right vs. left multiplication respectively). The operator*() declared above is an alias for rowVecMult(). The functions that take a 4x4 matrix first extend the vector to 4D (with a trailing 1.0 element).
Definition at line 1937 of file UT_Matrix4.h.
|
inline |
Definition at line 1984 of file UT_Matrix4.h.
|
inline |
Multiplication of a row or column vector by a matrix (ie. right vs. left multiplication respectively). The operator*() declared above is an alias for rowVecMult(). The functions that take a 4x4 matrix first extend the vector to 4D (with a trailing 1.0 element).
Definition at line 1948 of file UT_Matrix4.h.
|
inline |
Definition at line 1997 of file UT_Matrix4.h.
UT_API size_t format | ( | char * | buffer, |
size_t | buffer_size, | ||
const UT_Matrix4T< T > & | v | ||
) |
|
inline |
Definition at line 1682 of file UT_Matrix4.h.
|
inline |
Definition at line 1847 of file UT_Matrix4.h.
|
inline |
Definition at line 1840 of file UT_Matrix4.h.
|
inline |
Definition at line 1725 of file UT_Matrix4.h.
|
inline |
Definition at line 1919 of file UT_Matrix4.h.
|
inline |
Definition at line 1646 of file UT_Matrix4.h.
|
inline |
Definition at line 1749 of file UT_Matrix4.h.
|
inline |
Definition at line 1769 of file UT_Matrix4.h.
|
inline |
Definition at line 1816 of file UT_Matrix4.h.
|
inline |
|
inline |
Definition at line 1664 of file UT_Matrix4.h.
|
inline |
Definition at line 1776 of file UT_Matrix4.h.
|
inline |
Definition at line 1796 of file UT_Matrix4.h.
|
inline |
|
inline |
Definition at line 1828 of file UT_Matrix4.h.
|
inline |
Definition at line 1860 of file UT_Matrix4.h.
|
inline |
Definition at line 1867 of file UT_Matrix4.h.
|
inline |
Multiplication of a row or column vector by a matrix (ie. right vs. left multiplication respectively). The operator*() declared above is an alias for rowVecMult(). The functions that take a 4x4 matrix first extend the vector to 4D (with a trailing 1.0 element).
Definition at line 1909 of file UT_Matrix4.h.
|
inline |
Definition at line 1959 of file UT_Matrix4.h.
|
inline |
Multiplication of a row or column vector by a matrix (ie. right vs. left multiplication respectively). The operator*() declared above is an alias for rowVecMult(). The functions that take a 4x4 matrix first extend the vector to 4D (with a trailing 1.0 element).
Definition at line 1926 of file UT_Matrix4.h.
|
inline |
Definition at line 1972 of file UT_Matrix4.h.
|
inline |
Barycentric interpolation.
Definition at line 85 of file UT_Matrix4.h.
|
inline |
Bilinear interpolation.
Definition at line 78 of file UT_Matrix4.h.
|
inline |
Definition at line 2158 of file UT_Matrix4.h.
|
inline |
Definition at line 2182 of file UT_Matrix4.h.
|
inline |
Definition at line 2134 of file UT_Matrix4.h.
|
inline |
Definition at line 2110 of file UT_Matrix4.h.
|
noexcept |
Definition at line 2237 of file UT_Matrix4.h.