1#ifndef OPAL_QUATERNION_H
2#define OPAL_QUATERNION_H
12 Quaternion(
const double &,
const double &,
const double &,
const double &);
49 Vektor<double, 4>(1.0, 0.0, 0.0, 0.0)
59 Vektor<double, 4>(x0, x1, x2, x3)
75 return dot(*
this, *
this);
81 return std::sqrt(this->
Norm());
87 return (std::abs(this->
Norm() - 1.0) < 1e-12);
93 return (std::abs((*
this)(0)) < 1e-12);
double dot(const Vector3D &lhs, const Vector3D &rhs)
Vector dot product.
Quaternion getQuaternion(Vector_t vec, Vector_t reference)
boost::numeric::ublas::matrix< double > matrix_t
Vector_t rotate(const Vector_t &) const
Quaternion conjugate() const
Quaternion inverse() const
Quaternion & operator*=(const Quaternion &)
Quaternion operator/(const double &) const
Quaternion & operator=(const Quaternion &)=default
Quaternion operator*(const double &) const
matrix_t getRotationMatrix() const
Vektor< double, 3 > Vector_t