I have the following question: First I have a global coordinate system x y and z. Second I have a plane defined somewhere in this coordinate system, I also have the normal vector of this plane. Assuming that the plane originally was lying in the xy plane and the normal vector of the plane was pointing in the same direction as global Z: How can I calculate the three rotation-angles around the x y and z axis by which the plane was rotated to its current position? I have read This question but I do not understand the solution, since math is not directly my top skill. If anyone knows a good TCL library that can be used to program this task, please let me know. A numerical example for the normal vector ( 8 -3 2 ) would probably greatly increase my chance of understanding a solution. Thanks!
What I have tried: I projected the normal vector on each of the global planes and calculated the angle between the x y z axis. If I use this angles in a rotationmatrix i have (and Im sure it is correct) and trie to rotate the original vector by these three angles I do not get the result I was hoping for....
First off, there is no simple rule (at least as far as I know) to represent a rotation as a cascade of single axis rotations. One mechanism is to compute a rotation matrix and then compute the single axis rotation angles. I should also mention that there is not a unique solution to the problem you are posing, since there are different cascades of rotations that will yield the same final position.
Let's first build two references frames, $A$ and $B$.
$A$ will denote the standard Euclidian basis. $B$ will denote the reference frame which results from applying the desired rotation. I will use subscript notation when referring to a vector in a specific reference frame, so $v_A$ is a vector whose coordinates are defined with respect to the standard Euclidian basis, and $v_B$ is defined w.r.t. $B$.
All we know so far about $B$ is that the vector $(0,0,1)_B = \frac{1}{\sqrt{77}}(8, -3, 2)_A$. We have one degree of freedom to select how $(0,1,0)_B$ is defined in reference frame $A$. We only require that it be orthogonal to $\frac{1}{\sqrt{77}}(8, -3, 2)_A$. So we would like to find a unit vector such that
$$8x-3y+2z=0$$
One solution is $\frac{1}{\sqrt{6}}(1,2,-1)_A$, which you can verify. This forces our hand for how the vector $(1,0,0)_B$ is represented w.r.t. $A$, hence
$$(1,0,0)_B=\frac{1}{\sqrt{462}}(-1,10,19)_A$$
So the rotation matrix from $B$ to $A$ is
$$R_B^A=\left( \begin{array}{ccc} \frac{-1}{\sqrt{462}} & \frac{1}{\sqrt{6}} & \frac{8}{\sqrt{77}} \\ \frac{10}{\sqrt{462}} & \frac{2}{\sqrt{6}} & \frac{-3}{\sqrt{77}} \\ \frac{19}{\sqrt{462}} & \frac{-1}{\sqrt{6}} & \frac{2}{\sqrt{77}} \end{array} \right)$$
Given any vector with coordinates defined in the Euclidian basis (such as a point in the $xy$-plane), multiplying by the inverse this matrix will yield the representation in our new reference frame. If you want to search for the three axis rotations, I refer you to Wolfram MathWorld's page on Euler Angles.
Hope this helps! Let me know if anything is unclear or if I you think you see any mistakes.