jaulib v1.3.0
Jau Support Library (C++, Java, ..)
Classes | Namespaces | Typedefs | Functions
quaternion.hpp File Reference
#include <cmath>
#include <cstdarg>
#include <cstdint>
#include <limits>
#include <string>
#include <iostream>
#include <jau/float_math.hpp>
#include <jau/math/vec3f.hpp>
#include <jau/math/mat4f.hpp>
Include dependency graph for quaternion.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  jau::math::Quaternion< Value_type, >
 Quaternion implementation supporting Gimbal-Lock free rotations. More...
 

Namespaces

namespace  jau
 __pack(...): Produces MSVC, clang and gcc compatible lead-in and -out macros.
 
namespace  jau::math
 

Typedefs

typedef Quaternion< float > jau::math::Quat4f
 

Functions

template<typename T , std::enable_if_t< std::is_floating_point_v< T >, bool > = true>
constexpr Quaternion< T > jau::math::operator* (const Quaternion< T > &lhs, const Quaternion< T > &rhs) noexcept
 
template<typename T , std::enable_if_t< std::is_floating_point_v< T >, bool > = true>
constexpr Quaternion< T > jau::math::operator* (const Quaternion< T > &lhs, const T s) noexcept
 
template<typename T , std::enable_if_t< std::is_floating_point_v< T >, bool > = true>
constexpr Quaternion< T > jau::math::operator* (const T s, const Quaternion< T > &rhs) noexcept
 
template<typename T , std::enable_if_t< std::is_floating_point_v< T >, bool > = true>
constexpr Quaternion< T > jau::math::operator+ (const Quaternion< T > &lhs, const Quaternion< T > &rhs) noexcept
 
template<typename T , std::enable_if_t< std::is_floating_point_v< T >, bool > = true>
constexpr Quaternion< T > jau::math::operator- (const Quaternion< T > &lhs, const Quaternion< T > &rhs) noexcept
 
template<typename T , std::enable_if_t< std::is_floating_point_v< T >, bool > = true>
std::ostream & jau::math::operator<< (std::ostream &out, const Quaternion< T > &v) noexcept