scipy.spatial.transform.RigidTransform.

as_matrix#

RigidTransform.as_matrix(self)#

Return a copy of the matrix representation of the transform.

4x4 rigid transformation matrices are of the form:

[R | t] [0 | 1]

where R is a 3x3 orthonormal rotation matrix and t is a 3x1 translation vector [tx, ty, tz].

Returns:
matrixnumpy.ndarray, shape (4, 4) or (N, 4, 4)

A single transformation matrix or a stack of transformation matrices.

Examples

>>> from scipy.spatial.transform import RigidTransform as Tf
>>> from scipy.spatial.transform import Rotation as R
>>> import numpy as np

A transformation matrix is a 4x4 matrix formed from a 3x3 rotation matrix and a 3x1 translation vector:

>>> t = np.array([2, 3, 4])
>>> r = R.from_matrix([[0, 0, 1],
...                    [1, 0, 0],
...                    [0, 1, 0]])
>>> tf = Tf.from_components(t, r)
>>> tf.as_matrix()
array([[ 0., 0., 1., 2.],
       [ 1., 0., 0., 3.],
       [ 0., 1., 0., 4.],
       [ 0., 0., 0., 1.]])
>>> Tf.identity(2).as_matrix()
array([[[1., 0., 0., 0.],
        [0., 1., 0., 0.],
        [0., 0., 1., 0.],
        [0., 0., 0., 1.]],
       [[1., 0., 0., 0.],
        [0., 1., 0., 0.],
        [0., 0., 1., 0.],
        [0., 0., 0., 1.]]])