如何通过“校准”方向偏移方向坐标(Euler或四元数)?

2024-09-27 01:29:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个名为Myo Armband的设备,使用它输出的方向数据来控制python中“手臂”的位置(使用Vizard进行渲染)。现在,我有我能做的

arm.setQuat(armbandQuat)

有点管用。向上和向下都是精确的,但是每次围绕垂直轴的旋转都是随机的。为了解决这个问题,我做了这样的设置,当你按下空格键时,它会记录偏移四元数。我想要的是,每当你按空格键时,屏幕上的手臂会转到一个设定的“0”位置,所有围绕垂直轴的运动都将与之相对。换言之,用户会在手臂水平的情况下按下空格键来校准它。在

我需要用这两个四元数做什么来设置四元数到正确旋转的坐标?最初我以为你可以把这两个四元数相乘(或者是第二个四元数的倒数),但是如果其中一个是0,0,0,0,那么手臂就会冻结在0,0,0,0。在

我也可以得到并设置欧拉坐标,如果那样更容易的话。看起来四元数对于像这样的旋转来说是一个更完美的系统。在

我觉得应该有点简单,但我花了几个小时寻找答案,尝试了一些东西,结果什么都没用。在


Tags: 数据用户屏幕记录水平情况方向arm

热门问题