我正在开发一个网站,我需要根据用户输入获取给定区域的所有边界。例如,用户想知道名为x的城市的边界。我应该如何从openstreetmap获取它?我听说过xapi和osmosis,但无法在任何地方找到任何示例。 谢谢!从openstreetmap获取城市边界
5
A
回答
2
我花了刺伤用JavaScript在这里做这样的: https://github.com/pgkelley4/city-boundaries-google-maps
基本上它归结为寻找relation是OpenStreetMap的商店在城市边界的。
我用类似下面的查询,以获得区域:
area[name="Seattle"]["is_in:state_code"="WA"];foreach(out;);
或者如果没有找到任何东西,经历的节点找到任何相关的领域:
node[name="New York"][is_in~"NY"];foreach(out;is_in;out;);
要获取关系ID,从上述查询返回的区域ID中减去3600000000。然后获取其ID的关系: http://overpass-api.de/query_form.html
也就是说如何让城市边界,处理它们则是另一回事如:
(relation(" + relationID + ");>;);out;
你可以在这里测试一下查询,雷也许可以改进在关系中没有任何事情。对于这个看到我的GitHub项目和: http://wiki.openstreetmap.org/wiki/Relation:multipolygon/Algorithm
另外我会注意到城市边界的OpenStreetMap数据是参差不齐的。从我所知道的大城市如达拉斯和洛杉矶,这是缺失的。
+0
看起来他们自2013年以来增加了洛杉矶。达拉斯仍然失踪,但Forth Worth和其他周边城市都在那里。 参见:http://www.openstreetmap.org/relation/207359 – 2015-03-12 19:29:11
相关问题
- 1. 谷歌地图获得城市界限,绘制城市多边形
- 2. 如何设置城市边界?
- 3. 使用OpenStreetMap提供城市名称API
- 4. 用openstreetmap api转换城市坐标
- 5. 如何从特定的城市获取附近的城市?
- 6. 从城市获取城市建议,该用户输入android
- 7. 如何检索显示城市或城市边界的静态地图
- 8. 从城市名称获取经纬度
- 9. 从城市获取状态PHP
- 10. 从经纬度获取城市名称
- 11. 获取变焦城市
- 12. JSON世界城市名单
- 13. 如何在python中获取城市(geonameid)的附近城市?
- 14. 如何创建包含城市边界的openlayers图层?
- 15. 地图城市边界数据到人口谷歌融合表
- 16. 如何获取城市列表?
- 17. 通过sparql获取城市信息
- 18. 使用Forecast API获取许多城市
- 19. 地图API获取城市和国家
- 20. 用俄语显示国家/城市的名称openstreetmap
- 21. 从N个城市列表中选择一个城市/城市的方式
- 22. 是否可以在Google地图中获取城市A和城市B之间的城市列表
- 23. API键入城市名称并获取可能的城市列表?
- 24. 通过道路获取直接连接城市的城市列表
- 25. 在给定城市的其他城市获得时间
- 26. 从分割图像获取边界
- 27. 从ggmap对象中获取边界框
- 28. 从3d阵列获取边界信息
- 29. 获得前20名在世界城市检查
- 30. 从FB到Asp.Net获取城市和关于我的信息
你甚至试过Google搜索吗? http://global.mapit.mysociety.org/ – 2013-03-27 13:02:14
https://help.openstreetmap.org/questions/8117/getting-city-border-from-osm-data – 2013-03-27 13:03:49
我只想得到所有的拉特城市在一个查询中。我认为nominatim有这种能力,但我不知道如何使用它。 – user2189557 2013-03-27 13:44:53