2.2.1 直线方程的概念和直线的斜率
一,直线方程的概念
1.一次函数的一般式:y=kx+b,(k≠0)
2.一次函数的坐标图像就是直线。
扩展:从补间动画的角度来看,因变量y 代表速度,自变量x 代表时间,可以得出线性插值中的匀速运动和加速运动。
从补间动画的角度来看,用一次函数可以计算线性插值。
如一次函数 v=kt+b,(k≠0)
- 匀速运动:v=t+b
- 加速运动:v=kt+b
二,直线的斜率
1.直线的斜率可由直线上的两点获取。
如已知直线上两点A(x1,y1),B(x2,y2),求斜率k
k=(y2-y1)/(x2-x1),(x1≠ x2)
2.直线和x 轴正方向的夹角叫做直线的倾斜角。
注:js 里,求此夹角的方法是Math.atan2((y2-y1),(x2-x1)),其返回的是一个弧度值
3.关于斜率k 的规律:
- k=0,直线平行于x 轴,或与x 轴重合
- k>0,倾斜角为锐角
- k<0,倾斜角为钝角
2.2.2 直线方程的几种形式
一,直线的点斜式方程和两点式方程
1.已知直线斜率k 和直线上一点A(x1,y1),可用点斜式方程判断点B(x2,y2) 是否在直线上。
点斜式方程:y2-y1=k*(x2-x1)
2.点斜式方程的几种特殊情况:
- 斜率k=0 时,y2-y1=0 → y2=y1,一次函数的坐标图像平行或重合于x 轴
- 若点A(0,y1),则y2-y1=k*x2 → y2= k*x2 + y1,也就是一次函数的一般式:y=kx+b
- 若点A(0,0),则y2=k*x2 ,也就是一次函数的一般式去掉b:y=kx
3.从直线的角度来看,一次函数的一般式 y=kx+b ,叫做直线的斜截式方程。
- k:斜率
- b:直线在y 轴上的截距,即直线与y 轴交点的y 位
4.已知直线上三点A(x1,y1),B(x2,y2),C(x3,y3),基于斜率公式,可以推出:
k=(y2-y1)/(x2-x1)=(y3-y1)/(x3-x1)
对换一下,可以得到两点式方程:
(y2-y1)/(y3-y1)=(x2-x1)/(x3-x1)
二,直线方程的一般式
1.直线的方程式是关于x、y 的二元一次方程。
2.直线的一般式方程就是把二元一次方程的一般式变换了一下:
直线的一般式方程:Ax+By+C=0,(A≠0,B≠0)
注:直线的一般式方程为何不是y=kx+b,(k≠0),是为了方便以后的矩阵运算。
2.2.3 两条直线的位置关系
一,两条直线相交、平行、重合的条件
1.已知两条直线:
l1:A1x+B1y+C1=0 ①
l2:A2x+B2y+C2=0 ②
求l1、l2 的交点:
解方程,分别求出x、y 值
- 求x 的方式,将① ② 合在一起,约去y:
①*B2=②*B1
A1B2x+B1B2y+C1B2=A2B1x+B2B1y+B1C2
A1B2x+C1B2=A2B1x+B1C2
A1B2x-A2B1x=B1C2-C1B2
(A1B2-A2B1)x=B1C2-C1B2
x=(B1C2-C1B2)/(A1B2-A2B1)
- 求y 的方式,将① ② 合在一起,约去x:
①*A2=②*A1
A1A2x+A2B1y+A2C1=A1A2x+A1B2y+A1C2
A2B1y+A2C1=A1B2y+A1C2
A2B1y-A1B2y=A1C2-A2C1
(A2B1-A1B2)y=A1C2-A2C1
y=(A1C2-A2C1)/(A2B1-A1B2)
y=(A2C1-A1C2)/(A1B2-A2B1)
2.推理
当A1B2-A2B1=0,B1C2-C1B2≠0,A2C1-A1C2≠0 时,方程无解,l1、l2平行
如:
l1:2x+4y+C1=0 ①
l2:2x+4y+C2=0 ②
若A2、B2、C2 不全为0,则l1、l2 的平行条件可转化为
A1B2-A2B1=0
A1B2=A2B1
A1/A2=B1/B2≠C1/C2
3.综上所述,两条直线相交、平行、重合的条件为:
- 相交:A1B2-A2B1≠0 或 A1/A2≠B1/B2
- 平行:A1B2-A2B1=0 且 B1C2-C1B2≠0,或 A1/A2=B1/B2≠C1/C2
- 重合:A1=λA2 && B1=λB2 && C1=λC2 (λ≠0),或 A1/A2=B1/B2=C1/C2
二,两条直线垂直的条件
1.已知两条直线:
l1:A1x+B1y+C1=0 ①
l2:A2x+B2y+C2=0 ②
因为C1、C2 跟直线的斜率无关,所以我们可以把两条直线简化:
l1:A1x+B1y=0 ①
l2:A2x+B2y=0 ②
2.假设l1、l2 不与坐标轴平行或重合。
将l1、l2 的交点放到原点上,得到一对新的直线l1'、l2'
3.从l1'、l2' 上分别获取两点A(x1,y1)、B(x2,y2)
根据勾股定理可知:
pow(x1²+y1²+x2²+y2²)=pow((x1-x2)²+(y1-y2)²)
x1²+y1²+x2²+y2²=(x1-x2)²+(y1-y2)²
x1x2+y1y2=0
4.因为l1'、l2' 不是坐标轴,所以B1≠0、B2≠0,由A1x+B1y=0 推理得:
y=-A1x/B1
y1=-A1/B1*x1
y2=-A2/B2*x2
5.将y1、y2代入x1x2+y1y2=0 得:
x1x2(1+A1A2/B1B2)=0
6.因为A、B不是原点,所以x1、x2 不可能等于0,因此:
1+A1A2/B1B2=0
A1A2+B1B2=0
7.这个方程式是可以逆推到 l1,l2 中的,因此判断两条直线垂直的方程就是:
A1A2+B1B2=0
三,两条直线是否垂直,也可以根据斜率判断:
1.设l1 的斜率k1=-A1/B1,l2的斜率k2=-A2/B2
2.将k1、k2 带入1+A1A2/B1B2=0 中:
1+k1k2=0
k1k2=-1
3.因此,用直线的斜率判断垂直的方程就是:
k1k2=-1
2.2.4 点到直线的距离
一,推导过程
1.设点P(x1,y1) 和直线 l : Ax+By+C=0 (A、B 不全为0)
求点P(x1,y1) 到直线 l 的距离
2.过点P 作直线m 垂直于直线 l,垂足为点P0(x0,y0)
3.先求直线m 的方程式:
B(x-x1)-A(y-y1)=0
代入点P0
B(x0-x1)-A(y0-y1)=0 ①
4.因为P0 在直线l 上,所以:
Ax0+By0+C=0
C=-Ax0-By0
5.将C 代入直线m 的方程中:
Ax1+By1+C=0
Ax1+By1+C=Ax1+By1-Ax0-By0
Ax1+By1+C=A(x1-x0)+B(y1-y0)
A(x1-x0)+B(y1-y0)=Ax1+By1+C ②
6.将①、② 两边平方后相加:
(A(x1-x0))²+2*A(x1-x0)*B(y1-y0)+(B(y1-y0))² + (B(x0-x1))²-2*B(x0-x1)*A(y0-y1)+(A(y0-y1))²=(Ax1+By1+C)²
(A(x1-x0))²+(B(y1-y0))² + (B(x0-x1))²+(A(y0-y1))²=(Ax1+By1+C)²
(A(x1-x0))² + (B(x0-x1))²+(A(y0-y1))²+(B(y1-y0))²=(Ax1+By1+C)²
(A²+B²)(x1-x0)²+(A²+B²)(y1-y0)²=(Ax1+By1+C)²
(A²+B²)[(x1-x0)²+(y1-y0)²]=(Ax1+By1+C)²
(x1-x0)²+(y1-y0)²=(Ax1+By1+C)²/(A²+B²)
7.方程左侧便是点P到直线l 距离的平方,因此点到直线距离的公式便是:
d=|Ax1+By1+C| / pow(A²+B²,2)
二,示例:
已知点P(-1,2),直线 l:2x+3y+4=0,求点P 到直线l 的距离d
d=|2*(-1)+3*2+4| / pow(2²+3²)
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。