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

Go to the source code of this file.

Classes

struct  mv::math::EulerAngles3< T >
 
class  mv::math::Rotation3< T >
 

Namespaces

namespace  mv
 
namespace  mv::math
 

Typedefs

using mv::math::EulerAngles3f = EulerAngles3< float >
 
using mv::math::EulerAngles3d = EulerAngles3< double >
 
using mv::math::Rotation3f = Rotation3< float >
 
using mv::math::Rotation3d = Rotation3< double >
 

Enumerations

enum class  mv::math::EulerOrder {
  mv::math::XYZ , mv::math::XZY , mv::math::YXZ , mv::math::YZX ,
  mv::math::ZXY , mv::math::ZYX
}
 

Functions

template<typename T >
bool mv::math::IsNearlyEquivalent (const Rotation3< T > &left, const Rotation3< T > &right, Tolerance< T > tolerance=Tolerance< T >::Default()) noexcept
 
template<typename T >
Rotation3< T > mv::math::NlerpUnclamped (const Rotation3< T > &start, const Rotation3< T > &end, T amount) noexcept
 
template<typename T >
Rotation3< T > mv::math::Nlerp (const Rotation3< T > &start, const Rotation3< T > &end, T amount) noexcept
 
template<typename T >
Rotation3< T > mv::math::SlerpUnclamped (const Rotation3< T > &start, const Rotation3< T > &end, T amount) noexcept
 
template<typename T >
Rotation3< T > mv::math::Slerp (const Rotation3< T > &start, const Rotation3< T > &end, T amount) noexcept
 
template<typename T >
requires std::is_floating_point_v<T>
Vec3< T > mv::math::Rotate (const Rotation3< T > &rotation, const Vec3< T > &vector) noexcept
 
template<typename T >
requires std::is_floating_point_v<T>
Direction3< T > mv::math::Rotate (const Rotation3< T > &rotation, const Direction3< T > &direction) noexcept