Math/Angle: Fix implicit conversion to Euler Angles/Quaternion

This commit is contained in:
Jérôme Leclercq
2018-09-06 13:24:29 +02:00
parent 8bcb8756f9
commit 46008531e0
6 changed files with 63 additions and 31 deletions

View File

@@ -8,6 +8,7 @@
#define NAZARA_QUATERNION_HPP
#include <Nazara/Core/String.hpp>
#include <Nazara/Math/Angle.hpp>
namespace Nz
{
@@ -21,6 +22,7 @@ namespace Nz
public:
Quaternion() = default;
Quaternion(T W, T X, T Y, T Z);
template<AngleUnit Unit> Quaternion(const Angle<Unit, T>& angle);
Quaternion(const EulerAngles<T>& angles);
Quaternion(T angle, const Vector3<T>& axis);
Quaternion(const T quat[4]);
@@ -49,6 +51,7 @@ namespace Nz
Quaternion& Normalize(T* length = nullptr);
Quaternion& Set(T W, T X, T Y, T Z);
template<AngleUnit Unit> Quaternion& Set(const Angle<Unit, T>& angle);
Quaternion& Set(const EulerAngles<T>& angles);
Quaternion& Set(T angle, const Vector3<T>& normalizedAxis);
Quaternion& Set(const T quat[4]);