# scipy.spatial.transform.Rotation.as_quat

Rotation.as_quat()

  Represent as quaternions.

  Rotations in 3 dimensions can be represented using unit norm quaternions [1]. The mapping from quaternions to rotations is two-to-one, i.e. quaternions `q` and `-q`, where `-q` simply reverses the sign of each component, represent the same spatial rotation. The returned value is in scalar-last (x, y, z, w) format.

  Returns
    quat `numpy.ndarray`, shape (4,) or (N, 4)

      Shape depends on shape of inputs used for initialization.

  References

  1

    https://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation

  Examples

      >>> from scipy.spatial.transform import Rotation as R

  Represent a single rotation:

      >>> r = R.from_matrix([[0, -1, 0],
      ...                    [1, 0, 0],
      ...                    [0, 0, 1]])
      >>> r.as_quat()
      array([0.        , 0.        , 0.70710678, 0.70710678])
      >>> r.as_quat().shape
      (4,)

  Represent a stack with a single rotation:

      >>> r = R.from_quat([[0, 0, 0, 1]])
      >>> r.as_quat().shape
      (1, 4)

  Represent multiple rotations in a single object:

      >>> r = R.from_rotvec([[np.pi, 0, 0], [0, 0, np.pi/2]])
      >>> r.as_quat().shape
      (2, 4)