OpenStreetMap

作者: rainyforest | 来源:发表于2019-07-02 15:42 被阅读0次

Open Street Map (点击查看Wikipedia), 简称OSM,是一个开源的地图服务。很多地图比如苹果地图和百度地图在构建的时候用过OSM的数据,百度地图更是大量使用。顺带一提,Pokemon Go的地图服务似乎也是基于OSM的。

我们可以在本地set up一个OSM的服务器,实现自己编辑维护的地图服务。
结合OSRM (Open Source Routing Machine, 和OSM注意区分,是一个导航服务),可以实现基于OSM地图的简单导航。

搭建OSM服务器流程参考GitHub文档:
GitHub openstreetmap-website 主页

进入后找到INSTALL.md按照里面的教程补全dependencies,拉下代码,配置好需要的PostgreSQL数据库,走完install的流程,server就可以在3000端口运行了。
如果要改server配置,比如换端口,在openstreetmap-website/config/puma.rb里修改。

server能起了,就可以按页尾configuration steps 步骤:
创建用户(不需邮件验证,直接按流程修改数据库修改权)
-> 在localhost:3000登录账号

-> 在用户设置里注册application

-> 获得user key

-> 在openstreetmap-website/config/settings.local.yml (如果没有就从 settings.yml cp一个)里,将key添加给iD和portlach2,这样就能用在线的编辑器了。

->想办法取得地图的二进制.pbf文件,Osmconvert (点击查看Wiki) 这个工具可以转化.osm文件格式

导入数据库的语句,根据实际情况修改:

  osmosis --read-pbf greater-london-latest.osm.pbf \
  --write-apidb host="localhost" database="openstreetmap" \
  user="openstreetmap" password="" validateSchemaVersion="no"

导入实际数据后,一个可以维护使用的OSM map server就搭好了。


OSM界面 iD编辑器

### いろいろ

相关文章

网友评论

    本文标题:OpenStreetMap

    本文链接:https://www.haomeiwen.com/subject/tktthctx.html