数学 / 立体几何初步 · 从直观图到判定定理 / 点线面的位置关系与异面直线 待审核 3 / 5
异面直线

点线面的位置关系与异面直线

平面几何里两条直线只有相交与平行两种关系,空间里多出第三种:既不相交也不平行。这一种不能靠看图判断,投影会给出假的交点。本页从四条基本事实出发,把三种关系的判据钉成可计算的量,并给出异面直线的角与距离。

1 · 四条基本事实

立体几何的推理不依赖图,只依赖下面四条与它们的推论。前三条管平面的存在与唯一,第四条管平行的传递。

编号 内容 作用
1 过不在同一条直线上的三个点,有且只有一个平面 平面的存在与唯一
2 若一条直线上的两个点在一个平面内,则这条直线在这个平面内 直线落入平面的判据
3 两个不重合的平面若有一个公共点,则有且只有一条过该点的公共直线 交线的存在与唯一
4 平行于同一条直线的两条直线互相平行 平行的传递性

基本事实 1 有三条常用推论:一条直线与直线外一点确定一个平面;两条相交直线确定一个平面;两条平行直线确定一个平面。三者都是「两个自由度」的不同说法,而这也解释了后面判定定理里反复出现的那个「相交」前提:两条相交直线给出两个不共线的方向,两条平行直线只给出一个。

基本事实 4 的一个推论是等角定理:空间中两个角的两边分别对应平行,则这两个角相等或互补。异面直线所成的角能有定义,靠的就是它。

2 · 两条直线的三种关系

定义 2.1(异面直线) 不同在任何一个平面内的两条直线叫做异面直线。

判据不看图而看两个量。设两条直线分别过点 P1P_1P2P_2,方向向量为 d1\vec{d_1}d2\vec{d_2}

d1×d2=0    平行或重合,(P1P2)(d1×d2)0    异面\vec{d_1} \times \vec{d_2} = \vec{0} \;\Rightarrow\; \text{平行或重合}, \qquad (\overrightarrow{P_1P_2}) \cdot (\vec{d_1} \times \vec{d_2}) \ne 0 \;\Rightarrow\; \text{异面}

第二个量是混合积,几何含义是四个点张成的平行六面体的体积:它为零即四点共面。容差得取相对量,混合积的量纲是长度的三次方,坐标放大十倍它就放大一千倍,拿绝对值当阈值会让同一组关系在换单位后改判。

3 · 异面直线所成的角

定义 3.1(异面直线所成的角) 过空间任一点分别作两条异面直线的平行线,这两条平行线所成的锐角(或直角)叫做异面直线所成的角,取值 (0°,90°](0°, 90°]

定义里的「任一点」由等角定理保证与取点无关。计算上不必真的平移:两条直线所成的角就是两个方向向量夹角的锐角化结果,min(θ,180°θ)\min(\theta, 180° - \theta)。取值不含 0° 是因为夹角为零的两条直线平行,那已经不是异面。

例 3.2 单位正方体 ABCD-A1B1C1D1ABCD\text{-}A_1B_1C_1D_1 中:棱 ABAB 与棱 B1C1B_1C_190°90°;棱 ABAB 与面对角线 A1C1A_1C_145°45°;两条面对角线 AB1AB_1BC1BC_160°60°;体对角线 AC1AC_1 与棱 ABABarccos(1/3)=54.7356°\arccos(1/\sqrt{3}) = 54.7356°。前三对异面,最后一对相交于 AA

图 3-1 · 正方体上任取两条直线,读数给出关系、混合积、所成角与距离。可调两个下拉框换直线,调方位角与俯仰角看同一对直线在不同视角下的投影。

4 · 公垂线段与距离

两条异面直线有且只有一条公垂线,公垂线夹在两条直线之间的那一段叫做公垂线段,它的长度就是两条异面直线的距离。计算上取最近点对:把两个参数化的点之间的距离平方对两个参数求极值,得到一个二元一次方程组,它的系数矩阵行列式是 d12d22(d1d2)2|\vec{d_1}|^2|\vec{d_2}|^2 - (\vec{d_1} \cdot \vec{d_2})^2。这个行列式为零恰对应两条直线平行,此时最近点对不唯一:公垂线有无穷多条,实现返回空值而不是随便给一条。

距离也能由混合积直接得出,d=(P1P2)(d1×d2)/d1×d2d = |(\overrightarrow{P_1P_2}) \cdot (\vec{d_1} \times \vec{d_2})| / |\vec{d_1} \times \vec{d_2}|。单位正方体里棱 ABAB 与棱 CC1CC_1 的距离是 11,公垂线段恰是棱 BCBC;体对角线 AC1AC_1 与棱 BB1BB_1 的距离是 1/2=0.70711/\sqrt{2} = 0.7071,这一段不与任何棱重合。单测拿「两条直线上各取一串点求最小距离」核对这两个值。

5 · 投影里的假交点

正交投影把两条不共面的直线压到同一张纸上,图上的交点可能只是投影的产物。这件事的常见程度被实测量了一遍:在方位角 0°359°359°、俯仰角 89°-89°89°89°1° 网格上(360×179=64440360 \times 179 = 64440 组视角),单位正方体的棱 ABAB 与棱 CC1CC_15.65%5.65\% 的视角让两条投影交叉;换成面对角线 AB1AB_1BC1BC_1,这个比例是 30.22%30.22\%

原以为这是少数刁钻视角才出的事,30%30\% 这个数字否掉了这个印象:近三分之一的视角都会给出一个假交点,而这一对恰是课本里最常出现的异面直线之一。图上的交叉与空间中的关系没有必然联系,所以本系列的每一处判定都走混合积,不走图。这两个比例写进了 core/view.test.ts,换机器可复现。

6 · 参考文献

  1. Skew lines. Wikipedia. 异面直线的定义、所成角与公垂线。https://en.wikipedia.org/wiki/Skew_lines
  2. Line–line distance. Wolfram MathWorld. 两条直线的距离与混合积公式。https://mathworld.wolfram.com/Line-LineDistance.html
  3. Solid geometry. Wikipedia. 立体几何的基本对象与关系。https://en.wikipedia.org/wiki/Solid_geometry
  4. Hilbert's axioms. Wikipedia. 结合公理的现代表述,与课本的四条基本事实对应。https://en.wikipedia.org/wiki/Hilbert%27s_axioms
  5. Triple product. Wikipedia. 混合积与共面判据。https://en.wikipedia.org/wiki/Triple_product
  6. Orthographic projection. Wikipedia. 正交投影及其保持的量。https://en.wikipedia.org/wiki/Orthographic_projection