我有两点是p1
和p2
.
如何从p1
给p2
定长度获得位置?
var p1 = {x: 100, y: 400}; var p2 = {x: 300, y: 500}; var len = 40;
您可以使用毕达哥拉斯定理计算两点之间的距离:
var xDist = p2.x - p1.x; var yDist = p2.y - p1.y; var dist = Math.sqrt(xDist * xDist + yDist * yDist);
然后计算长度所涵盖的总距离的分数:
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
.