[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [20905] branches/ge_dev/intern/itasc/kdl/ frames.cpp: KDL: detect 180 degre rotation around axis.
Benoit Bolsee
benoit.bolsee at online.be
Tue Jun 16 00:18:44 CEST 2009
Revision: 20905
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=20905
Author: ben2610
Date: 2009-06-16 00:18:44 +0200 (Tue, 16 Jun 2009)
Log Message:
-----------
KDL: detect 180 degre rotation around axis.
Modified Paths:
--------------
branches/ge_dev/intern/itasc/kdl/frames.cpp
Modified: branches/ge_dev/intern/itasc/kdl/frames.cpp
===================================================================
--- branches/ge_dev/intern/itasc/kdl/frames.cpp 2009-06-15 20:28:49 UTC (rev 20904)
+++ branches/ge_dev/intern/itasc/kdl/frames.cpp 2009-06-15 22:18:44 UTC (rev 20905)
@@ -300,8 +300,23 @@
double alfa;
if (sa > epsilon)
alfa = ::atan2(sa,ca)/sa;
- else
- alfa = 1;
+ else {
+ if (ca < 0.0) {
+ alfa = KDL::PI;
+ axis.data[0] = 0.0;
+ axis.data[1] = 0.0;
+ axis.data[2] = 0.0;
+ if (data[0] > 0.0) {
+ axis.data[0] = 1.0;
+ } else if (data[4] > 0.0) {
+ axis.data[1] = 1.0;
+ } else {
+ axis.data[2] = 1.0;
+ }
+ } else {
+ alfa = 0.0;
+ }
+ }
return axis * alfa;
}
More information about the Bf-blender-cvs
mailing list