直线

<image>

直线，是一个点在平面或空间沿着一定方向和其相反方向运动的轨迹，是不弯曲的线。直线是几何学的基本概念，在不同的几何学体系中有着不同的描述。在这里主要描述欧几里得空间中的直线。其他曲率非零状况下的直线，请参考非欧几里得几何。

欧几里得几何研究曲率为零的空间下状况，它并未对点、直线、平面、空间给出定义，而是通过公理来描述点线面的关系。

欧几里得几何中的直线可以看作是一个点的集合，这个集合中的任意一点都在这个集合中的其他任意两点所确定的直线上。

“过两点有且只有一条直线”是欧几里得几何体系中的一条公理，“有且只有”意即“确定”，即两点确定一直线。

在几何学中，直线没有粗细，没有端点，没有方向性，具有无限的长度，具有固定的位置。

## 线性方程

在解析几何中，我们常用线性方程描述一条直线。

### 二维直角坐标系方程

平行于x-或y-轴

最简单的直线方程是平行于x-轴或y-轴的直线：

$x=a \;$ 或 $\; y=b$。

当中 $a$ 和 $b$ 分别是x-和y-截距。

一般式

对于所有的直线，都可以形式

$$Ax+By+C=0$$

来表示。

这表示示形式并不是唯一的，但习惯上常限制 $A \ge 0$ 及 $\gcd(A,B,C)=1$。在此限制下，同一条直线只有一种表达形式。

在这形式下，直线的斜率是 $-\frac{A}{B}$，x-截距是 $-\frac{C}{A}$，y-截距是 $-\frac{C}{B}$。

斜截式

在直线不平行于y-轴时，若斜率是 $m$，y-截距是 $b$，则有方程

$y=mx+b$。

在这形式下，直线的表达形式是唯一的。

二点式

若直线穿过两点 $(x_1,y_1)$ 和 $(x_2,y_2)$，则有方程

$\frac{x-x_1}{x_2-x_1} = \frac{y-y_1}{y_2-y_1}$。

等价地，可以用行列式

$$\begin{vmatrix} x & y & 1 \\x_1 & y_1 & 1 \\x_2 & y_2 & 1 \end{vmatrix} = 0$$

表示。

点斜式

若直线穿过一点 $(x_0,y_0)$，而且斜率是 $m$，则有方程

$y-y_0=m\,(x-x_0)$。

截距式

若直线的x-和y-截距分别是 $a$ 和 $b$，则方程为

${x \over a}+{y \over b}=1$。

法线式

过原点向直线作一垂直线段，若该线长度为 $p$，且与正x-轴的倾斜角为 $\alpha$，则有方程

$x \cos \alpha +y \sin \alpha -p=0$。

向量式

若直线穿过一点 $\mathbf{a} = \begin{bmatrix} <pre> x_0\\ y_0\\ \end{bmatrix}$，且有方向向量 $\mathbf{u} = \begin{bmatrix} u_x\\ u_y\\ \end{bmatrix}$，则有向量方程

$\mathbf{r} = \mathbf{a} + \lambda \mathbf{u}$。

当中 $\mathbf{r}= \begin{bmatrix} <pre> x\\ y\\ \end{bmatrix}$，而 $\lambda$ 是一任意实数。

须要注意的是，这直线的表达形式并不是唯一的。

参数式

从向量式出发，可以参数 $\lambda$ 表示方程

$\begin{alignat}{5} x &&\; = \;&& x_0 &&\; + \;&& u_x \lambda & \\ y &&\; = \;&& y_0 &&\; + \;&& u_y \lambda \end{alignat}$。

其中 $\lambda$ 是一任意实数。

### 三维直角坐标系方程

在三维坐标上，由于一条等式只代表一个平面，一条直线须由最少两条等式定义。

平行于x-、y-或z-轴

平行于x-、y-或z-轴的直线有方程

$\begin{alignat}{3} y &&\; = \;&& b & \\ z &&\; = \;&& c \end{alignat} \,$、$\, \begin{alignat}{3} x &&\; = \;&& a & \\ z &&\; = \;&& c \end{alignat}\,$ 或 $\, \begin{alignat}{3} x &&\; = \;&& a & \\ y &&\; = \;&& b \end{alignat}$

