|
Not Enough Math
Lightweight zero-dependency C++ math library
|
#include "quat.hpp"#include "vec.hpp"#include "mat.hpp"#include "utils.hpp"#include "trig.hpp"#include "power.hpp"Go to the source code of this file.
Namespaces | |
| namespace | nem |
Functions | |
| template<typename T = nem::real> | |
| constexpr T | nem::sqr_length (const nem::quat_t< T > &q) |
| template<typename T = nem::real> | |
| T | nem::length (const nem::quat_t< T > &q) |
| template<typename T = nem::real> | |
| nem::quat_t< T > | nem::normalize (nem::quat_t< T > q) |
| template<typename T = nem::real> | |
| constexpr nem::quat_t< T > | nem::make_quat (const nem::vec< T, 4 > &vec4) |
| template<typename T = nem::real> | |
| constexpr nem::quat_t< T > | nem::make_quat (T scalar, T x, T y, T z) |
| template<typename T = nem::real> | |
| constexpr nem::quat_t< T > | nem::conjugate (const nem::quat_t< T > &q) |
| Conjugates the quaternion, yielding a quaternion with the same angle (scalar) but inverse axis (vector) | |
| template<typename T = nem::real> | |
| constexpr nem::quat_t< T > | nem::inverse (const nem::quat_t< T > &q) |
| template<typename T = nem::real> | |
| nem::quat_t< T > | nem::from_axis_angle (const nem::vec< T, 3 > &axis, T radians) |
| template<typename T = nem::real> | |
| nem::quat_t< T > | nem::from_euler (T pitch, T yaw, T roll) |
| template<typename T = nem::real> | |
| constexpr nem::mat< T, 3, 3 > | nem::norm_quaterion_to_rotation_matrix (const nem::quat_t< T > &q) |
| template<typename T > | |
| constexpr nem::vec< T, 3 > | nem::extract_vector (const nem::quat_t< T > &q) |