Fix anglebetween

This commit is contained in:
Pascal Serrarens 2024-08-28 12:33:20 +02:00
parent b975aedd2b
commit b5a6330517

View File

@ -217,14 +217,15 @@ AngleOf<T> SphericalOf<T>::AngleBetween(const SphericalOf& v1,
Vector3 v1_3 = v1.ToVector3(); Vector3 v1_3 = v1.ToVector3();
Vector3 v2_3 = v2.ToVector3(); Vector3 v2_3 = v2.ToVector3();
float dot = Vector3::Dot(v1_3, v2_3); // float dot = Vector3::Dot(v1_3, v2_3);
float fraction = dot / denominator; // float fraction = dot / denominator;
if (isnan(fraction)) // if (isnan(fraction))
return fraction; // short cut to returning NaN universally // return fraction; // short cut to returning NaN universally
float cdot = Float::Clamp(fraction, -1.0, 1.0); // float cdot = Float::Clamp(fraction, -1.0, 1.0);
float r = ((float)acos(cdot)) * Rad2Deg; // float r = ((float)acos(cdot)) * Rad2Deg;
return r; Angle r = Vector3::Angle(v1_3, v2_3);
return AngleOf<T>(r.ToFloat());
} }
template <typename T> template <typename T>