【发布时间】:2018-04-11 02:37:30
【问题描述】:
我有一个用于平面 2D 地图的网格,这与通常的有点不同。左上角是 0,0,右下角是 1000,1000。我在这张地图上有 2 个点,一个起点/锚点和一个目的地。
我正在寻找从起点到终点的度数(在 javascript 中)。我浏览了很多答案,但都没有产生正确的结果。
function getAngle(origin_x, origin_y, destination_x, destination_y) {
var newx = destination_x - origin_x;
var newy = destination_y - origin_y;
var theta = Math.atan2(-newy, newx);
if (theta < 0) {
theta += 2 * Math.PI;
}
theta *= 180 / Math.PI;
return theta;
}
这是我目前所拥有的,但它没有产生正确的角度。
非常感谢您!
【问题讨论】:
-
一个角度需要两条支撑线来测量。你的第二个在哪里?是x轴/y轴吗?你能给出一个你想计算的角度的数字吗?
-
@NicoSchertler 它将成为一个主要方向。所以它只是从起点出来的北线,到目的地。
-
@NicoSchertler Ive 现在包含了一个图表。谢谢
-
北向是
(0, -1)吗?然后,atan2(newx, -newy)应该这样做。如果这不是您想要的,您能否提供一些带有您想要的角度的示例方向? -
@NicoSchertler 这个小改动似乎已经解决了!谢谢!
标签: javascript math trigonometry angle