C# 如何仅使用加速计确定手机是顺时针还是逆时针旋转

C# 如何仅使用加速计确定手机是顺时针还是逆时针旋转,c#,windows,mobile,uwp,C#,Windows,Mobile,Uwp,我有一个Windows10手机(Lumia640),它有一个加速计,但没有陀螺仪 Accelerator.ReadingChanged事件提供X、Y和Z轴上的当前值 我的问题是,是否有可能知道手机是顺时针还是逆时针(绕Z轴)旋转给定读数 如果我跟踪上一次阅读,那么从上一次阅读到当前阅读仍然有两种可能-CW和CCW。您考虑过跟踪前两次阅读吗?假设任何一种合理的轮询间隔,您应该能够从三个数据点计算出来。我在这里有点困惑。假设前两个读数是A(12点)和B(2点),最近一个读数是C(10点)。我如何计算

我有一个Windows10手机(Lumia640),它有一个加速计,但没有陀螺仪

Accelerator.ReadingChanged事件提供X、Y和Z轴上的当前值

我的问题是,是否有可能知道手机是顺时针还是逆时针(绕Z轴)旋转给定读数


如果我跟踪上一次阅读,那么从上一次阅读到当前阅读仍然有两种可能-CW和CCW。

您考虑过跟踪前两次阅读吗?假设任何一种合理的轮询间隔,您应该能够从三个数据点计算出来。我在这里有点困惑。假设前两个读数是A(12点)和B(2点),最近一个读数是C(10点)。我如何计算B到C是顺时针还是逆时针遍历?这取决于你的轮询间隔,但如果你在100毫秒范围内的任何地方,那么我认为没有人能够实现反转。基本上,你的问题的全部答案是“足够快的投票速度,用户不可能在没有你检测到的情况下进行切换”,我想说的是如何检测切换。你是对的,如果我投票足够快,我可以得到最小的变化。但是考虑A和B点分开1度,B和C相距2度的情况。我怎么知道用户已经停止顺时针旋转,现在正逆时针旋转?重要的不是增量,而是符号。因此,如果A>B表示顺时针旋转,那么如果C