[Math] Find center of rotation after object rotated by known angle (2D)

geometryrotations

I need to be able to calculate and find the true center of rotation (x,y) of an object after it has been rotated by a known angle.

Previously I would simply find the center of the object, rotate 180 degrees, find the new center of the object, and calculate the midpoint of the line that connects the 2 centers to find the true center of rotation. Now, I don't have the luxury of being able to rotate 180 degrees, instead it will be only 10-15 degrees, but it will be known.

I've searched for a while and haven't found the appropriate equation to solve my particular problem.

Limitation: Only know center of object, cannot use multiple points found on object.

Knowns: Center of object before and after rotation, and angle of rotation

Unknown: True center of rotation

Center of rotation
Hopefully the image explains what I'm shooting for

Thanks

Best Answer

Let point $C$ be the center of rotation.
It should belong to the perpendicular bisector of the segment $[P, P']$.
So if we imagine it as a triangle, $CPP'$ should be a equilateral triangle where the angle $C = 15^0$ (Or whatever your rotation angle below 180). Let's assemble it in a drawing: enter image description here

Your task can be minimized to computing $M$!:

Knowns:

  • $d = \frac{PP'}{2}$
  • $\theta = 15^o$ (rotation angle).

Solution:

Notice that: $\frac{d}{M} = tan(\frac{\theta}{2})$

So $M = \frac{d}{tan(\frac{\theta}{2})}$

Now you have all the necessary information to find your center of rotation $C$, I will left to you to transform everything to $(x,y)$ coordinates as an exercise ;)

Related Question