# Quaternion

struct HPS.Quaternion

Public Functions

override bool Equals (object obj)
bool Equals (Quaternion q)
HPS.Quaternion Exp ()
override int GetHashCode ()
HPS.Quaternion Lerp (HPS.Quaternion in_right, float in_fraction)
HPS.Quaternion Log ()
float Norm ()
HPS.Quaternion Normalize ()
Quaternion (float in_w, float in_x, float in_y, float in_z)
Quaternion (HPS.Quaternion that)
HPS.Quaternion Slerp (HPS.Quaternion in_right, float in_fraction, bool in_shortest_path_only = true)
HPS.Quaternion Spline (HPS.Quaternion in_previous, HPS.Quaternion in_next)
HPS.Quaternion Squad (HPS.Quaternion in_right, HPS.Quaternion in_control1, HPS.Quaternion in_control2, float in_fraction)

Public Members

float w
float x
float y
float z

Public Static Functions

Quaternion ComputeRotation (float in_degrees, HPS.Vector in_axis)

Computes a quaternion from a rotation about an axis.

Param in_degrees

The angle in degrees to rotate.

Param in_axis

Return

The resulting Quaternion object.

Quaternion ComputeRotation (float in_x, float in_y, float in_z)

Computes a quaternion from a rotation around the primary axes.

Param in_x

The number of degrees to rotate around the x-axis.

Param in_y

The number of degrees to rotate around the y-axis.

Param in_z

The number of degrees to rotate around the z-axis.

Return

The resulting Quaternion object.

bool operator!= (Quaternion a, Quaternion b)
Quaternion operator* (float s, Quaternion q)
Quaternion operator* (Quaternion q, float s)
Quaternion operator* (Quaternion q1, Quaternion q2)
Quaternion operator+ (Quaternion q1, Quaternion q2)
Quaternion operator- (Quaternion q1, Quaternion q2)
Quaternion operator/ (Quaternion q, float s)
bool operator== (Quaternion a, Quaternion b)