Hoops Visualize HPS  version 2018-SP2
Hoops Visualize HPS 3D Rendering Engine
Looking for a senior C++ dev?
I'm looking for work. Hire me!
HPS::Quaternion Class Reference

#include <hps.h>

Collaboration diagram for HPS::Quaternion:

Public Member Functions

 Quaternion ()
 
 Quaternion (float in_w, float in_x, float in_y, float in_z)
 
 Quaternion (Quaternion const &that)
 
Quaternion const & Normalize ()
 
Quaternion operator* (Quaternion const &in_right) const
 
Quaternion operator* (float in_right) const
 
Quaternion operator/ (float in_right) const
 
Quaternion operator- (Quaternion const &in_right) const
 
Quaternion operator+ (Quaternion const &in_right) const
 
float Norm () const
 
Quaternion Log () const
 
Quaternion Exp () const
 
Quaternion Lerp (Quaternion const &in_right, float in_fraction) const
 
Quaternion Slerp (Quaternion const &in_right, float in_fraction, bool in_shortest_path_only=true) const
 
Quaternion Squad (Quaternion const &in_right, Quaternion const &in_control1, Quaternion const &in_control2, float in_fraction) const
 
Quaternion Spline (Quaternion const &in_previous, Quaternion const &in_next) const
 Calculate a control point to be used in spline interpolation. More...
 

Public Attributes

float w
 
float x
 
float y
 
float z
 

Friends

Quaternion operator* (float in_left, Quaternion const &in_right)
 

Constructor & Destructor Documentation

◆ Quaternion() [1/3]

HPS::Quaternion::Quaternion ( )
inline

◆ Quaternion() [2/3]

HPS::Quaternion::Quaternion ( float  in_w,
float  in_x,
float  in_y,
float  in_z 
)
inline

◆ Quaternion() [3/3]

HPS::Quaternion::Quaternion ( Quaternion const &  that)
inline

Member Function Documentation

◆ Exp()

Quaternion HPS::Quaternion::Exp ( ) const
inline
Here is the caller graph for this function:

◆ Lerp()

Quaternion HPS::Quaternion::Lerp ( Quaternion const &  in_right,
float  in_fraction 
) const
inline
Here is the call graph for this function:

◆ Log()

Quaternion HPS::Quaternion::Log ( ) const
inline

◆ Norm()

float HPS::Quaternion::Norm ( ) const
inline

◆ Normalize()

Quaternion const& HPS::Quaternion::Normalize ( )
inline
Here is the caller graph for this function:

◆ operator*() [1/2]

Quaternion HPS::Quaternion::operator* ( Quaternion const &  in_right) const
inline

◆ operator*() [2/2]

Quaternion HPS::Quaternion::operator* ( float  in_right) const
inline

◆ operator+()

Quaternion HPS::Quaternion::operator+ ( Quaternion const &  in_right) const
inline

◆ operator-()

Quaternion HPS::Quaternion::operator- ( Quaternion const &  in_right) const
inline

◆ operator/()

Quaternion HPS::Quaternion::operator/ ( float  in_right) const
inline

◆ Slerp()

Quaternion HPS::Quaternion::Slerp ( Quaternion const &  in_right,
float  in_fraction,
bool  in_shortest_path_only = true 
) const
inline
Here is the caller graph for this function:

◆ Spline()

Quaternion HPS::Quaternion::Spline ( Quaternion const &  in_previous,
Quaternion const &  in_next 
) const
inline

Calculate a control point to be used in spline interpolation.

Parameters
in_previousThe control point before this
in_nextThe control point after this
Returns
Resultant spline control point
Here is the call graph for this function:

◆ Squad()

Quaternion HPS::Quaternion::Squad ( Quaternion const &  in_right,
Quaternion const &  in_control1,
Quaternion const &  in_control2,
float  in_fraction 
) const
inline
Here is the call graph for this function:

Friends And Related Function Documentation

◆ operator*

Quaternion operator* ( float  in_left,
Quaternion const &  in_right 
)
friend

Member Data Documentation

◆ w

float HPS::Quaternion::w

◆ x

float HPS::Quaternion::x

◆ y

float HPS::Quaternion::y

◆ z

float HPS::Quaternion::z

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