从一个点到另一个点的距离

时间:2011-04-13 02:48:50

标签: math geometry

给定点a(x1,y1)和点c(x3,y3),我们可以计算斜率m。假设我们有一个距离d,我试图弄清楚如何找到一个点b(x2,y2),它与距离x1,y1在c方向上的距离为d。

有谁知道如何计算?我想过使用中点函数,但它并不存在。

帮助?

2 个答案:

答案 0 :(得分:3)

您可以使用以下内容计算ac之间的完整距离

        __________________________________
df =   / (x3-x1)*(x3-x1) + (y3-y1)*(y3-y1)
     \/

这使用标准的“平方和的根”方法。

然后,如果您想要的实际部分距离为dp,则可以在(x2,y2)处找到该点:

x2 = x1 + dp/df * (x3-x1)
y2 = y1 + dp/df * (y3-y1)

只是在两个维度中移动正确的比例dp/df

答案 1 :(得分:1)

您可以通过以下方式获得从A到B的指示:

D = B - A

然后,您可以规范化方向(这意味着它是1级或长度1):

N = D / D.Length

其中

D.Length = sqrt(D.X * D.X + D.Y * D.Y)

要在A和B给出的线上找到一个点,在B方向上远离A的X个单位,您将使用以下内容:

Final = A + N * X