English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
All categories

Are there any rules for rotating points on a coordinate plane in increments of 90 degrees that work no matter what point the center of rotation is and no matter what point is being rotated?

2006-09-06 18:02:42 · 5 answers · asked by Mark D. 1 in Science & Mathematics Mathematics

5 answers

Sure. Define your center of rotation, then assign each point a complex valued coordinate from that point. Then, to rotate by 90° CCW multiple each point by j. To rotate
90° CW, divide by j.


Doug

2006-09-06 18:07:07 · answer #1 · answered by doug_donaghue 7 · 0 0

The formula is vey simple.

Let the point be x1,y1
and point of rotation be x ,y that is around it the rotation takes place

let rotation angle is w1
in your case w1 = PI/2

the distance between the points is r = sqrt((x1-x)^2+(y1-y)^2)
now slope = (y1-y)/(x1-x) say it is m

x1 = x + m cos w
y1 = y+ m sin w
now after rotation

x1 = x + m cos(w+w1)
y1= y+ m sin(w+w1)
in your special case put w1= pi/2 and compute

2006-09-06 18:14:31 · answer #2 · answered by Mein Hoon Na 7 · 0 0

Define the center of rotation, call it (0,0).
Define the point to be rotated, call it (Xo,Yo)

Before rotation, we may express this point as:

Xo = Rcos(θ)
Yo = Rsin(θ)

(where R is the Pythagorean distance)

Now let's rotate by some angle ω. Call the new coordinates of the point, (X´,Y´)

X´ = Rcos(θ + ω)
Y´ = Rsin(θ + ω)

using trig identity:

X´ = Rcos(θ)cos(ω) - Rsin(θ)sin(ω)
Y´ = Rsin(θ)cos(ω) + Rcos(θ)sin(ω)

But look at our definition of Xo & Yo, we can write this as:

X´ = Xocos(ω) - Yosin(ω)
Y´ = Yocos(ω) + Xosin(ω)

or in Matrix form:

| cos(ω) -sin(ω)| |Xo| = |X´|
| sin(ω) cos(ω)| |Yo| = |Y´|

for the specific case when ω = 90 it is simply:

X´ = - Yo
Y´ = Xo

or, again, in Matrix form:

| 0 -1||Xo| = |X´|
| 1 0| |Yo| = |Y´|

to rotate back multiply by the transpose.

Extra: In 3D great care must be taken. Finite rotations DO NOT commute. That is the order in which the rotations are taken matters. For more info look up Euler Angles.

2006-09-06 20:40:25 · answer #3 · answered by Anonymous · 1 0

If the center of rotation is (h,k)
And the point to be rotated is (x,y)
And the degrees of rotation is t counter-clockwise

Then
...
the new x = cos(atan((y-k) / (x-h)) + t) * sqrt((x-h)^2 + (y-k)^2)
and the new y = sin(atan((y-k) / (x-h)) + t) * sqrt((x-h)^2 + (y-k)^2)

2006-09-06 18:16:52 · answer #4 · answered by Michael M 6 · 0 0

(x,Y)is the point .(a,b) is the center of rotation .Depending in which direction u rotate , the new position is :(y-b+a,a+b-x) , or (b+a-y,x-a+b)

2006-09-06 19:34:37 · answer #5 · answered by d13 666 2 · 0 0

fedest.com, questions and answers