3D Map Orientation
3D Map Orientation is given by a set of geometrical parameters that describes the direction, angle, or position with respect to an initial or standard direction. Orientation parameters are used, for example, to transform one orientation into another (i.e. converting the orientation of the object in Fig. 2b so it matches Fig. 2a) or to align 2D projection images for 3D reconstruction.
Among other possibilities, orientation may be described as a "view" vector and the
rotation angle around the vector {x,y,z,alpha}
or as a set of Euler angles describing three successive rotations {phi, theta, psi} (Fig. 1, Table 1).
The standard orientation is symmetry dependent ( Heymann et al. (2005)).
It is usually determined from the reference map orientation for asymmetric objects, the orientation
of symmetry axes for symmetric objects, or the unit-cell orientation for crystalline objects
(see ).
Following the convention
described in Heymann et al. (2005),
in this document Euler angles are defined as
rotations around axes z, y and z, respectively. Euler angles and view vectors
are related as described in Figure 1 and Table 1.
![]() |
![]() |
| (a) Euler angles describe three successive rotations around major axes: 1) phi, a rotation about the z-axis; 2) theta, a rotation about the new y-axis; and 3) psi, a rotation about the new z-axis. | (b) The view is defined by a vector on the unit sphere and a rotation angle around this vector, written as a four-value unit, {x,y,z,alpha}. |
|
Figure 1: The standard view definition
expressed in terms of Euler angles (a) or the view vector (b).
|
|
|
Table 1: Relationship between the view and
the standard Euler angles
|
|
| View to Euler
angles |
Euler angles to
view |
|
phi = arctan(y/x) theta = arccos(z) psi = alpha - phi if x = y = 0, then phi = 0 deg. (theta = 0 or 180 deg.) |
x = cos(phi) * sin(theta) y = sin(phi) * sin(theta) z = cos(theta) alpha = psi + phi |
Example
![]() |
![]() |
| (a) Standard view: View = {0, 0, 1, 0} Euler angles = {0, 0, 0} Rotation matrix: 1 0 0 0 1 0 0 0 1 |
(b) Arbitrary view: View = {0.612, 0.612, -0.5, 105} Euler angles = {phi=45, theta=120, psi=60} Rotation matrix: -0.7891 0.4356 -0.4330 -0.0474 0.6597 0.7500 0.6124 0.6124 -0.5000 |
|
Figure 2: The standard view (a) and an
arbitrarily chosen view (b) with the associated view vectors and Euler angles.
The last row in the
rotation matrix is identical to the view vector and the last column gives
the transformation of the z-axis in Figure 2a to the corresponding
vector in Figure 2b. The rotation matrix transform the view vector to the view
vector associated with the standard view.
|
|
The rotation defined by the matrices in Figure 2 is expected to be applied as
follows:

At the 3DEM Image Conventions web page (press here)
you may find many more views
with the corresponding matrices, Euler angles, and view vectors.
This information might be useful to further test the 3D map
orientation.
Please, write explicitly the equations used by your system to compute the rotation matrix for a given set of euler angles or view vector plus angle. Use the variable names: (i) phi, theta and psi for the first, second and third Euler angles as defined in your package or (ii) x, y, z and alpha for the view vector plus angle.
Example: (this is the 3DEM Convention)
r11 = cos(psi)*cos(theta)*cos(phi)-sin(psi)*sin(phi)
r12 = cos(psi)*cos(theta)*sin(phi)+sin(psi)*cos(phi)
r13 = -cos(psi)*sin(theta)
r21 = -sin(psi)*cos(theta)*cos(phi)-cos(psi)*sin(phi)
r22 = -sin(psi)*cos(theta)*sin(phi)+cos(psi)*cos(phi)
r23 = sin(psi)*sin(theta)
r31 = sin(theta)*cos(phi)
r32 = sin(theta)*sin(phi)
r33 = cos(theta)