在我的项目中,我想画一条从X点到Y点的线。
虽然我知道X点的位置,但我只知道Y点的角度和距离。
所以我的问题是通过角度(从点X)和距离得到点Y的坐标。
我在这个项目中使用JavaScript,不想使用任何图形库。
例如:
点X(10; 20)
点Y(距离X点10°和200px)
这可能是非常基本的数学,但我不知道该怎么做。
答案 0 :(得分:18)
js> Math.cos(10*Math.PI/180) * 200 + 10
206.9615506024416
js> Math.sin(10*Math.PI/180) * 200 + 20
54.729635533386066
Y
位于(207,55)。
答案 1 :(得分:14)
这是一个代码片段,它将@ IgnacioVazquez-Abrams的答案包装成一个函数,并提供了如何使用它的示例:
function findNewPoint(x, y, angle, distance) {
var result = {};
result.x = Math.round(Math.cos(angle * Math.PI / 180) * distance + x);
result.y = Math.round(Math.sin(angle * Math.PI / 180) * distance + y);
return result;
}
var newPoint = findNewPoint(10, 20, 10, 200);
console.log('newPoint:', newPoint);