Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
Quaternion< Type > Class Template Reference

Holds a quaternion (a 3D vector and a scalar value). More...

Public Member Functions

 Quaternion () noexcept
 
 Quaternion (const Quaternion &other) noexcept
 
 Quaternion (Vector3D< Type > vectorPart, Type scalarPart) noexcept
 
 Quaternion (Type x, Type y, Type z, Type w) noexcept
 
Quaternionoperator= (Quaternion other) noexcept
 
Quaternionoperator*= (Quaternion other) noexcept
 
Type length () const noexcept
 
Type normal () const noexcept
 
Quaternion normalised () const noexcept
 
Matrix3D< Type > getRotationMatrix () const noexcept
 Returns the matrix that will perform the rotation specified by this quaternion. More...
 

Static Public Member Functions

static Quaternion fromAngle (Type angle, Vector3D< Type > axis) noexcept
 Creates a quaternion from an angle and an axis. More...
 

Public Attributes

Vector3D< Type > vector
 The vector part of the quaternion. More...
 
Type scalar
 The scalar part of the quaternion. More...
 

Detailed Description

template<typename Type>
class Quaternion< Type >

Holds a quaternion (a 3D vector and a scalar value).

Constructor & Destructor Documentation

◆ Quaternion() [1/4]

template<typename Type>
Quaternion< Type >::Quaternion ( )
noexcept

◆ Quaternion() [2/4]

template<typename Type>
Quaternion< Type >::Quaternion ( const Quaternion< Type > &  other)
noexcept

◆ Quaternion() [3/4]

template<typename Type>
Quaternion< Type >::Quaternion ( Vector3D< Type >  vectorPart,
Type  scalarPart 
)
noexcept

◆ Quaternion() [4/4]

template<typename Type>
Quaternion< Type >::Quaternion ( Type  x,
Type  y,
Type  z,
Type  w 
)
noexcept

Member Function Documentation

◆ fromAngle()

template<typename Type>
static Quaternion Quaternion< Type >::fromAngle ( Type  angle,
Vector3D< Type >  axis 
)
staticnoexcept

Creates a quaternion from an angle and an axis.

◆ operator=()

template<typename Type>
Quaternion& Quaternion< Type >::operator= ( Quaternion< Type >  other)
noexcept

◆ operator*=()

template<typename Type>
Quaternion& Quaternion< Type >::operator*= ( Quaternion< Type >  other)
noexcept

◆ length()

template<typename Type>
Type Quaternion< Type >::length ( ) const
noexcept

◆ normal()

template<typename Type>
Type Quaternion< Type >::normal ( ) const
noexcept

◆ normalised()

template<typename Type>
Quaternion Quaternion< Type >::normalised ( ) const
noexcept

◆ getRotationMatrix()

template<typename Type>
Matrix3D<Type> Quaternion< Type >::getRotationMatrix ( ) const
noexcept

Returns the matrix that will perform the rotation specified by this quaternion.

Referenced by Draggable3DOrientation::getRotationMatrix().

Member Data Documentation

◆ vector

template<typename Type>
Vector3D<Type> Quaternion< Type >::vector

◆ scalar

template<typename Type>
Type Quaternion< Type >::scalar

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