我有一条线和几条点,我需要确定哪些点在哪些点以及哪些点在线以外。我试图找到一条与我的线成90度角的线并穿过点,但我无法弄清楚矢量方向是向上还是向下。你能帮我吗?谢谢
答案 0 :(得分:0)
你可以在细方程中找到线方程和替代点。
简单案例:让我们的行不是垂直的,因此可以用等式
来描述y = a * x + b
为每个查询点(px,py)计算值
S = py - a * px - b
当S为正时,点在线上方,当为负时 - 在下方。
如果您的线由基点B和方向向量D定义,您可以使用叉积符号确定 - 查询点P所属的半平面(相对于线) -
Sign (D x (P-B))
请注意,在这种情况下,术语"以下"还取决于向量D的X分量的符号