形式。

一般式

对于任何直线，一般式都能以两个非平行平面定义：

$\begin{alignat}{9} A_1x &&\; + \;&& B_1y &&\; + \;&& C_1z \;&& + \;&& D_1 \;&& = \;&& 0 & \\ A_2x &&\; + \;&& B_2y &&\; + \;&& C_2z \;&& + \;&& D_2 \;&&= \;&& 0 \end{alignat}$。

其中 $A_1:B_1:C_1 \ne A_2:B_2:C_2$。

由于从一条直线可引申出无限对平面，这表示方式并不是唯一的。因此又能考虑以三个共线平面定义：

$\begin{alignat}{7} Ax &&\; - \;&& By &&\; + \;&& D \;&& = \;&& 0 & \\ Cy &&\; - \;&& Az &&\; + \;&& E \;&& = \;&& 0 & \\ Bz &&\; - \;&& Cx &&\; + \;&& F \;&& = \;&& 0 \end{alignat}$。

或合并记作

$Ax-By+D=Cy-Az+E=Bz-Cx+F=0$。

其中系数须乎合关系 $AF+BE+CD=0$，以保证三个平面相交于同一直线。

事实上，这三条等式分别对应着直线在xy-、yz-和xz-平面的投影。

在限制 $A \ge 0$ 及 $\gcd(A,B,C,D,E,F)=1$ 下，同一条直线只有一种表达形式。

（注：对于平行于轴平面的直线，例如 $2y-3z+1=x-1=0$，会有以下表示方式：

$\begin{alignat}{7} 3x &&\; \;&& &&\; - \;&& 3 \;&& = \;&& 0 \\ 2y &&\; - \;&& 3z &&\; + \;&& 1 \;&& = \;&& 0 \\ <pre> &&\; - \;&& 2x &&\; + \;&& 2 \;&& = \;&& 0 </pre> \end{alignat}$。

对于定义一条直线，这步骤是非必要的。但在本页往后的部分，这表示方式能简化一些公式。）

斜截式

类似于二维的情形，在直线不平行于yz-轴平面时，可以写成

$$\begin{alignat}{5} y &&\; = \;&& mx &&\; + \;&& b \\ z &&\; = \;&& nx &&\; + \;&& c \end{alignat}$$

形式。

在这形式下，直线的表达形式是唯一的。

（注：对于直线平行于yz-平面时，以上方式并不适用。但直线仍可表示成

$\begin{alignat}{2} x \;& = \; a \\ z \;& =\; ny + c \end{alignat}$。）

二点式

若直线穿过两点 $(x_1,y_1,z_1)$ 和 $(x_2,y_2,z_2)$，则有方程

$\frac{x-x_1}{x_2-x_1} = \frac{y-y_1}{y_2-y_1} = \frac{z-z_1}{z_2-z_1}$。

等价地，可以用行列式

$$\begin{vmatrix} x & y & 1 \\x_1 & y_1 & 1 \\x_2 & y_2 & 1 \end{vmatrix} = \begin{vmatrix} y & z & 1 \\y_1 & z_1 & 1 \\y_2 & z_2 & 1 \end{vmatrix} = \begin{vmatrix} z & x & 1 \\z_1 & x_1 & 1 \\z_2 & x_2 & 1 \end{vmatrix} = 0$$

表示。

向量式

若直线穿过一点 $\mathbf{a} = \begin{bmatrix} <pre> x_0\\ y_0\\ z_0\\ \end{bmatrix}$，且有方向向量 $\mathbf{u} = \begin{bmatrix} u_x\\ u_y\\ u_z\\ \end{bmatrix}$，则有向量方程

$\mathbf{r} = \mathbf{a} + \lambda \mathbf{u}$。

当中 $\mathbf{r}= \begin{bmatrix} <pre> x\\ y\\ z\\ \end{bmatrix}$，而 $\lambda$ 是一任意实数。

须要注意的是，这直线的表达形式并不是唯一的。

参数式

从向量式出发，可以参数 $\lambda$ 表示方程

