code-google-com / bullet

Automatically exported from code.google.com/p/bullet
0 stars 0 forks source link

btMatrix get/setEulerYPR doxygen comments on parameters are incorrect #282

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
getEulerYPR methods are incorrectly stated as being about YXZ axes

What is the expected output? What do you see instead?
They actually are about the ZYX axes.  

What version of the product are you using? On what operating system?
2.75 tag r1779

Please provide any additional information below.
It looks like the doxygen was copied from the old getEuler method but not
updated.  

Patch attached to fix this

Original issue reported on code.google.com by Tully.Foote on 23 Sep 2009 at 9:13

Attachments:

GoogleCodeExporter commented 9 years ago
I've found a few more out of date doxygen comments.  I've attached the fixes in
euler_angles_doxygen.patch to replace ypr_doxygen.patch

There's a test program that I used to double check these changes in 
test_angles.patch.  

It adds a simple program to LinearMath which checks the order and axes of the 
euler
angles.  

To use it:
cd bullet_svn
patch -p0<test_angles.patch
cd src/LinearMath
make
./euler_test_unpatched

Original comment by Tully.Foote on 24 Sep 2009 at 8:19

Attachments:

GoogleCodeExporter commented 9 years ago
In reviewing this patch I have found that the btMatrix getEulerZYX and 
getEulerYPR
methods are the functionally the same, but getEulerZYX has a much more robust
implementation.  

I have updated the patch to call through to the more robust implementation.  

Also attached is the updated test showing that getEulerYPR has a round trip with
setEulerYPR both before and after this patch it passes.  

{{{
...
Matrix getEulerYPR yaw pitch roll angles

getEulerYPR yaw is the same as setEulerYPR yaw
getEulerYPR pitch is the same as setEulerYPR pitch
getEulerYPR roll is the same as setEulerYPR roll
...
}}}

Original comment by Tully.Foote on 28 Sep 2009 at 11:16

Attachments:

GoogleCodeExporter commented 9 years ago
Those euler angle methods are a pain to support, and will be 
removed/deprecated. Better to let users 
choose/implement their own euler ordering/conversions if they need it.

Original comment by erwin.coumans on 3 Nov 2009 at 6:08