|
Not Enough Math
Lightweight zero-dependency C++ math library
|
#include "mat.hpp"#include "utils.hpp"#include "trig.hpp"#include "quat.hpp"#include "quat_utils.hpp"Go to the source code of this file.
Namespaces | |
| namespace | nem |
Functions | |
| template<typename T , size_t C, size_t R, typename F > | |
| constexpr nem::mat< T, C, R > | nem::transform_items (nem::mat< T, C, R > m, F &&func) |
| template<typename T , size_t C, size_t R> | |
| constexpr nem::mat< T, R, C > | nem::transpose (const nem::mat< T, C, R > &m) |
| template<typename T , size_t N> | |
| constexpr nem::mat< T, N, N > | nem::identity () |
| template<typename M > | |
| constexpr nem::mat< typename M::ITEM_TYPE, M::COLUMNS, M::ROWS > | nem::identity () |
| template<typename T , size_t C1, size_t R1, size_t C2, size_t R2> | |
| constexpr nem::mat< T, C2, R2 > | nem::upscale (const nem::mat< T, C1, R1 > &m) |
| template<typename T , size_t N> | |
| constexpr nem::mat< T, N+1, N+1 > | nem::homogenous (const nem::mat< T, N, N > &m) |
| template<typename T > | |
| constexpr T | nem::determinant (const nem::mat< T, 2, 2 > &m) |
| template<std::floating_point T> | |
| constexpr nem::mat< T, 2, 2 > | nem::rotate (T radians) |
| template<std::floating_point T> | |
| constexpr nem::mat< T, 3, 3 > | nem::rotate_x (nem::sincos< T > a) |
| template<std::floating_point T> | |
| constexpr nem::mat< T, 3, 3 > | nem::rotate_y (nem::sincos< T > a) |
| template<std::floating_point T> | |
| constexpr nem::mat< T, 3, 3 > | nem::rotate_z (nem::sincos< T > a) |
| template<std::floating_point T> | |
| constexpr nem::mat< T, 3, 3 > | nem::rotate (T yaw_z, T pitch_y, T roll_x) |
| template<std::floating_point T> | |
| constexpr nem::mat< T, 3, 3 > | nem::translate_2D (const nem::vec< T, 2 > &value) |
| template<std::floating_point T> | |
| constexpr nem::mat< T, 4, 4 > | nem::translate_3D (const nem::vec< T, 3 > &value) |
| template<std::floating_point T, size_t N> | |
| constexpr nem::mat< T, N, N > | nem::scale (const nem::vec< T, N > &value) |
| template<std::floating_point T> | |
| constexpr nem::mat< T, 4, 4 > | nem::transform (const nem::vec< T, 3 > &translation, const nem::quat_t< T > &rotation, const nem::vec< T, 3 > scaler) |