抽象问题:在地图上定义一些(非矩形,非圆形)拓扑封闭区域。找出查询该地图的方法,使其在边界内的经度/纬度时返回true。
应用问题:
假设我们正在处理报纸男孩的报道。为每个报纸男孩定义了一个覆盖区域,我查询每个住宅地址,找出谁服务的地址。
我正在寻找有关如何做到这一点的建议/提示/提示(现实世界,非常感谢有用的API和工具)。
因此,首先定义边界,然后允许地址查询特定边界内的成员资格。
答案 0 :(得分:2)
我们在工作中有一个地图软件,我们实现了这个确切的问题(显然在与纸质报道不同的领域)。我们找不到开箱即用的解决方案,因此我们实施了自己的解决方案。
我们通过将地理区域定义为点集(以纬度和经度给出)并在多边形方法中使用光线投射点来解决此问题。
http://en.wikipedia.org/wiki/Point_in_polygon
数学并不太复杂,但涉及到相当多的设置工作。
快速谷歌搜索提出了这个实施示例代码:
http://www.ecse.rpi.edu/Homepages/wrf/Research/Short_Notes/pnpoly.html#The%20C%20Code
祝你好运!如果需要,我很乐意澄清任何事情。