Stream: helpdesk (published)

Topic: Intrinsic versus Extrinsic Rotations.jl


view this post on Zulip Júlio Hoffimann (Jan 26 2024 at 13:20):

Does anyone know if it is possible/easy to convert between these two conventions?

https://github.com/JuliaGeometry/Rotations.jl/issues/281

view this post on Zulip Júlio Hoffimann (Jan 26 2024 at 13:20):

We need to express some rotations using the intrinsic convention but Rotations.jl uses the extrinsic convention. Is there an easy conversion rule?

view this post on Zulip Sukera (Jan 27 2024 at 07:44):

can't you just multiply the rotations, one after the other?

view this post on Zulip Sukera (Jan 27 2024 at 07:45):

i.e., rot_total = RotX * RotY * RotZ should apply RotZ first, followed by RotY (around the new Y axis), followed by RotX

view this post on Zulip Sukera (Jan 27 2024 at 07:45):

if you then have rot_total * myVec, you should end up with the composed rotation

view this post on Zulip Júlio Hoffimann (Jan 27 2024 at 10:18):

Isn't RotZYX equivalent to this multiplication? The problem is that RotY still refers to the original Y axis not the Y axis moving with the object.

view this post on Zulip Júlio Hoffimann (Jan 27 2024 at 10:28):

I think the ReferenceFrameRotations.jl package rotates the coordinate system and therefore is extrinsic if we flip the signs of the angles. I'll perform some tests. It would be great to be able to convert between the two conventions.

view this post on Zulip Sukera (Jan 28 2024 at 08:30):

https://math.stackexchange.com/questions/1137745/proof-of-the-extrinsic-to-intrinsic-rotation-transform has a conversion

view this post on Zulip Sukera (Jan 28 2024 at 08:32):

Isn't RotZYX equivalent to this multiplication?

No, RotZYX is Z * Y * X

view this post on Zulip Júlio Hoffimann (Jan 28 2024 at 08:37):

Will use the theorem tomorrow, thanks for the link

view this post on Zulip Sukera (Jan 28 2024 at 08:37):

I'm a bit confused about this extrinsic vs intrinsic convention though. To my understanding, that's just a difference in order of operations, no?

view this post on Zulip Sukera (Jan 28 2024 at 08:38):

i.e., whether you apply the overall rotation from the right or left, if I'm not mistaken

view this post on Zulip Sukera (Jan 28 2024 at 08:42):

https://dominicplein.medium.com/extrinsic-intrinsic-rotation-do-i-multiply-from-right-or-left-357c38c1abfd seems to agree too, and has a longer derivation if the stackexchange one is too terse

view this post on Zulip Mason Protter (Jan 28 2024 at 09:39):

I'm a bit confused about this extrinsic vs intrinsic convention though. To my understanding, that's just a difference in order of operations, no?

That's a very non-obvious result of some interesting calculations though

view this post on Zulip Mason Protter (Jan 28 2024 at 09:40):

I always found it super counter intuitive that it worked

view this post on Zulip Mason Protter (Jan 28 2024 at 09:41):

If I tell you to rotate about 3 Euler angles from my perspective, then you in your rotating perspective can just re-use the angles I gave you and reverse the order of operations and do the rotations from your own perspective and end up in the same place

view this post on Zulip Sukera (Jan 28 2024 at 11:50):

yeah, I knew about the difference in perspective, I just never knew that this was called intrinsic vs. extrinsic

view this post on Zulip Sukera (Jan 28 2024 at 11:53):

we had a few assignments in my first linear algebra course that had a much more elegant solution if you knew about this shift in perspective

view this post on Zulip Sukera (Jan 28 2024 at 11:54):

basically, if you view any matrix multiplication as a coordinate transform, multiplying from the left vs. from the right is exactly equivalent to transforming the entire world vs. local space only

view this post on Zulip Sukera (Jan 28 2024 at 11:56):

if you parenthesize your expressions properly, you can quite cleanly write down a rotation about the world axis, followed by a translation along a local axis, followed by another rotation in world coordinates. In total, that would be a higher dimensional shear


Last updated: Nov 22 2024 at 04:41 UTC