atan2(y, x)
在180°处具有不连续性,顺时针方向切换为-180°..0°。
如何将值的范围映射到0°..360°?
这是我的代码:
CGSize deltaPoint = CGSizeMake(endPoint.x - startPoint.x, endPoint.y - startPoint.y);
float swipeBearing = atan2f(deltaPoint.height, deltaPoint.width);
给定startPoint
和endPoint
,这两个XY点结构都在计算滑动触摸事件的方向。该代码适用于iPhone,但支持的任何语言atan2f()
都可以。