在.NET中实现点与多边形(经度/纬度)的判断

3

可能是重复问题:
点在多边形内的检测

我需要帮助解决我的问题:我有一个由3个或更多经度/纬度点定义的多边形。现在我有另一个经度/纬度点,我需要检查这个点是否在多边形区域内。

我需要在.NET中实现此功能。 有人能帮我吗?

非常感谢您的帮助。

1个回答

3
这里有一个答案:http://alienryderflex.com/polygon/ 你也可以使用Microsoft的几何类。创建两个几何图形(一个点,一个多边形),然后进行它们的交集。如果有交集。 http://msdn.microsoft.com/en-us/library/system.windows.media.combinedgeometry.geometrycombinemode.aspx 如果这些方法花费太长时间,您可以首先将多边形包装在一个边界框中,并测试点是否在框的最小/最大纬度/经度内。
注意:如果您的多边形跨越国际日期线,则可能需要在测试之前添加其他代码(例如,如果经度为负,则将360度添加到多边形顶点和点的经度,以使算法正常工作)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接