scipy.spatial.transform.Rotation.from_rotvec#
- classmethod Rotation.from_rotvec(cls, rotvec, degrees=False)#
Initialize from rotation vectors.
A rotation vector is a 3 dimensional vector which is co-directional to the axis of rotation and whose norm gives the angle of rotation [1].
- Parameters:
- rotvecarray_like, shape (N, 3) or (3,)
A single vector or a stack of vectors, where rot_vec[i] gives the ith rotation vector.
- degreesbool, optional
If True, then the given magnitudes are assumed to be in degrees. Default is False.
New in version 1.7.0.
- Returns:
- rotation
Rotation
instance Object containing the rotations represented by input rotation vectors.
- rotation
References
Examples
>>> from scipy.spatial.transform import Rotation as R >>> import numpy as np
Initialize a single rotation:
>>> r = R.from_rotvec(np.pi/2 * np.array([0, 0, 1])) >>> r.as_rotvec() array([0. , 0. , 1.57079633]) >>> r.as_rotvec().shape (3,)
Initialize a rotation in degrees, and view it in degrees:
>>> r = R.from_rotvec(45 * np.array([0, 1, 0]), degrees=True) >>> r.as_rotvec(degrees=True) array([ 0., 45., 0.])
Initialize multiple rotations in one object:
>>> r = R.from_rotvec([ ... [0, 0, np.pi/2], ... [np.pi/2, 0, 0]]) >>> r.as_rotvec() array([[0. , 0. , 1.57079633], [1.57079633, 0. , 0. ]]) >>> r.as_rotvec().shape (2, 3)
It is also possible to have a stack of a single rotaton:
>>> r = R.from_rotvec([[0, 0, np.pi/2]]) >>> r.as_rotvec().shape (1, 3)