MT1593
-点到线的最短距离即垂足坐标
一、根据两点求直线方程
已知直线上两点为:(x1,x2),(y1,y2);
设方程为:Ax+By+C=0;
-
求斜率:
k=(y2-y1)/(x2-x1);
-
直线方程为:
y-y1=k(x-x1);
换算得:kx-y+y1-kx1=0
,即:
A=k
B=-1
C=y1-kx1=y1-(y2-y1)/(x2-x1)*x1
二、求距离和垂足公式
- 点
(x0,y0)
到直线的距离公式为:
d=abs(Ax0+By0+C)/sqrt(A*A+B*B);
- 设垂足为p,则:
p.x=(B*B*x0-A*B*y0-A*C)/(A*A+B*B)
p.y=(A*·A*y0-A*B*x0-B*C)/(A*A+B*B)
三、 代码
[码题集](码蹄集