使用该线上的点找到垂直线

时间:2017-10-31 16:31:29

标签: math coordinates line

我有一条线(P1,P2)和该线上的一个点(中点)。我可以用什么方程来找到穿过中点的直线(P1,P2)。标有“'?'不明。我不想使用角度,只给出3个点(P1,P2,中点)。线P1,P2可以是任何方向/角度。

提前致谢。

enter image description here

2 个答案:

答案 0 :(得分:0)

P1的坐标:(x1,y1) P2的坐标:(x2,y2)

中点坐标:((x1 + x2)/ 2,(y1 + y2)/ 2) P1P2线的斜率:(y1-y2)/(x1-x2) P1P2任意垂直线的斜率:(x2-x1)/(y1-y2)

红线方程:y - (y1 + y2)/ 2 =((x2-x1)/(y1-y2))*(x - (x1 + x2)/ 2)

如果坐标的实际值为P1 y P2,则只需进行替换。

答案 1 :(得分:0)

让我们定义矢量

D = P2 - P1  (dx=x2-x1, dy = y2-y1)

和中间点

mx = (x2+x1)/2
my = (y2+y1)/2

垂直于D矢量

PD = (-dy, dx)

单位(标准化)垂直向量

U = (-dy / L, dx / L)
where
L = Sqrt (dx * dx + dy * dy)

位于距离中间距离F的点的坐标是

x = mx + U.x * F
y = my + U.y * F

或(对于另一方的点)

x = mx - U.x * F
y = my - U.y * F