emlabcpp
modern opinionated embedded C++ library
quaternion.h File Reference
#include "./point.h"
+ Include dependency graph for quaternion.h:

Go to the source code of this file.

Classes

class  emlabcpp::quaternion
 API and behavior of this is inspired by tf::Quaternion. More...
 

Namespaces

 emlabcpp
 MIT License.
 

Functions

constexpr quaternion emlabcpp::inverse (quaternion const &q)
 
constexpr quaternion emlabcpp::operator- (quaternion const &q)
 
constexpr float emlabcpp::dot (quaternion const &q, quaternion const &s)
 
constexpr float emlabcpp::norm2_of (quaternion const &q)
 
constexpr float emlabcpp::angle_shortest_path (quaternion const &m, quaternion const &n)
 
constexpr quaternion emlabcpp::slerp (quaternion const &q, quaternion const &s, float f)
 
constexpr bool emlabcpp::operator== (quaternion const &q, quaternion const &s)
 
constexpr bool emlabcpp::operator!= (quaternion const &q, quaternion const &s)
 
constexpr bool emlabcpp::operator< (quaternion const &q, quaternion const &s)
 
constexpr quaternion emlabcpp::operator* (quaternion const &q, quaternion const &s)
 
constexpr quaternion emlabcpp::operator* (quaternion const &q, point< 3 > const &x)
 
constexpr quaternion emlabcpp::operator* (point< 3 > const &x, quaternion const &q)
 
constexpr quaternion emlabcpp::operator+ (quaternion const &lh, quaternion const &rh)
 
constexpr bool emlabcpp::almost_equal (quaternion const &q, quaternion const &s, float eps=default_epsilon)
 
constexpr quaternion emlabcpp::shortest_arc_quat (point< 3 > x, point< 3 > y)
 
constexpr point< 3 > emlabcpp::rotate (point< 3 > const &x, quaternion const &q)
 
constexpr quaternion emlabcpp::rotate (quaternion const &x, quaternion const &q)
 
constexpr vector< 3 > emlabcpp::rotate (vector< 3 > const &v, quaternion const &q)
 

Variables

constexpr quaternion emlabcpp::neutral_quat { 0.f, 0.f, 0.f, 1.f }