确定两点之间的90度预测

时间:2016-08-15 11:08:15

标签: python math vector projection

python中,我有两个点,即2D中的A和B.

我有一个用户在这两个点之间旅行(现在是一个向量?)。

这些点是相距甚远的。

我想在距离原始线100米的这两个点之间的中间位置计算2个投影(?),一个投影在90度,另一个投影在180度。

Better explained as a picture here

在上图中,我有点A和B,而我想计算点C和D.

有人可以帮我解决这个数学计算吗?

1 个答案:

答案 0 :(得分:1)

考虑从A到B的方向向量:

ab = (x2 - x, y2 - y)

然后,与该行正交的向量是:

orth = (y - y2, x2 - x)

此向量(和方向向量)的长度为:

l = sqrt((x2-x)^2 + (y2-y)^2)

该行的中点是

m = 1/2 * (x + x2, y + y2)

最后,C和D两点是:

C/D = m +- orth * 100 / l