From c5000eaca8c3d915b6ed7aff90d581435e1980ad Mon Sep 17 00:00:00 2001 From: Niklaus Johner <nij2003@med.cornell.edu> Date: Mon, 22 Jul 2013 19:53:28 -0400 Subject: [PATCH] Fixed Rotation3.GetPhi, Rotation3.GetPsi and Rotation3.GetTheta functions --- modules/geom/src/composite3.cc | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/modules/geom/src/composite3.cc b/modules/geom/src/composite3.cc index 3813fb668..5ba5c40e6 100644 --- a/modules/geom/src/composite3.cc +++ b/modules/geom/src/composite3.cc @@ -190,28 +190,28 @@ Real Rotation3::GetPhi() const return GetRotationAngle()* (q_.GetAxis().GetZ()/std::fabs(q_.GetAxis().GetZ())); }else{ - return reduce_angle(M_PI-atan2(q_.GetAxis().GetX()*q_.GetAxis().GetZ()+ - q_.GetAxis().GetY()*q_.GetAngle(), - q_.GetAxis().GetY()*q_.GetAxis().GetZ()- - q_.GetAxis().GetX()*q_.GetAngle())); + return reduce_angle(M_PI-atan2(q_.x*q_.z+ + q_.y*q_.w, + q_.y*q_.z- + q_.x*q_.w)); } } Real Rotation3::GetTheta() const { - return reduce_angle(acos(-q_.GetAxis().GetX()*q_.GetAxis().GetX()- - q_.GetAxis().GetY()*q_.GetAxis().GetY()+ - q_.GetAxis().GetZ()*q_.GetAxis().GetZ()+ - q_.GetAngle()*q_.GetAngle())); + return reduce_angle(acos(-q_.x*q_.x- + q_.y*q_.y+ + q_.z*q_.z+ + q_.w*q_.w)); } Real Rotation3::GetPsi() const { if(GetTheta()<EPSILON){ return 0.0; }else{ - return reduce_angle(atan2(q_.GetAxis().GetX()*q_.GetAxis().GetZ()- - q_.GetAxis().GetY()*q_.GetAngle(), - q_.GetAxis().GetY()*q_.GetAxis().GetZ()+ - q_.GetAxis().GetX()*q_.GetAngle())); + return reduce_angle(atan2(q_.x*q_.z- + q_.y*q_.w, + q_.y*q_.z+ + q_.x*q_.w)); } } -- GitLab