我一直在寻找一种方法来检查一个点是否是多边形的一部分。此多边形是从文件加载的。
与这个问题相关的所有答案都可以通过javascript解决,但是我需要在服务器端执行此操作;这是因为不需要将结果作为Web客户端显示给用户,因此需要将其存储并在以后用作在该区域(多边形)中选择一组用户(使用系统)的参数。
我寻找了适用于PHP的Google Maps API,但看起来根本不存在。我找到了this one,但它与Google无关,而且专注于前端。
我还寻找了REST API;将内容加载到我的php并解析它相对容易,但是看起来Google付出了所有精力在JS API上。
有什么解决方法吗?
编辑1 :按照@Spacedman的要求,文件格式为KML
说明1 :我希望Google为此提供一个工具(与JS一起存在);解析文件以通过算法检查是一种可能性,我将不得不检查它是否正常运行。
最佳答案
您是否尝试过在自己喜欢的搜索引擎中搜索“多边形中的php点”?热门影片:
http://assemblysys.com/php-point-in-polygon-algorithm/
它使用扫描线算法,并且有一些示例。您需要做的就是将多边形文件读取为正确的格式(忽略了所使用的格式)并调用该函数。