当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python SciPy Rotation.from_rotvec用法及代码示例


本文简要介绍 python 语言中 scipy.spatial.transform.Rotation.from_rotvec 的用法。

用法:

classmethod  Rotation.from_rotvec(cls, rotvec, degrees=False)#

从旋转向量初始化。

旋转向量是一个 3 维向量,它是相对于旋转轴的 co-directional,其范数给出了旋转角度 [1]。

参数

rotvec 数组,形状 (N, 3) 或 (3,)

单个向量或向量堆栈,其中rot_vec[i] 给出第 i 个旋转向量。

degrees 布尔型,可选

如果为真,则假定给定幅度以度为单位。默认为假。

返回

rotation Rotation 实例

包含由输入旋转向量表示的旋转的对象。

参考

例子

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

初始化单个旋转:

>>> 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,)

以度为单位初始化一个旋转,并以度为单位进行查看:

>>> r = R.from_rotvec(45 * np.array([0, 1, 0]), degrees=True)
>>> r.as_rotvec(degrees=True)
array([ 0., 45.,  0.])

在一个对象中初始化多个旋转:

>>> 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)

也可以有一个单一的 rotaton 堆栈:

>>> r = R.from_rotvec([[0, 0, np.pi/2]])
>>> r.as_rotvec().shape
(1, 3)

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.spatial.transform.Rotation.from_rotvec。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。