判断一个点是否在一条线的右侧或左侧
程序员文章站
2022-04-01 20:40:12
...
使用矢量(AB,AM)
的行列式,其中M(X,Y)
是查询点的符号:
position = sign((Bx - Ax) * (Y - Ay) - (By - Ay) * (X - Ax))
position是0
为在直线上,和+1
在一侧,-1
在另一侧。
注意:sign又叫sgn,意思是符号。符号函数(一般用sign(x)表示)是很有用的一类函数,能够帮助我们在几何画板中实现一些直接实现有困难的构造。 符号函数 能够把函数的符号析离出来 。在数学和计算机运算中,其功能是取某个数的符号(正或负): 当x>0,sign(x)=1;当x=0,sign(x)=0; 当x<0, sign(x)=-1; 在通信中,sign(t)表示这样一种信号: 当t≥0,sign(t)=1; 即从t=0时刻开始,信号的幅度均为1; 当t<0, sign(t)=-1;在t=0时刻之前,信号幅度均为-1
上一篇: 六.字符串操作,列表类型操作