【问题标题】:leaflet: How to find locations around marker?传单:如何找到标记周围的位置?
【发布时间】:2016-01-24 14:50:50
【问题描述】:

我使用传单地图 + 传单搜索插件 (http://labs.easyblog.it/maps/leaflet-search/examples/nominatim.html)。

所以,当我在地图上使用标记导航时,我想搜索标记周围的所有地方。例如,标记位于罗马(意大利),然后我想从罗马检索所有餐馆、夜总会 ....。

有可能吗??

    // click on marker
    map.on('click', function(e){  

            // update marker position
            marker.setLatLng( e.latlng);

            ....HERE CODE TO SEARCH PLACES....
 });

【问题讨论】:

  • 您从哪里获得所有位置?您自己的数据库?
  • @sbkashis,不,我使用nominatim.openstreetmap.org API
  • Nominatim API 允许您在边界框(一组四个坐标)内搜索某些事物,您需要计算这些或使用 Leaflet 的map.getBounds() (@987654323) 提供的用户浏览器 bbox @)。不确定您使用的插件有多强大。如果您想尝试 Overpass-API,请查看this example。它只获取树,因此请记住,结果可能很多
  • 感谢@chrki,帮助了树木。

标签: javascript php dictionary leaflet openstreetmap


【解决方案1】:

@Bogza 你需要用其他库来补充这个插件来实现它。 Nominatim 是按名称搜索位置。获得位置(纬度、液化天然气)后,剩下的工作由您决定。您需要有一个 geojson 或与餐厅的地理位置类似的文件。然后,您可以尝试使用以下任一库找到最近的库: https://github.com/makinacorpus/Leaflet.GeometryUtil) 使用 L.GeometryUtil.closestLayer。 https://github.com/mapbox/leaflet-knn

PS:我不得不回答,因为我无法发表评论。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-27
    • 1970-01-01
    • 2016-10-29
    • 1970-01-01
    • 2012-05-17
    • 1970-01-01
    相关资源
    最近更新 更多