In our previous post, we have explained rotation matrices. In this post, we explain how to perform rotation and translation as a single matrix operation.
A YouTube video accompanying this post is given below.
Consider the figure below.
![](https://aleksandarhaber.com/wp-content/uploads/2022/01/graph3.png)
The coordinate system is translated from the coordinate system
, and after that it has been rotated for the angle
. The location of the coordinate system
with respect to the coordinate system
is represented by the vector
. The notation
means that the vector
is represented in the coordinate system
. That is, its components (projections) are represented in the coordinate system
. Similarly, the notation
means that the vector
is represented in the coordinate system
. Let the coordinates of the vector
expressed in the coordinate system
be given as follows:
(1)
where and
are the coordinates of the vector
expressed in the coordinate system
.
Problem 1: Given the coordinates of the vector , translation vector
, and the angle of rotation
, find the coordinates of the vector
.
Solution:
(2)
where is the rotation matrix that transforms vectors from
to
coordinate systems.
That is
(3)
If you do not remember how the rotation matrix
(4)
is constructed, see our previous post.
By multiplying vectors and matrices, and by adding the results, from (3), we have
(5)
The tranformation (3), can be written as a single vector matrix multiplications. Namely, we can formally write
(6)
where is 2 times 1 matrix of zeros. By expanding the last equation, we obtain
(7)
The matrix
(8)
is called a homogeneous transform.
In the next post, we we will see how to use this transform to solve the forward kinematics problem of robotic manipulators.