From 40f3e519a80e6d2ab27afc80c00c2182880f7a30 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Thu, 2 Jun 2011 10:08:44 +0100 Subject: [PATCH] Fixed build on MinGW --- glm/gtx/quaternion.inl | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/glm/gtx/quaternion.inl b/glm/gtx/quaternion.inl index b63e6c0f..910cdd78 100644 --- a/glm/gtx/quaternion.inl +++ b/glm/gtx/quaternion.inl @@ -256,28 +256,28 @@ namespace quaternion if(a <= typename detail::tquat::value_type(0)) return x; if(a >= typename detail::tquat::value_type(1)) return y; - detail::tquat::value_type fCos = dot(x, y); + T fCos = dot(x, y); detail::tquat y2(y); //BUG!!! tquat y2; - if(fCos < typename detail::tquat::value_type(0)) + if(fCos < T(0)) { y2 = -y; fCos = -fCos; } //if(fCos > 1.0f) // problem - detail::tquat::value_type k0, k1; - if(fCos > typename detail::tquat::value_type(0.9999)) + T k0, k1; + if(fCos > T(0.9999)) { - k0 = typename detail::tquat::value_type(1) - a; - k1 = typename detail::tquat::value_type(0) + a; //BUG!!! 1.0f + a; + k0 = T(1) - a; + k1 = T(0) + a; //BUG!!! 1.0f + a; } else { - typename detail::tquat::value_type fSin = sqrt(T(1) - fCos * fCos); - typename detail::tquat::value_type fAngle = atan(fSin, fCos); - typename detail::tquat::value_type fOneOverSin = T(1) / fSin; - k0 = sin((typename detail::tquat::value_type(1) - a) * fAngle) * fOneOverSin; - k1 = sin((typename detail::tquat::value_type(0) + a) * fAngle) * fOneOverSin; + T fSin = sqrt(T(1) - fCos * fCos); + T fAngle = atan(fSin, fCos); + T fOneOverSin = T(1) / fSin; + k0 = sin((T(1) - a) * fAngle) * fOneOverSin; + k1 = sin((T(0) + a) * fAngle) * fOneOverSin; } return detail::tquat( @@ -295,7 +295,7 @@ namespace quaternion T const & a ) { - return glm::normalize(x * (detail::tquat::value_type(1) - a) + (y * a)); + return glm::normalize(x * (T(1) - a) + (y * a)); } }//namespace quaternion