語言:c#
需求:已知直線上的兩點,判斷第三個點與該直線的位置關系。
/// 判斷點和直線的位置關系
/// <param name="LineA">直線上的一點</param>
/// <param name="LineB">直線上的另一點</param>
/// <param name="PntM">需要判斷的點</param>
/// <returns></returns>
private int JudgePointToLine(Point LineA, Point LineB, Point PntM)
{
int nResult = 0;
double ax = LineB.X - LineA.X;
double ay = LineB.Y - LineA.Y;
double bx = PntM.X - LineA.X;
double by = PntM.Y - LineA.Y;
double judge = ax * by - ay * bx;
if (judge > 0) {
nResult = 1;
}else if (judge < 0){
nResult = -1;
}else {
nResult = 0;
}
return nResult;
}