Leafee98's Blog

判断点是否在多边形内部

· 333 words · 1 minutes to read

  1. 引射线法(适用于凹多边形和凸多边形), 以点 p 为起点, 引任意一条射线, 若射线与多边形的边相交的次数为奇数, 则 p 点在多边形内部.
  2. 面积和判别法(适用于凸多边形), 以 p 作为三角形的一个顶点, 对于多边形的每一条边, 将边的两个点作为三角形的另外两个顶点, 计算三角形的面积, 若所有三角形的面积的和等于多边形的面积, 则点 p 在多边形内部.
  3. 夹角判别法(适用于凸多边形), 对于多边形的每一条边, 以 p 为顶点, 向边的两个点作射线, 射线形成小于 180 度的角并记录其度数, 若所有的度数的和为 360 度, 则点 p 在多边形内部.

对于引射线法, 为了便于计算一般引 y=y_0 的直线, 并判断该直线与多边形的边的交点位于 p 点右侧的个数, 若为奇数, 则 p 点在多边形内部.

注: 后两个方法是否适用于凹多边形本人尚不知晓, 欢迎告知

参考: https://www.cnblogs.com/luxiaoxun/p/3722358.html