Skip to content

Clarification on SO3.to_euler order definition: Does '321' correspond to intrinsic XYZ? #26

@barikata1984

Description

@barikata1984

Hello,

First of all, I really appreciate your work. I loved STARS Lab's liegroups but it has not been mainteined for a while. Thanks for developing an updated version.

Then, I have a question regarding the rotation order definition in SO3.to_euler.

I observed that SO3.to_euler(C, order="321") returns Euler angles that match the Intrinsic XYZ sequence (Roll $\to$ Pitch $\to$ Yaw) when compared with scipy.spatial.transform.Rotation.as_euler('xyz').

I believe that "321" usually implies rotating around the 3rd axis (Z), then the 2nd axis (Y), then the 1st axis (X), which corresponds to Intrinsic ZYX.

It appears that the implementation might be interpreting "321" (or "123") differently, possibly referring to the order of axes in the returned array rather than the sequence of rotations.

Could you please clarify if order="321" is indeed intended to implement the XYZ rotation sequence, and conversely, if order="123" corresponds to ZYX?

Thank you.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions