# Relationship of a point to a rotating plane

I have three points in space, which cannot move relative to one another, and create a reference plane.

There is a forth point, that lays off/on the plane (off will be more general solution, on will be a private case I guess).

How can I use the information I just described to predict where the point off/on the plane will lie when the plane moves? The point is constrained by the original relationship.

For example: $P_1$, $P_2$, $P_3$ define a plane and they are respectively $(1,1,5) , (0,1,5) , (-1,0,5)$.
The fourth point $P$ is $(-5,2,5)$ on the plane defined by $P_{1,2,3}$. What would be the coordinates of $P$ when the plane moves (arbitrary rotation in space) and $P_{1,2,3}$ have new values. In the example all points are on the same $z$ plane $(5)$ in the initial reference state.

Thanks!

-
Are only rotations allowed? When you say 'rotation' you mean rotations around any axis, right? Are the old values of $P_i$ mapped onto the new ones (meaning that the angles of the triangle $P_1P_2P_3$ are preserved)? –  Karolis Juodelė Aug 14 '12 at 9:11
rotation could be any rotation, not just around specific axis. the old values are mapped. imagine a tool with 4 significant points that travels freely in the 3d space. –  ButterFly Aug 14 '12 at 14:32

Construct the transformation matrix used on the plane and multiply $P$ by it. The matrix is $BA^{-1}$ where matrices $A$ and $B$ move the $xOy$ plane to the one defined by old and new values of $P_i$ respectively.
Here's a way to construct $A$ and $B$. It makes sense to use $4 \times 4$ matrices. Otherwise you couldn't map $(0, 0, 0)$ to anything else. The columns of the matrices could be as follows. $(P_2-P_1, 0)$, $(P_3-P_1, 0)$, $((P_2-P_1) \times (P_3-P_1), 0)$ and $(P_1, 1)$. The first $3$ rows are filled with the values of the vectors I wrote and the last row is $(0, 0, 0, 1)$. Note that the third column could be anything. A perpendicular vector is probably what you are looking for, though. Notice that, for example, $A*(1, 0, 0, 1) = (P_2, 1)$. Finally, $BA^{-1}*(P, 1)$ is the new value of $P$.
A and B are matrices. The upper left $3 \times 3$ part of either is supposed to have orthonormal vectors for columns. Since we are combining two matrices, these vectors can be 'wrong', as long as they are 'wrong' the same way in A and B. The third vector is the normal of the plane - the old plane in A and the new plane in B. –  Karolis Juodelė Aug 14 '12 at 15:04