In the left-hand coordinate system, the right multiplication matrix of the θ angle is rotated around any axis:
C is cos θ, S is sin θ, and a is the rotating axis of unitization.
The following derivation is left-hand coordinate.
First, we will regard P as a free vector starting from the origin, and break it into the form of a horizontal component A1 and A2 perpendicular to axis:
(Formula 1)
2:
Figure 2
(Formula 2)
(Formula 3)
Since the parallel component A1 remains unchanged during rotation, the problem lies in the vertical component A2. The final rotation result can be obtained by first rotating A2 θ degrees (A3) and then adding A1. 3:
Figure 3 the blue point is the bit value after the P point rotates the θ degree
Position P after rotation:
(Formula 4)
Because the rotation from A2 to A3 is carried out in the plane perpendicular to the axis, therefore, A3 can be divided into two components of vector A4, which Rotate 90 degrees in the clockwise direction of A2. 4:
Figure 4
Next let's ask for A4
A2 can be seen as the side of:
Figure 5
The A2 length is:
(Formula 5)
The vector A4 we want is exactly:
(Formula 6)
(Formula 7)
Because a is a unit vector, so (Formula 7) and (formula 5) are equal, so the length is equal and perpendicular to A1, A2, so we need A4.
Next, for A3, let's look at a plan perpendicular to A, which is more direct, 6:
Figure 6
A2 and A4 are the components of a3 on A2 and A4 respectively.
(Formula 8)
(Formula 9)
(Formula 10)
Because the lengths of A2, A3, and A4 are equal, the preceding two types are simplified:
(Formula 11)
(Formula 12)
Enter the above formula into Formula 4 to calculate the final result:
After sorting:
(Formula 13)
Settings:
The format of the matrix is as follows:
(Formula 14)
(Formula 15)
(Formula 16)
Substitute (formula 13:
The final homogeneous rotation matrix is:
(Formula 17)