判断点是否在矩形内

如图判断点P PP是否在矩形P 1 P 2 P 3 P 4 P_{1}P_{2}P_{3}P_{4}P1P2P3P4内部?
在这里插入图片描述
从上图可以看出:
P {P}P 位于矩形内部 ⇔ \Leftrightarrow { ∡ P P 1 P 4 ≤ 90 ∡ P P 1 P 2 ≤ 90 ∡ P P 3 P 4 ≤ 90 ∡ P P 3 P 2 ≤ 90 \left\{\begin{aligned} \measuredangle PP_{1}P_{4}\leq90\\ \measuredangle PP_{1}P_{2}\leq90\\ \measuredangle PP_{3}P_{4}\leq90 \\ \measuredangle PP_{3}P_{2}\leq90 \end{aligned}\right.PP1P490PP1P290PP3P490PP3P290 ⇔ \Leftrightarrow { P 1 P ⃗ ⋅ P 1 P 4 ⃗ ≥ 0 P 1 P ⃗ ⋅ P 1 P 2 ⃗ ≥ 0 P 3 P ⃗ ⋅ P 3 P 4 ⃗ ≥ 0 P 3 P ⃗ ⋅ P 3 P 2 ⃗ ≥ 0 \left\{\begin{aligned} \vec{P_{1}P} \cdot \vec{P_{1}P_{4}} \geq 0\\ \vec{P_{1}P} \cdot \vec{P_{1}P_{2}} \geq 0\\ \vec{P_{3}P} \cdot \vec{P_{3}P_{4}} \geq 0\\ \vec{P_{3}P} \cdot \vec{P_{3}P_{2}} \geq 0\\ \end{aligned}\right.P1PP1P40P1PP1P20P3PP3P40P3PP3P20
所以,点P PP在矩形P 1 P 2 P 3 P 4 P_{1}P_{2}P_{3}P_{4}P1P2P3P4内部的条件为:

P 1 P ⃗ ⋅ P 1 P 4 ⃗ ≥ 0 \vec{P_{1}P} \cdot \vec{P_{1}P_{4}} \geq 0P1PP1P40
&&P 1 P ⃗ ⋅ P 1 P 2 ⃗ ≥ 0 \vec{P_{1}P} \cdot \vec{P_{1}P_{2}} \geq 0P1PP1P20&&P 3 P ⃗ ⋅ P 3 P 4 ⃗ ≥ 0 \vec{P_{3}P} \cdot \vec{P_{3}P_{4}} \geq 0P3PP3P40&&P 3 P ⃗ ⋅ P 3 P 2 ⃗ ≥ 0 \vec{P_{3}P} \cdot \vec{P_{3}P_{2}} \geq 0P3PP3P20


版权声明:本文为hhjhh76原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。