scipy.spatial.transform.Rotation.__getitem__

Rotation.__getitem__()

从对象中提取给定索引处的旋转。

创建新的 Rotation 实例,该实例包含存储在此对象中的旋转子集。

参数
indexer索引、切片或索引数组

指定要提取的旋转。必须指定单个索引器,即如同索引一维数组或列表一样。

退货
旋转Rotation 实例循环实例
包含
  • 单次旋转,如果 indexer 是单个索引

  • 一堆(或多个)旋转,如果 indexer 是切片、或与索引数组。

加薪
如果实例是作为单个循环创建的,则返回TypeError。

示例

>>> from scipy.spatial.transform import Rotation as R
>>> r = R.from_quat([
... [1, 1, 0, 0],
... [0, 1, 0, 1],
... [1, 1, -1, 0]])
>>> r.as_quat()
array([[ 0.70710678,  0.70710678,  0.        ,  0.        ],
       [ 0.        ,  0.70710678,  0.        ,  0.70710678],
       [ 0.57735027,  0.57735027, -0.57735027,  0.        ]])

使用单个索引编制索引:

>>> p = r[0]
>>> p.as_quat()
array([0.70710678, 0.70710678, 0.        , 0.        ])

数组切片:

>>> q = r[1:3]
>>> q.as_quat()
array([[ 0.        ,  0.70710678,  0.        ,  0.70710678],
       [ 0.57735027,  0.57735027, -0.57735027,  0.        ]])