[Bug 1008] New: Rotation.GetRotAngle() returns invalid vector for 180 degree rotation

http://bugs.orocos.org/show_bug.cgi?id=1008

Summary: Rotation.GetRotAngle() returns invalid vector for 180
degree rotation
Product: KDL
Version: kdl-trunk
Platform: All
OS/Version: All
Status: NEW
Severity: critical
Priority: P3
Component: Primitives
AssignedTo: orocos-dev [..] ...
ReportedBy: spam [dot] joh [..] ...
CC: orocos-dev [..] ...
Estimated Hours: 0.0

Result for 180 degree rotation around different axes:
x: (3.141592653589793, [ -nan, -inf, 0])
y: (3.141592653589793, [ inf, -nan, 0])
z: (3.141592653589793, [ 0, 0, 1])

Expected result:
x: (3.141592653589793, [ 1, 0, 0])
y: (3.141592653589793, [ 0, 1, 0])
z: (3.141592653589793, [ 0, 0, 1])

Example Program:

import numpy as np
import PyKDL as kdl

rot = kdl.Rotation()
rot.DoRotY(np.pi)
print rot.GetRotAngle()

#returns (3.141592653589793, [ inf, -nan, 0])
#expected (3.14159, [0, 1, 0] )

[Bug 1008] Rotation.GetRotAngle() returns invalid vector for 180

http://bugs.orocos.org/show_bug.cgi?id=1008

spam [dot] joh [..] ... changed:

What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |INVALID

[Bug 1008] Rotation.GetRotAngle() returns invalid vector for 180

[Bug 1008] Rotation.GetRotAngle() returns invalid vector for 180