Scipy 坐标系

问题描述

我找不到scipy坐标系的定义。 我尝试了几个值(假设是右手系统)但得到了一个奇怪的结果。 例如:

from scipy.spatial.transform import Rotation as R
R.from_euler('zyx',angles=np.array([90,0]),degrees=True).as_matrix()
[ [ 0.,-1.,0.],[ 1.,0.,[ 0.,1.]]

意思是绕 z 轴逆时针旋转(右手坐标系为真)是逆时针旋转(意思是左坐标系)...

在哪里可以找到定义??

谢谢!!!

解决方法

可以在 here 找到 Scipy 旋转模块的完整文档。特别是对于您的问题,我不确定实际上是否存在问题。看Wikipedia,90 度旋转确实是逆时针旋转,因此最初与 x 轴对齐的矢量变为与 y 轴对齐。我相信,这与下面代码的结果一致。

from scipy.spatial.transform import Rotation as R

point = (5,-2)
print(R.from_euler('z',angles=90,degrees=True).as_matrix() @ point)
# [0,5,-2]