地理信息系统基础算法(三)判断矩形是否包含点

来源:互联网 发布:手机知乎怎么修改答案 编辑:程序博客网 时间:2024/05/18 08:05
  1. 算法描述
    只要判断该点的横坐标和纵坐标是否夹在矩形的左右边和上下边之间。
  2. 代码实现
 /// <summary>       /// 判断P是否在以P1,P2为对角顶点的矩形内。       /// </summary>       /// <param name="p1"></param>       /// <param name="p2"></param>       /// <param name="p"></param>       /// <returns></returns>       public static bool  IsOnRectangle(Point p1, Point p2, Point p)       {           double max_x = p1.X > p2.X ? p1.X : p2.X;           double min_x = p1.X < p2.X ? p1.X : p2.X;           double max_y = p1.Y > p2.Y ? p1.Y : p2.Y;           double min_y = p1.Y < p2.Y ? p1.Y : p2.Y;           if (p.X >= min_x && p.X <= max_x && p.Y >= min_y && p.Y <= max_y)               return true;           else               return false;       }

参考资料:地理信息系统基础算法_张宏p25

0 0