OWL
OptiX7 Wrapper Library
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
owl::common::QuaternionT< T > Struct Template Reference

#include <Quaternion.h>

Public Types

typedef vec_t< T, 3 > Vector
 

Public Member Functions

__both__ QuaternionT (void)
 Construction. More...
 
__both__ QuaternionT (const QuaternionT &other)
 
__both__ QuaternionToperator= (const QuaternionT &other)
 
__both__ QuaternionT (const T &r)
 
__both__ QuaternionT (const Vector &v)
 
__both__ QuaternionT (const T &r, const T &i, const T &j, const T &k)
 
__both__ QuaternionT (const T &r, const Vector &v)
 
__inline QuaternionT (const Vector &vx, const Vector &vy, const Vector &vz)
 
__inline QuaternionT (const T &yaw, const T &pitch, const T &roll)
 
__both__ QuaternionT (ZeroTy)
 Constants. More...
 
__both__ QuaternionT (OneTy)
 
__both__ const Vector v () const
 

Static Public Member Functions

static __both__ QuaternionT rotate (const Vector &u, const T &r)
 

Public Attributes

r
 
i
 
j
 
k
 

Member Typedef Documentation

◆ Vector

template<typename T >
typedef vec_t<T,3> owl::common::QuaternionT< T >::Vector

Constructor & Destructor Documentation

◆ QuaternionT() [1/10]

template<typename T >
__both__ owl::common::QuaternionT< T >::QuaternionT ( void  )
inline

Construction.

◆ QuaternionT() [2/10]

template<typename T >
__both__ owl::common::QuaternionT< T >::QuaternionT ( const QuaternionT< T > &  other)
inline

◆ QuaternionT() [3/10]

template<typename T >
__both__ owl::common::QuaternionT< T >::QuaternionT ( const T &  r)
inline

◆ QuaternionT() [4/10]

template<typename T >
__both__ owl::common::QuaternionT< T >::QuaternionT ( const Vector v)
inlineexplicit

◆ QuaternionT() [5/10]

template<typename T >
__both__ owl::common::QuaternionT< T >::QuaternionT ( const T &  r,
const T &  i,
const T &  j,
const T &  k 
)
inline

◆ QuaternionT() [6/10]

template<typename T >
__both__ owl::common::QuaternionT< T >::QuaternionT ( const T &  r,
const Vector v 
)
inline

◆ QuaternionT() [7/10]

template<typename T >
__inline owl::common::QuaternionT< T >::QuaternionT ( const Vector vx,
const Vector vy,
const Vector vz 
)

◆ QuaternionT() [8/10]

template<typename T >
owl::common::QuaternionT< T >::QuaternionT ( const T &  yaw,
const T &  pitch,
const T &  roll 
)

◆ QuaternionT() [9/10]

template<typename T >
__both__ owl::common::QuaternionT< T >::QuaternionT ( ZeroTy  )
inline

Constants.

◆ QuaternionT() [10/10]

template<typename T >
__both__ owl::common::QuaternionT< T >::QuaternionT ( OneTy  )
inline

Member Function Documentation

◆ operator=()

template<typename T >
__both__ QuaternionT& owl::common::QuaternionT< T >::operator= ( const QuaternionT< T > &  other)
inline

◆ rotate()

template<typename T >
static __both__ QuaternionT owl::common::QuaternionT< T >::rotate ( const Vector u,
const T &  r 
)
inlinestatic

return quaternion for rotation around arbitrary axis

◆ v()

template<typename T >
__both__ const Vector owl::common::QuaternionT< T >::v ( ) const
inline

returns the rotation axis of the quaternion as a vector

Member Data Documentation

◆ i

template<typename T >
T owl::common::QuaternionT< T >::i

◆ j

template<typename T >
T owl::common::QuaternionT< T >::j

◆ k

template<typename T >
T owl::common::QuaternionT< T >::k

◆ r

template<typename T >
T owl::common::QuaternionT< T >::r

The documentation for this struct was generated from the following file: