如何展开角度以在[0,360]中产生角度?
我可以这样做:
int unwind(int angle)
{
while(angle < 0) angle += 360;
while(angle >= 360) angle -= 360;
}
但我很确定有一种方法可以在没有循环的情况下做到这一点。我也尝试了angle % 360
,但这对负角度(-60 % 360 == -60
)无效。
答案 0 :(得分:11)
尝试:
(360 + (angle % 360)) % 360
或:
(angle >= 0 ? 0 : 360) + angle % 360