您的位置:首页 > 运维架构

初步学习OpenStreetMap

2016-01-08 10:16 281 查看
经历了为期半年的考研,刚刚开通的博客也荒废了半年,如今终于又有时间学习android编程了,写写博客,就当是对自己学习进度的一种记录。

最近在弄毕业设计,老师要求开发一个导航软件,本来想着调用一下百度地图或者高德地图的API就行了。但是老师要求能在原有的地图基础上编辑自己的道路,找来找去,好像只有OMS能做到这个功能。苦于现在国内这方面的资料比较少,这几天也浏览了不少大神的博客,终于对OMS的架构有了一个初步的了解。

想进一步了解的可以去https://en.wikipedia.org/wiki/OpenStreetMap

在网上找到一个叫做OSMand的app,是基于OMS开发的一款导航应用http://osmand.net/,这款应用相信对于喜欢到国外旅游的朋友都不会陌生,但是其国内的数据就没有国外那么全了。

我的设想是把自己编辑的地图整合到这个APP里边,发现了一个叫做JOSM的软件:http://josm.openstreetmap.de/wiki/Download



可以在OSM地图上截取出一块进行点、线和块的添加和删除,如图中间那个十字形的小道就是我自己加上去的。地图编辑完毕后,点击上传数据,等个几分钟,我们可爱的OSM就会通过你的修改,这样这条路就存在于地图上啦。

接着你可以保存所修改的地图,但是保存的地图格式是.osm的,而OSMand这个APP用的地图格式是.obf ,这个地方我纠结了很久。

这里要谢谢我的一位亲爱的学长,在他的指导下终于找到了解决办法。我们进入http://osmand.net/features,将网页拉到最下方,有一个

OSMand Map Creator选项,点击之后可以下载OSMand Map Creator



点击File里第一个就能加载刚刚保存的.osm文件并转成.obf格式了。

到了这一步就快大功告成了,接下来只要把这个地图拷贝到SD卡中OSMand文件夹根目录就行了,试了一下导航功能也是可以用的。

PS:在学校正中间的草坪上弄一条路一直是我的梦想哈~

问题:

1、这个APP的定位不是特别准,而且在我的宿舍里卫星时有时无;

2、导航路径算法有问题,明明有一条很近的路确偏偏要从远了跑;

3、提示音是英文的;

4、有很多功能是我暂时用不到的

综上,我觉得还是在这个APP的基础上自己开发一个精简版的导航软件,而且这个APP是开源的。但是现在问题是它太庞大了,看了两天源码也没有理出什么头绪,在这里也希望有经验的大神能够提供一些帮助~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android oms 导航 地图