数学 / 立体几何初步 · 从直观图到判定定理 / 垂直的判定与三垂线定理 待审核 5 / 5
线面与面面垂直

垂直的判定与三垂线定理

垂直的判定与平行的判定形状相同:用有限条已知换一个对无穷多条直线成立的结论。差别在于代价——线面平行只需面内一条平行线,线面垂直需要两条相交直线,而少了「相交」这个前提,结论从「垂直」跌到「与平面成某个角」。本页给出两组判定,量出反例偏离多少,并把三垂线定理放回它所属的那条恒等式里。

1 · 线面垂直的定义与判定

定义 1.1(直线与平面垂直) 若一条直线与一个平面内的任意一条直线都垂直,则这条直线与该平面垂直。这条直线叫做平面的垂线,交点叫做垂足。

定义要求验无穷多条直线,判定把它压到两条。

定理 1.2(线面垂直的判定) 若一条直线与平面内两条相交直线都垂直,则这条直线与该平面垂直。

判定成立的道理在方向上:与两个不共线的方向都垂直的向量方向唯一,那就是平面的法向。平面内任一方向都是这两个方向的线性组合,与两者垂直即与它们的任何组合垂直。

图 1-1 · 垂直的四个配置:线面垂直的判定、只垂直一条的反例、面面垂直的判定、三垂线定理。可调 θ 让平面内的直线绕定点转一圈,读数给出各个夹角。

2 · 前提失效时偏离多少

只垂直于面内一条直线,结论不成立,而「不成立」到什么程度可以量出来。取正方体的顶点 AA 为原点,考察过 AA 且方向为 AB+AA1\overrightarrow{AB} + \overrightarrow{AA_1} 的直线:它与 ADAD 垂直,与底面成 45°45°。让底面内过 AA 的直线绕 AA 转一圈,它与这条直线的夹角在 45°45°90°90° 之间连续扫过——实测 360360 个方向里最小偏离 0°(恰有一个方向仍是直角,那就是 ADAD),最大偏离 45°45°,而这个最大偏离恰等于该直线与底面所成的角。

这不是巧合:直线与平面所成的角定义为它与它在平面内的射影所成的角,而射影方向正是使夹角最小的那个方向。于是「与面内所有直线的夹角」这个集合的下界就是线面角,90°90° 是它的上界。线面垂直等价于这个集合退化成单点 {90°}\lbrace 90° \rbrace

3 · 三垂线定理

定理 3.1(三垂线定理) 平面内的一条直线,若与平面的一条斜线在该平面内的射影垂直,则它与这条斜线也垂直;反之亦然。

课本把它当独立定理记,实现里它却只是一条恒等式的特例。设 PAPA 垂直于平面 α\alphaAA,斜线 POPOα\alphaOOAOAOPOPOα\alpha 内的射影,llα\alpha 内过 OO 的直线,则三个角满足

cos(l,PO)=cos(l,AO)cos(PO,AO)\cos\angle(l, PO) = \cos\angle(l, AO) \cdot \cos\angle(PO, AO)

这是三面角的余弦公式。第三个因子与 ll 无关,故 cos(l,AO)\cos\angle(l, AO)cos(l,PO)\cos\angle(l, PO) 同时为零,两个直角同时出现。同一条恒等式还给出一个副产品:cos(PO,AO)1\cos\angle(PO, AO) \le 1 意味着 (l,AO)(l,PO)\angle(l, AO) \le \angle(l, PO),即 ll 与射影的夹角总不大于它与斜线的夹角。

PPAA 正上方 2.32.3O=(0.8,0.6,0)O = (0.8, 0.6, 0),此时 AO=1|AO| = 1,斜线与底面成 arctan2.3=66.50°\arctan 2.3 = 66.50°。以 θ\thetallABAB 的夹角:θ=0°\theta = 0° 时两个角是 36.87°36.87°71.40°71.40°θ=90°\theta = 90° 时是 53.13°53.13°76.16°76.16°θ=126.87°\theta = 126.87° 时同时到 90°90°。单测在 180180 个方向上逐个核对那条恒等式与「两个直角同时出现」,这也是本系列少数几处「课本的定理在实现里不是一段代码而是一条断言」的地方。

4 · 面面垂直的判定与性质

二面角是从一条直线出发的两个半平面组成的图形,它的大小由平面角度量:在棱上取一点,在两个半平面内各作一条垂直于棱的射线,两条射线的夹角即二面角。两个平面成直二面角时称它们垂直。

定理 4.1(面面垂直的判定) 若一个平面过另一个平面的一条垂线,则这两个平面垂直。

判定的强度值得留意:过一条垂线的平面有无穷多个,它们全都与原平面垂直。把这束平面按绕垂线的转角参数化,转一圈二面角始终是 90°90°

定理 4.2(面面垂直的性质) 若两个平面垂直,则一个平面内垂直于交线的直线与另一个平面垂直。

性质定理的常见误用是漏掉「垂直于交线」:面内任取一条直线并不与另一平面垂直。实现上还有一处口径要分清——两个平面的夹角与二面角不是同一个量。前者由法向量夹角锐角化而得,取值 [0°,90°][0°, 90°];后者可以是钝角。二面角为 120°120° 的一对半平面,它们所在平面的夹角只有 60°60°,两个数都对,答的是不同的问题。shared/geom3d.ts 因此分别提供 planeAngledihedral 两个函数,前者只看法向量,后者要求给出两个半平面内各一点。

5 · 参考文献

  1. Perpendicular. Wikipedia. 垂直的定义,含线面与面面垂直。https://en.wikipedia.org/wiki/Perpendicular
  2. Dihedral angle. Wikipedia. 二面角及其平面角。https://en.wikipedia.org/wiki/Dihedral_angle
  3. Dihedral Angle. Wolfram MathWorld. 二面角的向量算法。https://mathworld.wolfram.com/DihedralAngle.html
  4. Spherical law of cosines. Wikipedia. 三面角的余弦公式,三垂线定理的来源。https://en.wikipedia.org/wiki/Spherical_law_of_cosines
  5. Normal (geometry). Wikipedia. 法向量与垂直关系的代数刻画。https://en.wikipedia.org/wiki/Normal_(geometry)
  6. Trihedron. Wikipedia. 三面角的构成。https://en.wikipedia.org/wiki/Trihedron