我有一个变量(数字),可以从-180
到180
。
有没有办法可以创建循环引用,以便当变量为180 || -180
时,它与90
和-90
等距?
我的代码现在非常复杂,我还没有设置笔;
但基本上我是在Y轴上旋转一个立方体,如果立方体的背面设置为旋转Y(180度)以使其到达左侧(在旋转Y(-90度)上设置),它将通过右侧(在rotateY(90deg)上设置),正面(在rotateY(0deg)上设置)....
由于它需要双向工作,我无法将其设置为-180;
编辑1
I posted a pen;希望看看这个例子,你可以理解我的意思;
答案 0 :(得分:0)
我猜你是专门处理圆上的角度,以度为单位。您可以编写distance
函数来计算两个角度之间的最短角度,无论是顺时针还是逆时针。然后你可以用它来确认一个角度是否与其他两个角度等距。
function distance(a,b){
var diff = Math.abs(b - a) % 360;
if (diff > 180){diff = 360 - diff;}
return diff;
}
distance(359,0); #result: 1
distance(-180,180); #result: 0
distance(90, -180) == distance(-90, -180); #result: true
distance(90, 180) == distance(-90, 180); #result: true