# Axis-Angle Representation (Rotation Vector)

First introduction here through Steven M. Lavalle VR series. Read more into the modern robotics book, chapter 3.

Axis-Angle Representation are implemented with rotation vectors. This vector is parallel with the axis of rotation, and the length is equal to the angle of rotation.

For a rotation axis with unit-length vector $n$ and the angle $Î¸$, then the rotation vector is represented by $Î¸n$

Euler's Rotation Theorem

All 3D rotations have an axis-angle representation.

At first, I thought these were the same as Euler Angles.

But NO! With Euler Angles, we have 3 rotation angles expressed relative to 3 fixed axes $x$, $y$, and $z$-axis (pitch, roll and yaw).

On the other hand, **angle-axis representation**, expresses a rotation as a single rotation by an angle around a specific axis. Thus, only a 3D vector here is needed to describe the rotation.

Because of Eulerâs Rotation Theorem, we know that the 3 rotations can simply collapse to 1 rotation around a given axis: any sequence of rotations in 3D space is equivalent to a pure rotation about a single fixed axis.

### Rotation Vector to Rotation Matrix

Rodrigues' Formula

The conversion from rotation vector to rotation matrix is shown by Rodriguesâ formula. The result of the conversion is the follow

$R=cosÎ¸I+(1âcosÎ¸)nn_{T}+sinÎ¸n_{â§}$ where

- $R$ is the rotation matrix
- the rotation axis has unit length vector $n$ and angle $Î¸$
- $_{â§}$ is the Skew-symmetric operator

Since the rotation axis does not change after the rotation, we have $Rn=n$ Therefore, the axis $n$ is the eigenvector corresponding to the matrix $R$âs Eigenvalue 1.

I think you can learn more about the formalization with Lie Algebra.