利用Open Street Map生成地图文件

        OpenStreetMap(简称OSM,中文是公开地图)是一个网上地图协作计划,目标是创造一个内容自由且能让所有人编辑的世界地图。

        OpenStreetMap地图网址:http://www.openstreetmap.org/

操作步骤:

1、下载一个城市的地图是很多仿真中常见的一个情况;我们需要首先获得想要得到城市地图的id号,之后用该id号去下载该城市地图。

2、通过 访问 OSM Overpass API query page(http://www.overpass-api.de/query_form.html),在打开的query框中输入以下所示代码(在代码name处改城市名称)。

<query type="relation">
<has-kv k="boundary" v = "administrative"/>
<has-kv k="name" v = "北京市"/>
</query>
<print mode="body"/>
3、之后,点击右下角的query,弹出下载提醒,单击保存;下载完成后,以记事本方式打开该文件。
4、找出城市ID:

<relation id="912940">

5、由以上步骤得到北京市的城市id号为912940;但从技术上来讲,这仅是该城市的边界,如果想得到城市的地图,我们需要在该id号基础上加3,600,000,000,得到id最终结果为3600912940。

6、继续访问步骤二中的API query page,在打开的query框中输入以下代码:

<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="获得的城市ID"/>

7、点击右下角的query,弹出下载提醒,单击保存;下载完成后,以记事本方式打开该文件(此文件即Hollywood的城市地图数据),导入到仿真软件中使用即可。提示:下载的文件数据会有点大。北京为例,大概为100M。



评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值