我的问题是,http://pietschsoft.com/post/2008/07/Virtual-Earth-Polygon-Search-Is-Point-Within-Polygon.aspx中给出的代码是否能在以下文件(第7-9页)中提到的一个方面找到一个点:http://www.weather.gov/directives/sym/pd01008006curr.pdf looking forward,
发布于 2009-06-09 14:23:45
多边形中的点算法通常只是通过在任何特定方向上“画”出一条线来计算它越过一条线的次数。然后,它会通过知道它穿过这条线的次数(偶数在多边形外,奇数在多边形内)来知道它是否在多边形中。该站点上的代码看起来只是翻转布尔值,而不是添加到计数器,但这是相同的事情。
我必须承认我还没有读过你链接的PDF (太长了!)但我还没有遇到过算法失败的情况。
一个技巧可能是先围绕多边形的最外部极端绘制一个粗略的正方形,然后检查它是否在这个范围内,以避免必须测试每个点)。
发布于 2015-04-02 00:55:58
我相信在某些情况下它会失败。您链接到的算法对于平面几何图形是正确的,但对于球形几何图形是不正确的。考虑跨越180子午线的矩形,例如标记为"M“的矩形。该算法将该矩形视为覆盖美洲、非洲和欧洲,但不包括亚洲或太平洋。
https://stackoverflow.com/questions/970278
复制相似问题