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_Matrix4TFromUnbounded< T > |
struct | UT_FromUnbounded< V > |
UT_FromUnbounded creates a V from an unbounded array-like type. More... | |
struct | UT_FromUnbounded< 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 1933 of file UT_Matrix4.h.
|
inline |
Definition at line 1980 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 1944 of file UT_Matrix4.h.
|
inline |
Definition at line 1993 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 1678 of file UT_Matrix4.h.
|
inline |
Definition at line 1843 of file UT_Matrix4.h.
|
inline |
Definition at line 1836 of file UT_Matrix4.h.
|
inline |
Definition at line 1721 of file UT_Matrix4.h.
|
inline |
Definition at line 1915 of file UT_Matrix4.h.
|
inline |
Definition at line 1642 of file UT_Matrix4.h.
|
inline |
Definition at line 1745 of file UT_Matrix4.h.
|
inline |
Definition at line 1765 of file UT_Matrix4.h.
|
inline |
Definition at line 1812 of file UT_Matrix4.h.
|
inline |
|
inline |
Definition at line 1660 of file UT_Matrix4.h.
|
inline |
Definition at line 1772 of file UT_Matrix4.h.
|
inline |
Definition at line 1792 of file UT_Matrix4.h.
|
inline |
|
inline |
Definition at line 1824 of file UT_Matrix4.h.
|
inline |
Definition at line 1856 of file UT_Matrix4.h.
|
inline |
Definition at line 1863 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 1905 of file UT_Matrix4.h.
|
inline |
Definition at line 1955 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 1922 of file UT_Matrix4.h.
|
inline |
Definition at line 1968 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 2154 of file UT_Matrix4.h.
|
inline |
Definition at line 2178 of file UT_Matrix4.h.
|
inline |
Definition at line 2130 of file UT_Matrix4.h.
|
inline |
Definition at line 2106 of file UT_Matrix4.h.
|
noexcept |
Definition at line 2258 of file UT_Matrix4.h.