$\begin{alignat}{5} x &&\; = \;&& x_0 &&\; + \;&& u_x \lambda & \\ y &&\; = \;&& y_0 &&\; + \;&& u_y \lambda & \\ z &&\; = \;&& z_0 &&\; + \;&& u_z \lambda \end{alignat}$。

其中 $\lambda$ 是一任意实数。

## 直线与解析几何

### 点与直线的距离

一般情况下，点与直线的距离，是指点到直线的最短距离，即垂直距离。

在二维直角坐标中。

$$d=\frac{\left| Ap+Bq+C \right|}{\sqrt{A^2+B^2}}$$

给出向量式 $\mathbf{r} = \mathbf{a} + \lambda \mathbf{u}$ 和 点 $\mathbf{p} = \begin{bmatrix} <pre> p\\ q\\ \end{bmatrix}$，则有距离

$$d=\frac{ \left| (\mathbf{a}-\mathbf{p}) \times \mathbf{u} \right|}{\left| \mathbf{u} \right|}$$

在三维直角坐标中。

$d=\sqrt{\frac{(Ap-Bq+D)^2 + (Cq-Ar+E)^2 + (Br-Cp+F)^2}{A^2+B^2+C^2}}$。

给出向量式 $\mathbf{r} = \mathbf{a} + \lambda \mathbf{u}$ 和点 $\mathbf{p} = \begin{bmatrix} <pre> p\\ q\\ r\\ \end{bmatrix}$，则有距离

$$d=\frac{ \left|(\mathbf{a}-\mathbf{p}) \times \mathbf{u} \right|}{\left| \mathbf{u} \right|}$$

### 两条相交直线的相交点

不考虑重合的情形，在二维平面中，两条相交直线可以相交或平行。

给定两条直线 $A_1x+B_1y+C_1=0$ 和 $A_2x+B_2y+C_2=0$，二者相交的条件是

$A_1:B_1 \ne A_2:B_2$。

或等价地。

$\begin{vmatrix} A_1 & B_1 \\A_2 & B_2 \end{vmatrix} \ne 0$。

当中 $\begin{vmatrix} a & b \\ c & d \end{vmatrix} = ad-bc$。

这时两线的相交点可从克莱姆法则求得

$x=-\frac{\begin{vmatrix} C_1 & B_1 \\C_2 & B_2 \end{vmatrix}}{\begin{vmatrix} A_1 & B_1 \\A_2 & B_2 \end{vmatrix}}$， $y=-\frac{\begin{vmatrix} A_1 & C_1 \\A_2 & C_2 \end{vmatrix}}{\begin{vmatrix} A_1 & B_1 \\A_2 & B_2 \end{vmatrix}}$。

在三维空间中，不考虑重合的情形，两条直线可以相交、平行或歪斜（异面）。

给定两条直线 $\begin{alignat}{7} A_1x &&\; - \;&& B_1y &&\; + \;&& D_1 \;&& = \;&& 0 & \\ C_1y &&\; - \;&& A_1z &&\; + \;&& E_1 \;&& = \;&& 0 & \\ B_1z &&\; - \;&& C_1x &&\; + \;&& F_1 \;&& = \;&& 0 \end{alignat}$ 及 $\begin{alignat}{7} A_2x &&\; - \;&& B_2y &&\; + \;&& D_2 \;&& = \;&& 0 & \\ C_2y &&\; - \;&& A_2z &&\; + \;&& E_2 \;&& = \;&& 0 & \\ B_2z &&\; - \;&& C_2x &&\; + \;&& F_2 \;&& = \;&& 0 \end{alignat}$，二者相交的条件是

$\begin{vmatrix} A_1 & B_1 \\A_2 & B_2 \end{vmatrix}$、 $\begin{vmatrix} B_1 & C_1 \\B_2 & C_2 \end{vmatrix}$ 及 $\begin{vmatrix} C_1 & A_1 \\C_2 & A_2 \end{vmatrix}$ 不全为 $0$，且

$A_1F_2+A_2F_1+B_1E_2+B_2E_1+C_1D_2+C_2D_1=0$。

这时两线的相交点可从克莱姆法则求得

