# calculate out-of-plane and in-plane rotation from virtual camera position.

I am trying to reproduce some work from an author which generates multiple views of a 3D object under different projections and labels each view with a 3D pose.

The author states that they "place a virtual camera at each of the 12 vertices on an icosahedron of fixed (and known) radius, $r$, that surrounds the 3D object (placed at the origin). From each vertex, they produce a 2D image, this enables them to then label each image with the 2 out-of-plane rotations angles" They then say that they further rotate the 3D object around the z-axis (different in-plane rotation angles) and repeat the process so they now can label each image with both out-of-plane and the one in-plane rotation angle.

So, to my question, hypothetically given a vertex $(x,y,z)$ on the icosahedron of radius $r$. Take a fixed point, in which we know the $pitch, yaw$ and $roll$ of the object i.e. $(0,0,r)$ - the $pitch,yaw$ and $roll$ are $0$ degrees if the object is not rotated about the z-axis.

Then we can work out the rotation by finding the rotation from $(0,0,r)$ and $(x,y,z)$ for each $(x,y,z)$. However, this gives values for $pitch, yaw$ and $roll$, meaning it gives an angle for both out-of-plane rotation and for the in-plane rotation.

So if we then rotate the object about the z-axis by, for example, $30^\circ$ and repeat this process, how do we encode this additional rotation about the z-axis?

Thanks

EDIT - more clarity on this question For example, from the image below, the red points on a tessellated sphere (could be an icosahedron) is where we place a camera.

From each position I am to find out the rotations about the $x$ and $y$ axis. I then rotate the object by $15^\circ$ about the $z$ axis and repeat this process, now labelling each image with the rotation about $x$, $y$ and $z$.

My problem is, how to find the rotation about $x$ and $y$ from the position of the camera. As explained above, if I find the rotation between a canonical position $(0,0,r)$ and the new position $(x',y',z')$ this involves rotation about all three axis for most points (or so the results tell me).

• can you briefly explain what in-plane and out-of-plane mean? – Emanuele Paolini Jul 24 '13 at 14:57
• @EmanuelePaolini It is my understanding that rotation about the $y$ and $x$ axis would cause rotation "out-of" the image plane whereas rotation about the $z$ axis would cause rotation parallel to the image plane. – Aly Jul 24 '13 at 15:14
• The question is not clear to me. The labels suggested by the author seem to identify the position of the camera but not its orientation. Moreover a rotation of the object around the z axis doesn't make too much sense to me, since you could also rotate the camera in the opposite direction, getting the same result. – Emanuele Paolini Jul 24 '13 at 15:20
• @EmanuelePaolini I have edited the question to contain more information. I hope it is clearer – Aly Jul 24 '13 at 15:45