我试图弄清楚如何通过道路 ID 获取 Open Street Map 的编辑地图页面。我知道,对于经纬度,我可以使用这个 URL: http ://www.openstreetmap.org/edit#map=17/48.01588/37.80285
但我不知道如何使用道路 ID。因为我不知道经纬度。我只知道 OSM 道路编号。
请帮忙。
我试图弄清楚如何通过道路 ID 获取 Open Street Map 的编辑地图页面。我知道,对于经纬度,我可以使用这个 URL: http ://www.openstreetmap.org/edit#map=17/48.01588/37.80285
但我不知道如何使用道路 ID。因为我不知道经纬度。我只知道 OSM 道路编号。
请帮忙。
这很简单。而不是坐标,只需传递带有 ID 作为值的方式参数。ID 为24633810的方式示例:
通过传递节点或关系参数,同样适用于节点和关系。
要转到 OpenStreetMap 并使用特定节点或方式打开用户的默认编辑器,请使用http://www.openstreetmap.org/edit?node=ID或http://www.openstreetmap.org/edit?way=ID .
如果用户登录,它将在用户的编辑器中打开对象。根据他们的设置,它可以是基于浏览器的编辑器,如 iD(默认)、Potlatch 2,或者可以使用 JOSM 的远程控制功能转到 JOSM。
您也可以使用 note=ID 或 gpx=ID 调用它以在特定注释上打开。
您可以使用 OSM API 获取 lat 和 lon。首先使用http://www.openstreetmap.org/api/0.6/way/ $wayid获取路径记录的 XML
然后选择其中一个节点的 id ( <nd ref="...">
),例如使用 XML 解析器,并将此 id 用于另一个 OSM API 调用:
http ://www.openstreetmap.org/api/0.6/node/ $nodeid
现在您有了一个带有节点元素的 XML 结果,您可以在其中解析 lon 和 lat 属性。