【问题标题】:Restrict marker inside defined polygon in leaflet map限制传单地图中已定义多边形内的标记
【发布时间】:2020-03-03 20:27:26
【问题描述】:

我正在使用传单地图进行用户跟踪。我在地图上有一个用户标记和一个多边形。现在我希望该用户标记保留在定义的多边形内。如果用户离开多边形然后系统会提醒他这一点。 我怎样才能实现这个功能?请帮忙。

【问题讨论】:

    标签: angular typescript leaflet


    【解决方案1】:

    您可以使用来自 turf.js 的 booleanPointInPolygon https://turfjs.org/docs/#booleanPointInPolygon

    var poly = L.polygon([[49,10],[48,20]]).addTo(map);
    var marker = L.marker([48.5,15]).addTo(map);
    
    //Convert latlng to lnglat
    var inPoly = booleanPointInPolygon(marker.toGeoJSON().geometry.coordinates,poly.toGeoJSON().geometry.coordinates)
    
    console.log(inPoly);
    
    

    PS:未经测试,但应该可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-09-28
      • 1970-01-01
      • 2018-12-20
      • 2018-02-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多