直线方程
-
直线的一般式方程: Ax + By + C = 0
平行于x轴时,A=0,C≠0;
平行于y轴时,B=0,C≠0;
与x轴重合时,A=0,C=0;
与y轴重合时,B=0,C=0;
过原点时,C=0;
与x、y轴都相交时,A*B≠0。 -
直线的点斜式方程:y - y0 = k( x - x0 ) 也就是 y = k( x - x0 ) + y0
k为斜率,(x0,y0)为直线上一点 -
直线的斜截式方程: y = kx + b =- (A/B)y - (C/B)
斜率:k = -A/B
设(x1,y1),(x2,y2)为直线上的两点,则
斜率:k = tanα =(y2-y1)/(x2-x1)或(y1-y2)/(x1-x2)
代表由直线与右边X轴所成的角的正切,α 为其夹角
垂足公式
已知直线一般式方程时:
设已知直线外一点坐标为(x0,y0),垂足坐标为(x,y),因为垂线与直线垂直,垂线斜率为k的负倒数,则可得方程:
{ Ax + By + C = 0;
{ (y - y0) / (x - x0) = B / A;
解方程可得:
x = ( B*B*x0 - A*B*y0 - A*C ) / ( A*A + B*B )
y = ( -A*B*x0 + A*A*y0 - B*C ) / ( A*A + B*B )
已知线段端点时:
设已知直线外一点坐标为p0(x0,y0),垂足坐标为(x,y),两端点为p1(x1,y1)和p2(x2,y2)
则直线斜率为:k1 = ( y2 - y1 ) / (x2 - x1 )
该直线方程为:y = k1 * ( x - x1 ) + y1
其垂线斜率为:k2 = -1 / k1,
其垂线方程为:y = k2 * (x-x0) + y0 = k2 * ( x - x0 ) + y = (-1/k1) * (x - x0) + y0
联立两直线方程,也就是求交点,解得:
x = ( k1^2 * x1 + k1 * ( y0 - y1 ) + x0 ) / ( k1^2 + 1)
y = k1 * ( x - x1) + y1
点到线段的最近点判断
求出垂足后,判断垂足坐标是否在p1、p2之间,若在则垂足为最近的,否则求p1、p2到p0距离,短者为最近点
点到线段的距离
求出最近点,则就得到了最短距离