360旋转关闭设置

问题描述:

我在android中制作指南针。我存储z轴的起始值。360旋转关闭设置

当我将手机旋转一圈时,每10度之后我想做出决定。

我计算的东西如下:

startingAngle=355; 
currentAngle=`Real time value of z-axis`; 
difference=currentAngle-startingAngle; 

if(difference==10){ 
`enter code here` 
} 

当我开始了一圈旋转手机,最终​​达到359,在这之后变为1

这就提出了一个问题,当​​是1和startingAngle是355,因为difference变成344但它应该是6.

如何获得正确的差值,以便在10 degre后触发一个函数ES?

+0

什么是你的问题?没有任何明确的。 – MBo

+0

@MBo问题是,当startingAngle是335并且z的值是1 difference = startingAngle-valueof_z_axis例​​如difference = 355-3 => difference = 352时如何获得正确的差异值,但实际上该值应该是be difference = 8 – user3699039

如果我明白你的问题正确:

Diff = Abs(Angle1 - Angle2) 
if Diff >= 180 
    Diff = 360 - Diff 
+0

Abs功能是什么,它属于哪种语言 – user3699039

+0

非常感谢它对我的工作很好 – user3699039

+0

绝对值 - 可能类似于Math.Abs – MBo