为什么求点到直线的距离斜率公式是什么斜率要去距离较远的两点?请证明。

本文章向大家介绍求点到直线的最短距离及垂足,主要包括求点到直线的最短距离及垂足使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。一、根据两点求直线方程已知直线上两点为:(x1,x2),(y1,y2);设方程为:Ax+By+C=0;1. 求斜率:k=(y2-y1)/(x2-x1);2. 直线方程为: y-y1=k(x-x1);换算得:kx-y+y1-kx1=0,即:A=k
B=-1
C=y1-kx1=y1-(y2-y1)/(x2-x1)*x1二、求距离和垂足公式1. 点(x0,y0)到直线的距离公式为:d=abs(Ax0+By0+C)/sqrt(A*A+B*B);2. 设垂足为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) 三、 代码输入点和线段,返回距离和垂足 1 function getDistanceP2L(point,line){
2
3 var x1=line.startPoint.x;
4 var y1=line.startPoint.y;
5 var x2=line.endPoint.x;
6 var y2=line.endPoint.y;
7 var x0=point.x;
8 var y0=point.y;
9
10 var k=x1==x2?10000:(y2-y1)/(x2-x1);//当x1=x2时,给斜率设一个较大值10000
11 var a=k;
12 var b=-1;
13 var c=y1-k*x1;
14
15 var d=Math.abs(a*x0+b*y0+c)/Math.sqrt(a*a+b*b);
16
17 var px=(b*b*x0-a*b*y0-a*c)/(a*a+b*b);
18 var py=(a*a*y0-a*b*x0-b*c)/(a*a+b*b);
19 var p=new Point(px,py);
20
21 return [d,p];
22 }
原文地址:https://www.cnblogs.com/snsart/p/10954593.html

我要回帖

更多关于 点到直线的距离斜率公式是什么 的文章

 

随机推荐