scipy.spatial.transform.Rotation.

approx_equal#

Rotation.approx_equal(self, Rotation other, atol=None, degrees=False)#

确定另一个旋转是否与此旋转近似相等。

通过计算旋转之间的最小角度并检查其是否小于atol来测量相等性。

参数:
otherRotation 实例

包含要针对此旋转进行测量的旋转的对象。

atolfloat, optional

绝对角容差,低于该容差,旋转被认为是相等的。如果未给出,则默认设置为 1e-8 弧度。

degreesbool, optional

如果为 True 并且给定了atol,则atol以度为单位进行测量。 如果为 False(默认),则 atol 以弧度为单位测量。

返回值:
approx_equalndarray or bool

旋转是否近似相等,如果对象包含单个旋转,则为 bool,如果对象包含多个旋转,则为 ndarray。

示例

>>> from scipy.spatial.transform import Rotation as R
>>> import numpy as np
>>> p = R.from_quat([0, 0, 0, 1])
>>> q = R.from_quat(np.eye(4))
>>> p.approx_equal(q)
array([False, False, False, True])

单个旋转的近似相等性

>>> p.approx_equal(q[0])
False