Bsoft 2.1.4
Bernard's software package
Quaternion Class Reference

#include <Quaternion.h>

Public Member Functions

 Quaternion ()
 
 Quaternion (const double scalar)
 
 Quaternion (const double scalar, const double x, const double y, const double z)
 
 Quaternion (const Quaternion &q)
 
template<typename Type >
 Quaternion (const Vector3< Type > &vector)
 
template<typename Type >
 Quaternion (const double scalar, const Vector3< Type > &vector)
 
template<typename Type >
 Quaternion (Vector3< Type > &axis, double angle)
 
template<typename Type1 , typename Type2 >
 Quaternion (Vector3< Type1 > &from_vec, Vector3< Type2 > &to_vec)
 
Quaternion operator= (const Quaternion q)
 
Quaternion operator- ()
 
Quaternion operator+= (const Quaternion &q)
 
Quaternion operator+ (const Quaternion &q)
 
Quaternion operator-= (const Quaternion &q)
 
Quaternion operator- (const Quaternion &q)
 
Quaternion operator*= (const Quaternion &q)
 
Quaternion operator* (const Quaternion &q)
 
Quaternion operator/= (const double d)
 
Quaternion operator/ (const double d)
 
double & operator[] (long i)
 
double scalar ()
 
double angle ()
 
Vector3< double > axis ()
 
double norm ()
 
double norm2 ()
 
double normalize ()
 
Quaternion conj ()
 
double invert ()
 
Quaternion inverse ()
 
Quaternion rotate (const Quaternion &point)
 

Constructor & Destructor Documentation

◆ Quaternion() [1/8]

Quaternion::Quaternion ( )
inline

◆ Quaternion() [2/8]

Quaternion::Quaternion ( const double  scalar)
inline

◆ Quaternion() [3/8]

Quaternion::Quaternion ( const double  scalar,
const double  x,
const double  y,
const double  z 
)
inline

◆ Quaternion() [4/8]

Quaternion::Quaternion ( const Quaternion q)
inline

◆ Quaternion() [5/8]

template<typename Type >
Quaternion::Quaternion ( const Vector3< Type > &  vector)
inline

◆ Quaternion() [6/8]

template<typename Type >
Quaternion::Quaternion ( const double  scalar,
const Vector3< Type > &  vector 
)
inline

◆ Quaternion() [7/8]

template<typename Type >
Quaternion::Quaternion ( Vector3< Type > &  axis,
double  angle 
)
inline

◆ Quaternion() [8/8]

template<typename Type1 , typename Type2 >
Quaternion::Quaternion ( Vector3< Type1 > &  from_vec,
Vector3< Type2 > &  to_vec 
)
inline

Member Function Documentation

◆ angle()

double Quaternion::angle ( )
inline

◆ axis()

Vector3< double > Quaternion::axis ( )
inline

◆ conj()

Quaternion Quaternion::conj ( )
inline

◆ inverse()

Quaternion Quaternion::inverse ( )
inline

◆ invert()

double Quaternion::invert ( )
inline

◆ norm()

double Quaternion::norm ( )
inline

◆ norm2()

double Quaternion::norm2 ( )
inline

◆ normalize()

double Quaternion::normalize ( )
inline

◆ operator*()

Quaternion Quaternion::operator* ( const Quaternion q)
inline

◆ operator*=()

Quaternion Quaternion::operator*= ( const Quaternion q)
inline

◆ operator+()

Quaternion Quaternion::operator+ ( const Quaternion q)
inline

◆ operator+=()

Quaternion Quaternion::operator+= ( const Quaternion q)
inline

◆ operator-() [1/2]

Quaternion Quaternion::operator- ( )
inline

◆ operator-() [2/2]

Quaternion Quaternion::operator- ( const Quaternion q)
inline

◆ operator-=()

Quaternion Quaternion::operator-= ( const Quaternion q)
inline

◆ operator/()

Quaternion Quaternion::operator/ ( const double  d)
inline

◆ operator/=()

Quaternion Quaternion::operator/= ( const double  d)
inline

◆ operator=()

Quaternion Quaternion::operator= ( const Quaternion  q)
inline

◆ operator[]()

double & Quaternion::operator[] ( long  i)
inline

◆ rotate()

Quaternion Quaternion::rotate ( const Quaternion point)
inline

◆ scalar()

double Quaternion::scalar ( )
inline

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