javascript-按给定长度获取两点之间的位置

javascript-按给定长度获取两点之间的位置,javascript,html,svg,Javascript,Html,Svg,我有两点,分别是p1和p2 如何按给定长度从p1到p2获取位置 var p1 = {x: 100, y: 400}; var p2 = {x: 300, y: 500}; var len = 40; 您可以使用以下公式计算两点之间的距离: 然后计算长度所覆盖的总距离的分数: var fractionOfTotal = len / dist; 最后,你得到了你想要的要点,如下所示: var p = { x: p1.x + xDist * fractionOfTotal, y: p1

我有两点,分别是
p1
p2

如何按给定长度从
p1
p2
获取位置

var p1 = {x: 100, y: 400};
var p2 = {x: 300, y: 500};
var len = 40;

您可以使用以下公式计算两点之间的距离:

然后计算长度所覆盖的总距离的分数:

var fractionOfTotal = len / dist;
最后,你得到了你想要的要点,如下所示:

var p = {
   x: p1.x + xDist * fractionOfTotal,
   y: p1.y + yDist * fractionOfTotal
}

所以我们假设
len
覆盖了总距离的20%。然后你把20%的x距离加在
p1.x上,把20%的y距离加在
p1.y上,这不就是
p1.x+len
?如果p1.y=p2.y,我想@A你试过评估吗(p1.x+len)?哦,我明白了。您的图表没有表示数据。你应该使用毕达哥拉斯定理。你可能应该稍微“倾斜”绘图中的线条,使点更清晰。
var p = {
   x: p1.x + xDist * fractionOfTotal,
   y: p1.y + yDist * fractionOfTotal
}