public bool OnLeft(PointF p) { var ab = new PointF(end.X - start.X, end.Y - start.Y); var ap = new PointF(p.X - start.X, p.Y - start.Y); return(ab.Cross(ap) >= 0); }
public bool OnLeft(PointF p) { var ab = new PointF(B.X - A.X, B.Y - A.Y); var ap = new PointF(p.X - A.X, p.Y - A.Y); return(ab.Cross(ap) >= 0); }
public bool OnLeft(PointF p) //совпадают ли знаки векторных произведений отдельных углов? (обходятся ли углы в одном направлении) { var ab = new PointF(B.X - A.X, B.Y - A.Y); var ap = new PointF(p.X - A.X, p.Y - A.Y); return(ab.Cross(ap) >= 0); }