English
登录
加入联盟
找回密码
航空人生
新一代连飞客户端下载
空管人生
中国航空运动协会推荐
WEFLY
模拟飞行玩家聊天工具
门户
文章
商城
原创商城
官方淘宝
二手市场
学院
云课堂
考试
资料下载
论坛
模拟飞行
低空飞行
太空探索
航圈
联机
航空人生(连飞)
飞行人生(虚航)
空管人生(虚管)
空战人生(对战)
工具
联飞地图
航路查询
航图查询
气象报文
资源
插件库
素材库
云网盘
企业
飞行者联盟
»
论坛
›
【飞行仿真实验室】
›
软件开发
›
OpenStreetMap
›
利用OpenStreetMap解决城市路网数据获取
返回列表
发新帖
查看:
1444
|
回复:
0
利用OpenStreetMap解决城市路网数据获取
[复制链接]
jason71241
jason71241
当前离线
UID
5024
注册时间
2014-4-19
在线时间
小时
最后登录
1970-1-1
精华
阅读权限
40
听众
收听
雷达卡
发表于 2023-7-29 06:43:18
|
显示全部楼层
|
阅读模式
OpenStreetMap社区是一个由地图制作爱好者组成的社区,这些爱好者提供并维护世界各地关于道路、小道、咖啡馆、铁路车站等各种各样的数据。
OpenStreetMap开源项目可以让程序开发更加灵活,图源更加丰富,例如可以使用谷歌地图,以解决国内无法使用谷歌服务的尴尬。国内户外导航软件,例如:行者、户外帮和小狼信标都使用了OpenStreetMap。
OpenStreetMap地图官网:
https://www.openstreetmap.org/
这篇博客主要是围绕如何在该网站上获取某个城市的路网信息,关于路网信息的解析遵循XML格式或JSON数据格式。
通过OpenStreetMap地图获取城市道路网数据其实很简单,主要分为两个步骤:一. 根据城市名获取对应ID 二. 据城市ID获取路网数据
下面将具体详细步骤:
根据城市名获取对应城市ID
进入 http://www.overpass-api.de/index.html
点击第二栏的Query -> Query and Convert Forms
在Overpass API Query Form下方的输入框中输入代码:
<osm-script>
<query type="relation">
<has-kv k="boundary" v="administrative"/>
<has-kv k="name:zh" v="北京市"/>
</query>
<print/></osm-script>
其中name:zh代表中文地址,否则使用name即可. 当然,如果你不喜欢输出格式为XML,也可以将<osm-script>修改为<osm-script output="json">,定义输出数据格式为JSON, 目前我们主流的程序交互偏向于使用JSON格式数据。
点击右侧的Query按钮,即可将结果从浏览器下载到本地,文件名为interprept, 用记事本打开该文件,找到<relation id="912940">, 即可拿到北京市的ID为912940
根据城市ID获取路网数据
上面的输入框中的代码替换为如下:
<osm-script timeout="1800" element-limit="100000000">
<union>
<area-query ref="3600912940"/>
<recurse type="node-relation" into="rels"/>
<recurse type="node-way"/>
<recurse type="way-relation"/>
</union>
<union>
<item/>
<recurse type="way-node"/>
</union>
<print mode="body"/>
</osm-script>
其中<area-query ref="3600912940"/>中3600912940是上一步骤中拿到的ID加上360000000后得到的数字。点击右侧的Query按钮,即可将结果从浏览器下载到本地,文件名为interprept,打开后即可得到路网数据。
关于JSO格式的下载解析与上述步骤相同, 只需在<osm-script>标签中, 加入output="json",属性, 即可导出JSON格式数据.
晚安, 祝你好梦!
未完待续
扫描二维码 关注我们
微信号 : 小G在路上
OpenStreetMap
,
数据获取
,
利用
,
解决
,
城市
相关帖子
•
获取OSM数据的3个方案【OpenStreetMap】
•
地理空间数据库OpenStreetMap走向成熟
•
Open Street Map历史
•
OSMnx,OpenStreetMap数据处理精英的Python库!
•
Open Street Map海地地震中发挥作用
•
OpenstreetMap二次分析数据集-2023年中国的1KM栅格道路长度-WGS84
•
WorldWind编译生成,解决乱码等问题
•
osmnx——Python OpenStreetMap库
•
OpenStreetMap中各类OSM数据多种下载渠道及方式对比
•
OSMnx-让OpenStreetMap数据分析变简单的超级英雄!
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
加入联盟
本版积分规则
发表回复
回帖后跳转到最后一页
快速回复
返回顶部
返回列表