版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhu7478848/article/details/79305537
public static bool IsInRectangle(Point point, Point[] rect)
{
var pa = point - rect[0];
var pb = point - rect[1];
var pc = point - rect[2];
var pd = point - rect[3];
var ab = Math.Sign(Vector.CrossProduct(pa, pb));
var bc = Math.Sign(Vector.CrossProduct(pb, pc));
var cd = Math.Sign(Vector.CrossProduct(pc, pd));
var da = Math.Sign(Vector.CrossProduct(pd, pa));
return (ab == da &&bc ==cd && cd == da);
}
return rect2.Any(item => IsInRectangle(item , rect));