Есть способ найти аффинную матрицу, необходимую для преобразования набора точек в другую.Имея natrix, вы можете найти углы.
Описание для 2D кейса здесь , 3D кейс похож.
M * A = B
где
| xa xb xc xd|
A =| ya yb yc yd|
| za zb zc zd|
| 1 1 1 1 |
| xa' xb' xc' xd'|
B =| ya' yb' yc' yd'|
| za' zb' zc' zd'|
| 1 1 1 1 |
Чтобы найти неизвестный M, мы можем умножить обе части выражения на обратную матрицу A
M * A * Inv(A) = B * Inv(A)
M = B * Inv(A)
Но решение уникально для некомпланарной точечной четверки - в вашем случае точки лежат в одной плоскости, поэтомуесли решение существует, это действительно семейство решений, и вы должны выбрать произвольное.(Возможно, углы будут определены однозначно)