HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_Quaternion.h File Reference
#include "UT_API.h"
#include "UT_FixedVectorTraits.h"
#include "UT_Vector3.h"
#include "UT_Vector4.h"
#include "UT_VectorTypes.h"
#include <SYS/SYS_Inline.h>
#include <SYS/SYS_Math.h>
#include <SYS/SYS_Types.h>
#include <iosfwd>
#include <limits>
#include <stddef.h>
+ Include dependency graph for UT_Quaternion.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  UT_QuaternionT< T >
 Quaternion class. More...
 
class  UT_FixedVector< T, D >
 
struct  UT_FixedVectorTraits< UT_QuaternionT< T > >
 
struct  UT_QuaternionTFromFixed< T >
 
struct  UT_FromFixed< V >
 
struct  UT_FromFixed< UT_QuaternionT< T > >
 

Macros

#define __UT_Quaternion_h__
 

Typedefs

typedef UT_QuaternionT< fpreal32UT_Quaternion
 
typedef UT_QuaternionT< fprealUT_QuaternionR
 
typedef UT_QuaternionT< fpreal16UT_QuaternionH
 
typedef UT_QuaternionT< fpreal32UT_QuaternionF
 
typedef UT_QuaternionT< fpreal64UT_QuaternionD
 

Functions

template<typename T >
UT_QuaternionT< T > SYSlerp (const UT_QuaternionT< T > &q1, const UT_QuaternionT< T > &q2, T t)
 Perform component-wise SYSlerp of two quaternions. More...
 
template<typename T >
UT_API size_t format (char *buf, size_t buf_size, const UT_QuaternionT< T > &q)
 
template<typename T >
UT_QuaternionT< T > operator* (const UT_QuaternionT< T > &q1, const UT_QuaternionT< T > &q2)
 
template<typename T >
UT_QuaternionT< T > operator+ (const UT_QuaternionT< T > &q1, const UT_QuaternionT< T > &q2)
 
template<typename T >
UT_QuaternionT< T > operator- (const UT_QuaternionT< T > &q1, const UT_QuaternionT< T > &q2)
 
template<typename T >
UT_QuaternionT< T > operator- (const UT_QuaternionT< T > &q)
 
template<typename T >
UT_QuaternionT< T > operator* (const UT_QuaternionT< T > &q, T scalar)
 
template<typename T >
UT_QuaternionT< T > operator* (T scalar, const UT_QuaternionT< T > &q)
 
template<typename T >
UT_QuaternionT< T > operator/ (const UT_QuaternionT< T > &a, const UT_QuaternionT< T > &b)
 
template<typename T >
UT_QuaternionT< T > operator/ (const UT_QuaternionT< T > &q, T scalar)
 
template<typename T >
dot (const UT_QuaternionT< T > &q1, const UT_QuaternionT< T > &q2)
 
template<typename T >
size_t hash_value (const UT_QuaternionT< T > &val)
 
template<typename TS >
constexpr UT_QuaternionT
< SYS_FixedArrayElement_t< TS > > 
UTmakeQuaternionT (const TS &as) noexcept
 

Variables

template<typename T >
class UT_API UT_QuaternionT
 

Macro Definition Documentation

#define __UT_Quaternion_h__

Definition at line 20 of file UT_Quaternion.h.

Typedef Documentation

Definition at line 587 of file UT_Quaternion.h.

Definition at line 591 of file UT_Quaternion.h.

Definition at line 590 of file UT_Quaternion.h.

Definition at line 589 of file UT_Quaternion.h.

Definition at line 588 of file UT_Quaternion.h.

Function Documentation

template<typename T >
T dot ( const UT_QuaternionT< T > &  q1,
const UT_QuaternionT< T > &  q2 
)
inline

Definition at line 575 of file UT_Quaternion.h.

template<typename T >
UT_API size_t format ( char *  buf,
size_t  buf_size,
const UT_QuaternionT< T > &  q 
)
template<typename T >
size_t hash_value ( const UT_QuaternionT< T > &  val)
inline

Definition at line 582 of file UT_Quaternion.h.

template<typename T >
UT_QuaternionT<T> operator* ( const UT_QuaternionT< T > &  q1,
const UT_QuaternionT< T > &  q2 
)
inline

Definition at line 405 of file UT_Quaternion.h.

template<typename T >
UT_QuaternionT<T> operator* ( const UT_QuaternionT< T > &  q,
scalar 
)
inline

Definition at line 458 of file UT_Quaternion.h.

template<typename T >
UT_QuaternionT<T> operator* ( scalar,
const UT_QuaternionT< T > &  q 
)
inline

Definition at line 468 of file UT_Quaternion.h.

template<typename T >
UT_QuaternionT<T> operator+ ( const UT_QuaternionT< T > &  q1,
const UT_QuaternionT< T > &  q2 
)
inline

Definition at line 416 of file UT_Quaternion.h.

template<typename T >
UT_QuaternionT<T> operator- ( const UT_QuaternionT< T > &  q1,
const UT_QuaternionT< T > &  q2 
)
inline

Definition at line 438 of file UT_Quaternion.h.

template<typename T >
UT_QuaternionT<T> operator- ( const UT_QuaternionT< T > &  q)
inline

Definition at line 448 of file UT_Quaternion.h.

template<typename T >
UT_QuaternionT<T> operator/ ( const UT_QuaternionT< T > &  a,
const UT_QuaternionT< T > &  b 
)
inline

Definition at line 508 of file UT_Quaternion.h.

template<typename T >
UT_QuaternionT<T> operator/ ( const UT_QuaternionT< T > &  q,
scalar 
)
inline

Definition at line 521 of file UT_Quaternion.h.

template<typename T >
UT_QuaternionT< T > SYSlerp ( const UT_QuaternionT< T > &  q1,
const UT_QuaternionT< T > &  q2,
t 
)
inline

Perform component-wise SYSlerp of two quaternions.

Definition at line 649 of file UT_Quaternion.h.

template<typename TS >
constexpr UT_QuaternionT< SYS_FixedArrayElement_t< TS > > UTmakeQuaternionT ( const TS &  as)
noexcept

Definition at line 625 of file UT_Quaternion.h.

Variable Documentation

template<typename T >
class UT_API UT_QuaternionT

Definition at line 42 of file UT_Quaternion.h.