1. 程式人生 > >判斷某一點在直線左右側的方法...

判斷某一點在直線左右側的方法...

注意向量是有方向的...判斷 某一點在直線左右側

左右方向是相對前進方向的,只要指定了前進方向就可以知道左右(比如指定前進方向是從直線的起點到終點).判斷點在直線的左側還是右側是計算幾何裡面的一個最基本演算法.使用向量來判斷.
定義:平面上的三點P1(x1,y1),P2(x2,y2),P3(x3,y3)組成三角形的面積是:


S(P1,P2,P3)=|y1 y2 y3|= [(x1-x3)*(y2-y3)-(y1-y3)*(x2-x3)]/2

當P1P2P3逆時針時S為正的,當P1P2P3順時針時S為負的。

令向量的起點為A,終點為B,判斷的點為C,
如果S(A,B,C)為正數,則C在向量AB的左側;
如果S(A,B,C)為負數,則C在向量AB的右側;
如果S(A,B,C)為0,則C在直線AB上。