This should be pretty straightforward, but its been awhile and my brain has officially turned off for the holidays :-) To keep things simple, lets assume everything is in 2D space.
I've got a large circle, who's centre will be the origin (0,0). Now lets say I've got Object A, who is sitting inside this circle at the origin, and is facing a direction (0,1), the positive y direction. Circumference of the circle shouldn't matter for what I'm trying to do. Now let's say I have two incoming parameters (which I have no control over). One of these parameters is a rotation (in Radians), and the other is a translation. If I apply this rotation to Object A while it's in the centre of the circle, followed by the translation, the object will now be on the outside of the circle but its direction will be facing the origin. In other words, the incoming parameters will translate the object to be outside but facing the centre of the circle, where it was originally inside and facing the positive y direction.
Here's where I'm stuck: If I also have a random point inside the same circle, and I want Object A to be translated to the exact same position it would normally be translated to (outside the circle) from those two incoming parameters, but facing the direction of this point instead (which could be anywhere inside the circle), what's the most efficient combination of operations to apply to it to accomplish this, assuming object A always starts in the origin, and this is the only information I have (the translation/rotation parameters, and the position of the point I wish to track). Assume the point can move around anywhere inside the circle, and the object will remain outside in the exact same position but its direction will "track" the point regardless of where it is.
UPDATE for clarification: Sometimes a picture is worth a thousand words ;-) See attached image... #1 is where the object starts at. #2 is what would happen if I apply the incoming translation and rotation parameters. #3 is what I'm trying to achieve. I do know that the "random" point is located at (0, 0.5) in this example. How do I get from #1 to #3 in the least amount of steps.