scipy.spatial.transform.Rotation.

approx_equal#

Вращение.approx_equal(self, Вращение other, atol=None, degrees=False)#

Определить, приблизительно ли равен другой поворот данному.

Равенство измеряется путём вычисления наименьшего угла между вращениями и проверки, меньше ли он, чем atol.

Параметры:
otherRotation экземпляр

Объект, содержащий вращения для сравнения с этим.

atolfloat, опционально

Абсолютная угловая погрешность, ниже которой вращения считаются равными. Если не задано, то по умолчанию устанавливается в 1e-8 радиан.

градусыbool, необязательно

Если True и atol задан, тогда atol измеряется в градусах. Если False (по умолчанию), то atol измеряется в радианах.

Возвращает:
approx_equalndarray или 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