2016-11-24 150 views
0

我有一条线和几个点,我需要确定哪些点位于下方,哪些位于线条之外。我试图找到一条与我的线成90度角的线,并穿过这些点,但我无法弄清矢量方向是向上还是向下。你能帮我吗?谢谢矢量的方向

+0

为什么不比较y坐标? –

+0

当y坐标为负值时,这是否意味着它将朝向下? –

+0

我的意思是忘记垂直。对于一个点(x,y),将x放入该线的方程中,找到线上点的y,并与点 –

回答

0

您可以在薄方程中找到线方程和替换点。

容易出现的情况:我们的线不垂直,所以它可能是由方程

y = a * x + b 

,每次查询点(PX,PY)计算值

S = py - a * px - b 

当S正面描述,点在线以上,负时 - 在下面。

如果您的线路由基B点和方向矢量d限定,可以判断 - 什么半平面(针对行)的查询的点P属于 - 使用叉积符号

Sign (D x (P-B)) 

注意在这种情况下,术语“以下”也取决于向量D的X分量的符号。