$x=-\frac{\begin{vmatrix} D_1 & B_1 \\D_2 & B_2 \end{vmatrix}}{\begin{vmatrix} A_1 & B_1 \\A_2 & B_2 \end{vmatrix}}=\frac{\begin{vmatrix} B_1 & F_1 \\B_2 & F_2 \end{vmatrix}}{\begin{vmatrix} B_1 & C_1 \\B_2 & C_2 \end{vmatrix}}$， $y=\frac{\begin{vmatrix} A_1 & D_1 \\A_2 & D_2 \end{vmatrix}}{\begin{vmatrix} A_1 & B_1 \\A_2 & B_2 \end{vmatrix}}=-\frac{\begin{vmatrix} E_1 & A_1 \\E_2 & A_2 \end{vmatrix}}{\begin{vmatrix} C_1 & A_1 \\C_2 & A_2 \end{vmatrix}}$， $z=\frac{\begin{vmatrix} C_1 & E_1 \\C_2 & E_2 \end{vmatrix}}{\begin{vmatrix} C_1 & A_1 \\C_2 & A_2 \end{vmatrix}}=-\frac{\begin{vmatrix} F_1 & C_1 \\F_2 & C_2 \end{vmatrix}}{\begin{vmatrix} B_1 & C_1 \\B_2 & C_2 \end{vmatrix}}$。

### 两条相交直线的夹角

若两线相交，则会形成夹角。两线之间的夹角，通常指不大于90°的一只。

在二维平面上，给定直线 $y=mx+b$，该线与x-轴的夹角为

$\tan \theta = \left| m \right|$。

给定两条直线 $y=m_1x+b_1$ 和 $y=m_2x+b_2$，二者互相垂直当且仅当

$m_1 m_2 = -1$。

而其他情况，两线相交所形成的夹角 $\theta$ （$0^\circ \le \theta < 90^\circ$），则由

$$\tan \theta = \left| \frac{m_1-m_2}{1+m_1m_2} \right|$$

给出。

给定相交直线向量式 $\mathbf{r} = \mathbf{a_1} + \lambda \mathbf{u_1}$ 和 $\mathbf{r} = \mathbf{a_2} + \mu \mathbf{u_2}$，则有

$\cos \theta = \frac{\mathbf{u_1} \cdot \mathbf{u_2}}{\left| \mathbf{u_1}\right| \left| \mathbf{u_2} \right|}$。

在三维空间中，给定两条相交直线 $\begin{alignat}{5} y &&\; = \;&& m_1x &&\; + \;&& b_1 \\ z &&\; = \;&& n_1x &&\; + \;&& c_1 \end{alignat}$ 和 $\begin{alignat}{5} y &&\; = \;&& m_2x &&\; + \;&& b_2 \\ z &&\; = \;&& n_2x &&\; + \;&& c_2 \end{alignat}$，二者互相垂直当且仅当

$m_1 m_2 + n_1 n_2= -1$。

而其他情况，两线相交所形成的夹角 $\theta$ （$0^\circ \le \theta < 90^\circ$），则由

$$\tan \theta = \frac{\sqrt{(m_1 - m_2)^2 + (n_1 -n_2)^2 + \begin{vmatrix} m_1 & m_2 \\n_1 & n_2 \end{vmatrix}^2}}{\left|1 + m_1 m_2 + n_1 n_2 \right|}$$

给出，当中 $\begin{vmatrix} a & b \\ c & d \end{vmatrix} = ad-bc$。

若取 $n_1=n_2=0$，则公式退化成二维的形式。

给定相交直线向量式 $\mathbf{r} = \mathbf{a_1} + \lambda \mathbf{u_1}$ 和 $\mathbf{r} = \mathbf{a_2} + \mu \mathbf{u_2}$，则有

$\cos \theta = \frac{\mathbf{u_1} \cdot \mathbf{u_2}}{\left| \mathbf{u_1}\right| \left| \mathbf{u_2} \right|}$。

### 两条直线的距离

一般情况下，两条直线的距离，是指最短距离。

二维情况下，两条相交直线的距离必然为 $0$。

若有两条平行直线 $Ax+By+C_1=0$ 及 $Ax+By+C_2=0$，则有距离

