【问题标题】:Is there a way to determine if a given point (lat, long) is inside a drawn polygon?有没有办法确定给定点(纬度,经度)是否在绘制的多边形内?
【发布时间】:2014-08-08 21:16:26
【问题描述】:

我有一个包含大约 5 个多边形地标的 KML 文件,我想知道是否有办法确定指定点是否在任何多边形内。 Google 地球是否有一个功能可以做到这一点,或者可以编写一个功能吗?

【问题讨论】:

    标签: javascript function kml google-earth point-in-polygon


    【解决方案1】:

    在多边形测试中使用光线投射方法。
    测试从测试点向无穷远(任意选择的方向,通常平行于用于代码简化和速度的轴之一)射出一条射线,并计算与相关多边形的交点。如果交叉点的数量是奇数,则该点位于多边形内,否则位于多边形外。对所有多边形重复此测试。
    查看此链接以获取进一步的解释以及退化和特殊情况。 pip wikipedia .
    我已经在 C 中实现了这个函数,所以如果您需要任何指针,请告诉我。
    您也可以使用绕组数测试。 WN wikipedia 根据实现和平台,它们可能具有相似的性能。
    您将找到的实现可能主要用于笛卡尔坐标。请记住,它们在地理坐标上也能正常工作。

    【讨论】:

      猜你喜欢
      • 2018-09-24
      • 1970-01-01
      • 1970-01-01
      • 2012-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多