相关疑难解决方法(0)

检查点是否在多边形内

我想检查一个点是否位于特定的多边形内.多边形是:

 polygon=   [ [-73.89632720118, 40.8515320489962],
              [-73.8964878416508, 40.8512476593594],
              [-73.8968799791431, 40.851375925454],
              [-73.8967188588015, 40.851660158514],
              [-73.89632720118, 40.8515320489962] ]
Run Code Online (Sandbox Code Playgroud)

我要检查的要点是:

1 = [40.8515320489962,-73.89632720118]
2 = [40.8512476593594,-73.8964878416508]
3 = [40.851375925454,-73.8968799791431]
4 = [40.851660158514,-73.8967188588015]
5 = [40.8515320489962,-73.89632720118]
Run Code Online (Sandbox Code Playgroud)

如何判断每个点是否在此多边形内?

此算法无效.我不知道为什么.

pt[lat,long]

function isPointInPoly(poly, pt){
    for(var c = false, i = -1, l = poly.length, j = l - 1; ++i < l; j = i)
        ((poly[i][1] <= pt[1] && pt[1] < poly[j][1]) || (poly[j][1] <= pt[1] && pt[1] < poly[i].y))
        && (pt[0] < (poly[j][0] - poly[i][0]) * (pt[1] …
Run Code Online (Sandbox Code Playgroud)

javascript polygon

58
推荐指数
3
解决办法
5万
查看次数

使用Mapbox Direction API生成路径时避免使用坐标

我一直在使用Mapbox为我的应用程序生成路线和转弯导航,它运行良好.但是我想避免通过路线的某些坐标,但我无法弄明白.

获取路线的代码:

Directions.shared.calculate(options) { [unowned self] (waypoints, routes, error) in
        // Take first route and customize it in a way to get around some coordinates
    }
Run Code Online (Sandbox Code Playgroud)

这是一个场景:

1-用户位置是 latitude = 37.332331410000002, longitude = -122.0312186

2-用户将要Santa Clara Unified School找到latitude = 37.354100000000003,longitude = -121.9552

3- Api生成以下路径:

 [0] = {
latitude = 37.332329999999999
longitude = -122.03118000000001
}
  [1] = {
    latitude = 37.332619999999999
    longitude = -122.03118000000001
  }
  [2] = {
    latitude = 37.332609999999995
    longitude = -122.03097000000001
  }
  [3] = { …
Run Code Online (Sandbox Code Playgroud)

ios directions mapbox swift mapbox-gl

6
推荐指数
1
解决办法
909
查看次数

标签 统计

directions ×1

ios ×1

javascript ×1

mapbox ×1

mapbox-gl ×1

polygon ×1

swift ×1