$d=\frac{\left| C_1-C_2 \right|}{\sqrt{A^2+B^2}}$。

给定平行向量式 $\mathbf{r} = \mathbf{a_1} + \lambda \mathbf{u}$ 和 $\mathbf{r} = \mathbf{a_2} + \mu \mathbf{u}$，则有

$d=\frac{\left|(\mathbf{a_1}-\mathbf{a_2}) \times \mathbf{u}\right|}{\left|\mathbf{u}\right|}$。

三维情况下，两条相交直线的距离同样必然为 $0$。

若有两条平行直线 $\begin{alignat}{7} Ax &&\; - \;&& By &&\; + \;&& D_1 \;&& = \;&& 0 & \\ Cy &&\; - \;&& Az &&\; + \;&& E_1 \;&& = \;&& 0 & \\ Bz &&\; - \;&& Cx &&\; + \;&& F_1 \;&& = \;&& 0 \end{alignat}$ 及 $\begin{alignat}{7} Ax &&\; - \;&& By &&\; + \;&& D_2 \;&& = \;&& 0 & \\ Cy &&\; - \;&& Az &&\; + \;&& E_2 \;&& = \;&& 0 & \\ Bz &&\; - \;&& Cx &&\; + \;&& F_2 \;&& = \;&& 0 \end{alignat}$，则有距离

$d =\sqrt{ \frac{(D_1-D_2)^2+(E_1-E_2)^2+(F_1-F_2)^2}{A^2 + B^2 +C^2}}$。

给定平行直线向量式 $\mathbf{r} = \mathbf{a_1} + \lambda \mathbf{u}$ 和 $\mathbf{r} = \mathbf{a_2} + \mu\mathbf{u}$，则有

$d=\frac{\left|(\mathbf{a_1}-\mathbf{a_2}) \times \mathbf{u}\right|}{\left|\mathbf{u}\right|}$。

两条歪斜直线（即既非相交，亦非平行）有方程 $\begin{alignat}{7} A_1x &&\; - \;&& B_1y &&\; + \;&& D_1 \;&& = \;&& 0 & \\ C_1y &&\; - \;&& A_1z &&\; + \;&& E_1 \;&& = \;&& 0 & \\ B_1z &&\; - \;&& C_1x &&\; + \;&& F_1 \;&& = \;&& 0 \end{alignat}$ 及 $\begin{alignat}{7} A_2x &&\; - \;&& B_2y &&\; + \;&& D_2 \;&& = \;&& 0 & \\ C_2y &&\; - \;&& A_2z &&\; + \;&& E_2 \;&& = \;&& 0 & \\ B_2z &&\; - \;&& C_2x &&\; + \;&& F_2 \;&& = \;&& 0 \end{alignat}$，则有距离

$d=\frac{ \left| A_1F_2+A_2F_1+B_1E_2+B_2E_1+C_1D_2+C_2D_1 \right|}{\sqrt{ \begin{vmatrix} A_1 & B_1 \\A_2 & B_2 \end{vmatrix}^2+\begin{vmatrix} B_1 & C_1 \\B_2 & C_2 \end{vmatrix}^2 + \begin{vmatrix} C_1& A_1 \\C_2 & A_2 \end{vmatrix}^2}}$。

当中 $\begin{vmatrix} a & b \\ c & d \end{vmatrix} = ad-bc$。

给定歪斜直线向量式 $\mathbf{r} = \mathbf{a_1} + \lambda \mathbf{u_1}$ 和 $\mathbf{r} = \mathbf{a_2} + \mu\mathbf{u_2}$，则有距离

$d=\frac{\left|(\mathbf{a_1}-\mathbf{a_2}) \cdot (\mathbf{u_1} \times \mathbf{u_2})\right|}{\left|\mathbf{u_1} \times \mathbf{u_2} \right|}$。

## 参考资料

- 俞正光、李永乐、詹汉生编，《线性代数与解析几何》，清华大学出版社。
- 吕林根，《解析几何》，高等教育出版社。
- Line，Wolfram MathWorld。
- Equations of a Straight Line，Cut-the-Knot。