点线位置关系

几何图元参考: 计算几何-几何图元
设有一个二维点 PP

点与线段

如果把线段 ABAB 看作一个有向线段,那么点 PP 与线段 ABAB 之间的位置关系有以下几种情况:

  1. 点 PP 在线段 ABAB 上
  2. 点 PP 在线段 ABAB 的延长线上
  3. 点 PP 在线段 ABAB 的左侧
  4. 点 PP 在线段 ABAB 的右侧

点与线段的四种位置关系

以上四种情况可以分成两类:

  1. 共线: 点 PP 在线段 ABAB 上或者在线段 ABAB 的延长线上
  2. 不共线: 点 PP 在线段 ABAB 的两侧

点和线段共线

通过点乘运算判断向量的夹角, 进而判断共线关系, 也可以通过叉乘计算有向面积, 判断共线关系.

  • 若 ∣AB→⋅AP→∣=∣AB→∣⋅∣AP→∣|\overrightarrow{AB} \cdot \overrightarrow{AP}| = |\overrightarrow{AB}| \cdot |\overrightarrow{AP}|, 则 PP 与线段 ABAB 共线
  • 若 AB→×AP→=0↔\overrightarrow{AB} \times \overrightarrow{AP} = 0 \leftrightarrow △ABP\triangle ABP 面积为零 ↔\leftrightarrow 则 PP 与线段 ABAB 共线

共线的情况下:

如果点 PP 在线段 ABAB 上, 显然 ∣AP→∣+∣BP→∣=∣AB→∣|\overrightarrow{AP}| + |\overrightarrow{BP}| = |\overrightarrow{AB}|

也可以通过点乘进行判断:

0≤AB→⋅AP→≤AB→⋅AB→0 \leq \overrightarrow{AB} \cdot \overrightarrow{AP} \leq \overrightarrow{AB} \cdot \overrightarrow{AB}

因为如果 PP 在 ABAB上, 那么 AP→\overrightarrow{AP} 的投影肯定在 AB→\overrightarrow{AB} 上, 且 0≤0 \le 投影长度 ≤∣AB→∣\le |\overrightarrow{AB}|.

不共线的情况下:

如果点 PP 在线段 ABAB 的两侧, 显然 △ABP≠0\triangle ABP \neq 0

点在线段两侧

AA, BB, P3P_3 三个顶点逆时针排列, 有向面积为正, AA, BB, P4P_4 三个顶点顺时针排列, 有向面积为负

AB→×AP→>0↔S△ABP>0↔P\overrightarrow{AB} \times \overrightarrow{AP} > 0 \leftrightarrow S_{\triangle ABP} > 0 \leftrightarrow P 在 ABAB 的左侧

AB→×AP→<0↔S△ABP<0↔P\overrightarrow{AB} \times \overrightarrow{AP} < 0 \leftrightarrow S_{\triangle ABP} < 0 \leftrightarrow P 在 ABAB 的右侧

点与直线

点与直线

由于直线是无限长的,所以点 PP 与直线 ABAB 之间的位置关系只有两种情况:

  1. 点 PP 在直线 ABAB 上
  2. 点 PP 不在直线 ABAB 上

直线方程为 ax+by+c=0ax + by + c = 0, 点 P(x0,y0)P(x_0, y_0), 则有:

ax0+by0+c=0↔ax_0 + by_0 + c = 0 \leftrightarrow 点 PP 在直线 ABAB 上
ax0+by0+c≠0↔ax_0 + by_0 + c \neq 0 \leftrightarrow 点 PP 不在直线 ABAB 上

点与射线

点与射线

射线是有向的,所以点 PP 与射线 ABAB 之间的位置关系有以下几种情况:

  1. 点 PP 在射线 ABAB 上
  2. 点 PP 在射线 ABAB 的反向延长线上
  3. 点 PP 在射线 ABAB 的左侧
  4. 点 PP 在射线 ABAB 的右侧

设射线 ABAB 的起点为 AA, 方向为 AB→\overrightarrow{AB}

当 AP→\overrightarrow{AP} 和 AB→\overrightarrow{AB} 共线时:

  • AP→⋅AB→>0↔\overrightarrow{AP} \cdot \overrightarrow{AB} > 0 \leftrightarrow 点 PP 在射线 ABAB 上
  • AP→⋅AB→<0↔\overrightarrow{AP} \cdot \overrightarrow{AB} < 0 \leftrightarrow 点 PP 在射线 ABAB 的反向延长线上

点与圆和圆弧

点与圆和圆弧

设圆心为 OO, 半径为 rr, 点 PP 与圆之间的位置关系有以下几种情况:

  1. 点 PP 在圆上: ∣OP→∣=r|\overrightarrow{OP}| = r
  2. 点 PP 在圆内: ∣OP→∣<r|\overrightarrow{OP}| < r
  3. 点 PP 在圆外: ∣OP→∣>r|\overrightarrow{OP}| > r

只考虑圆弧是圆的一部分, 圆弧的圆心为 OO, 半径为 rr, 起点为 AA, 终点为 BB, 点 PP 与圆弧之间的位置关系有以下几种情况:

  1. 点 PP 在圆弧上: ∠AOP+∠POB=∠AOBand∣OP→∣=r\angle AOP + \angle POB = \angle AOB and |\overrightarrow{OP}| = r
  2. 点 PP 不在圆弧上: ∠AOP+∠POB≠∠AOBor∣OP→∣≠r\angle AOP + \angle POB \neq \angle AOB or |\overrightarrow{OP}| \neq r