我想在我的游戏中获得以360度为单位的角度... 我需要知道玩家朝向哪个方向...
这段代码可以获取正确的角度,但只能以90度为增量:(也就是说,当我点击上左象限时,我会得到0到90度的角度...下左为0到-90度,等等...)
var dY = this.pos.y-e.gameY; //opposite
var dX = this.pos.x-e.gameX; //adjacent
var dist = Math.sqrt((dY*dY)+(dX*dX)); //hypotenuse
var sin = dY/dist; //opposite over hypotenuse
var radians = Math.asin(sin);
var degrees = radians*(180/Math.PI); //convert from radians to degrees
this.calculatedAngle = degrees;
如何以360度的方式表示?
这是另一个例子:前两个图示问题...当我在左下象限点击时,它会从x轴绘制出一个直角三角形...
我需要它像后面两幅图一样,不断绘制角度:
dy
和dx
的符号来区分象限,根据需要为你的结果添加偏移量。 - orange