【问题标题】:OpenStreetMap API - find & visualize gravel roadsOpenStreetMap API - 查找和可视化砾石路
【发布时间】:2020-02-19 01:54:33
【问题描述】:

API 是否允许您检索给定类型的所有道路/小径(例如砾石/未铺砌)? 如果是这样,你能否指出一些很好的教程来解释它的用法,如果比它自己的文档更好?

我想制作一张地图,突出显示砾石/未铺砌的道路,或者在其自己的图层上显示。

提前致谢,请原谅一般性问题 - 我不希望得到深入的答案,只是我自己研究的入门 :)

【问题讨论】:

    标签: openstreetmap


    【解决方案1】:

    对 OpenStreetMap 数据运行只读查询的最流行 API 是 Overpass API。 Overpass 查询的结果可以很容易地显示在 Leaflet.js 等典型地图库(以及离线 GIS 和制图工具)中。当您测试您的 Overpass 查询时,我建议您使用方便的 "Overpass Turbo" 在线编辑器。

    要使用 OSM 数据,了解与当前主题相关的 OSM 标签(属性)也有很大帮助。 OSM wiki 记录了此类信息。对于您的用例,您可能对 highwaysurface 键感兴趣。

    作为您自己实验的起点,this Overpass query 会寻找已知具有砾石表面的高速公路(包括道路、轨道、小径等)。

    当然,还有其他方法 - 例如,您可以根据自定义地图样式渲染您自己的地图,其中道路看起来会根据其表面而有所不同。这将涉及非常不同的工具。但是在常规 OSM 地图前面显示 Overpass API 结果作为背景会让您走得很远,并且可能完全满足您的需求。

    【讨论】:

    • 这正是我想要的。感谢您对两位的详尽解释!
    【解决方案2】:

    首先,打开街道地图api,server public 有限制请求,建议你只安装server type reverse "name of place or road name to coordenates" or "coordenates to name of place or road name" 这个服务器是称为“nominatim”,都依赖于那个国家,你需要数据,因为有些国家的道路数据很多,将所有世界数据加载到服务器并显示为时已晚, 所以你只能安装一个国家,如果你愿意,这个服务器的响应是json类型,道路有一个坐标列表和描述,如果你需要在地图上显示这个,你需要render map的其他服务器, maplink 是制作它的主要工具。

    【讨论】:

      猜你喜欢
      • 2022-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多