How do you use a Rotation Matrix in 2-D?

AI Thread Summary
The discussion focuses on understanding the input and output of a 2D Rotation Matrix, particularly when the vector is not at the origin. The initial and terminal points of the vector are defined, and the challenge is to find the new terminal point after rotation using the angle Phi. It is clarified that the rotation should be applied to the vector components, and the results must be added to the initial coordinates to obtain the new endpoint. The process involves calculating the difference between the terminal and initial points, applying the rotation matrix, and then adjusting the result back to the original position. The derived formulas for the new coordinates after rotation are confirmed to be consistent with the discussed methodology.
Saladsamurai
Messages
3,009
Reaction score
7
I am having some trouble deciphering what the input and output of a 2D Rotation Matrix actually represent.

All example online have the vectors oriented at the origin. I know you can move them anywhere so long as you maintain their length and orientation, but here is my question:

Let's say I have a vector that is not located at the origin. Call its initial point (x0, y0) and its terminal point (x1, y1)

Now let's say that it has rotated through the positive angle of Phi. It's initial point is clearly still (x0, y0) and its new terminal point is (x2, y2).

Using only (x0, y0) and angle Phi, how can I find the coordinate (x0, y0) ?

I know that the Rotation Vector is defined as:

RM.jpg



My issue is that since they chose the origin, x1 and y1 in their example could be either the coordinates OR the components.

So, for the general 2D case: Do I plug in the coordiantes or components? And are the results the coordinates or components?

I am under the impression that it is the latter in both cases. And so in order to obtain the actual coordinates of my new vectors endpoint, I must add the resulting components to the initial coordinate (x0, y0)

Does that sound right?
 
Last edited:
Physics news on Phys.org
Well, you can move it to the origin, rotate it, and move it back.

So if v = (x0, y0) and w = (x1, y1), then: a) calculate w - v; b) apply the rotation matrix to obtain a new vector z; c) calculate z + v.
 
If the tail of the vector r that you want to rotate is not at the origin, then find the position vector R of the tail with respect to the arbitrary origin and use the matrix to rotate the sum R+r. The result will be the coordinates of the tip of rotated vector r. To find the coordinates of the rotated tail, use the matrix once more on R.
 
I just wrote a code to test a few cases of what I said in the OP, and this is the formula I came up with. I think it is consistent with what you guys are saying:

r_x = x1 - x0
r_y = y1 - y0

x2 = x0 + (r_x * Cos(theta) - r_y * Sin(theta))
y2 = y0 + (r_y * Cos(theta) + r_x * Sin(theta))
 
TL;DR Summary: I came across this question from a Sri Lankan A-level textbook. Question - An ice cube with a length of 10 cm is immersed in water at 0 °C. An observer observes the ice cube from the water, and it seems to be 7.75 cm long. If the refractive index of water is 4/3, find the height of the ice cube immersed in the water. I could not understand how the apparent height of the ice cube in the water depends on the height of the ice cube immersed in the water. Does anyone have an...
Kindly see the attached pdf. My attempt to solve it, is in it. I'm wondering if my solution is right. My idea is this: At any point of time, the ball may be assumed to be at an incline which is at an angle of θ(kindly see both the pics in the pdf file). The value of θ will continuously change and so will the value of friction. I'm not able to figure out, why my solution is wrong, if it is wrong .
Back
Top