Move Vectormath main
C++20 game and graphics mathematics
Loading...
Searching...
No Matches
Direction3.hpp File Reference
#include <cmath>
#include <optional>
#include <type_traits>
#include <mv/math/Angles.hpp>
#include <mv/math/detail/Normalization.hpp>

Go to the source code of this file.

Classes

class  mv::math::Direction3< T >
 

Namespaces

namespace  mv
 
namespace  mv::math
 

Typedefs

using mv::math::Direction3f = Direction3< float >
 
using mv::math::Direction3d = Direction3< double >
 

Functions

template<typename T >
requires std::is_floating_point_v<T>
Direction3< T > mv::math::Rotate (const Rotation3< T > &rotation, const Direction3< T > &direction) noexcept
 
template<typename T >
requires std::is_floating_point_v<T>
std::optional< Direction3< T > > mv::math::TryNormalize (const Vec3< T > &value) noexcept
 
template<typename T >
requires std::is_floating_point_v<T>
Vec3< T > mv::math::ProjectOntoDirection (const Vec3< T > &value, const Direction3< T > &direction) noexcept
 
template<typename T >
requires std::is_floating_point_v<T>
Radians< T > mv::math::AngleBetween (const Direction3< T > &from, const Direction3< T > &to) noexcept
 
template<typename T >
requires std::is_floating_point_v<T>
Radians< T > mv::math::SignedAngle (const Direction3< T > &from, const Direction3< T > &to, const Direction3< T > &positiveAxis) noexcept