From 06f9cd78f70d58aa6507706912917854ebfade0b Mon Sep 17 00:00:00 2001 From: Parola Marco Date: Wed, 11 May 2022 14:03:02 +0200 Subject: [PATCH] Fixed `FT::atan2` and `FTA::atan2` when `x<=y` --- fasttrigo.cpp | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/fasttrigo.cpp b/fasttrigo.cpp index 4844f81..d9f758b 100644 --- a/fasttrigo.cpp +++ b/fasttrigo.cpp @@ -64,10 +64,7 @@ float FT::atan2(float y, float x) return y>0.f?atan+pi:atan-pi; } else { float atan=FT::atan(x/y); - if(x>0.f) - return y>0.f?halfpi-atan:-halfpi-atan; - else - return y>0.f?halfpi+atan:-halfpi+atan; + return y>0.f?halfpi-atan:(-halfpi)-atan; } } @@ -340,10 +337,7 @@ float FTA::atan2(float y, float x) return y>0.f?atan+pi:atan-pi; } else { float atan=FTA::atan(x/y); - if(x>0.f) - return y>0.f?halfpi-atan:-halfpi-atan; - else - return y>0.f?halfpi+atan:-halfpi+atan; + return y>0.f?halfpi-atan:(-halfpi)-atan; } }