Per*_*rcy 2 latitude-longitude point-in-polygon computational-geometry
假设我有数百个甚至数千个 GPS 坐标、纬度和经度,它们构成了一个国家/地区的边界。
我也有我目前的位置纬度和经度。
我如何确定(使用 C#,为 Windows10 UWP 编程)我的位置是否在某个国家/地区的边界内?
EG 假设我拥有构成下图中红线的所有点。如果我在 X 位置,我的函数将返回 true。如果我在 Y 位置,我的函数将返回 false。
定义一个肯定在外面或肯定在里面的点。
现在创建一条从您的位置到该已知点的线,并将其与圆周的每一段相交。计算交叉点的数量。如果是偶数,你就是你之前定义的点(内或外)如果是奇数,你是你定义的点的对立面
https://en.wikipedia.org/wiki/Point_in_polygon应该解释得更好!