A 3D body can be rotated about three orthogonal axes, as shown inFigure3.8. Borrowing aviation terminology, theserotations will be referred to as yaw, pitch, and roll:
A yaw is a counterclockwise rotationof about the-axis. The rotation matrix is given by
(3.39)
Note that the upper left entries of form a 2D rotationapplied to the and coordinates, whereas the coordinateremains constant.
A pitch is a counterclockwiserotation of about the-axis. The rotation matrix is givenby
(3.40)
A roll is a counterclockwise rotationof about the-axis. The rotation matrix is given by
(3.41)
Each rotation matrix is a simple extension of the 2D rotation matrix,(3.31). For example, the yaw matrix,,essentially performs a 2D rotation with respect to the andcoordinates while leaving the coordinate unchanged. Thus, thethird row and third column of look like part of theidentity matrix, while the upper right portion of lookslike the 2D rotation matrix.
The yaw, pitch, and roll rotations can be used to place a 3D body inany orientation. A single rotation matrix can be formed bymultiplying the yaw, pitch, and roll rotation matrices to obtain
(3.42)
It is important to note that performs theroll first, then the pitch, and finally the yaw. If the order ofthese operations is changed, a different rotation matrix would result.Be careful when interpreting the rotations. Consider the finalrotation, a yaw by. Imagine sitting inside of a robotthat looks like an aircraft. If, then the yawturns the plane in a way that feels like turning a car to the left.However, for arbitrary values of and, the finalrotation axis will not be vertically aligned with the aircraft becausethe aircraft is left in an unusual orientation before isapplied. The yaw rotation occurs about the -axis of the worldframe, not the body frame of. Each time a new rotation matrix isintroduced from the left, it has no concern for original body frame of. It simply rotates every point in in terms of the worldframe. Note that 3D rotations depend on three parameters, ,, and , whereas 2D rotations depend only on a singleparameter,. The primitives of the model can be transformedusing, resulting in.