Summary

Today I learned more about 3D coordinate transformations. I am becoming more familiar with euler rotations, and their limitations.

The order of rotation in 3D space matters and rotation is not communcative (it is in 2D) (AB does not necessarily = BA). Because of this, standards have been developed. One of those is the aerospace coordinate system.

Screenshot 2023-09-07 at 7.33.37 PM.png

In this coordinate frame rotations are represented first by a transformation about the Z axis by $\psi$ about the Y axis by $\theta$ and finally about the x by $\phi$. transforming a vecotr by those three matricies like so: RxRyRz(x) can also be rewritten as R(x) where R = RxRyRz. In this combined matrix R there must exist an eigenvector with eigvenvalue 1 (b/c matrix is orthogonal and determinant is 1). This is the one axis that is not rotated at all. This is the single axis about which the object could be rotated by some angle to reach the same point as the compisition of the three rotations. That is where the euler rotation theorum comes from:

<aside> 💡 Eulers Rotation Theorum: any displacement of a rigid body such that a point on the rigid body remains fixed, is equivalent to a single rotation about some axis that runs through the fixed point.

</aside>

So Euler rotations are cool, but there is a (mathematical) problem with them. As we approach certain angles around some axes we can experience gimble lock (look it up), where we lose an axis of rotation. This is a big problem for computers, and must be coded for conditionally, which is a pain.

To solve this quarterinions are used, which is a hypercomplex number system, which I’ll be learning about for the next few days.