f/通讯与导航 2011-03-02 08:33

制作保留POI信息的Lowrance地图 (附自制脚本)

不知道现在还有没有人用Lowrance(以下简称LC)的GPS,我最近刚买了一个二手的Lowrance iFinder expendition C的GPS。
买回来的GPS里面,老板已经给拷好09年的地图,但是总觉得里面的POI信息很少。Google一番后,Taobao上有个人出售多POI信息的Lowrance地图。既然有人做出来了,本着研究的精神,我也决定试试。
按照网上的教程(http://www.doyouhike.net/forum/comm_nav/336955,0,0,1.html)开始折腾地图。以Garmin 7.01版纠偏地图为基础,使用GPSMapedit制作了一遍,发现和商家给我的地图是一样的。而我在制作等高线地图时,发现可以使用GlobalMapper11打开MP文件,然后将矢量内容输出为LC地图。而且输出的地图在POI的显示上与GPSMapedit输出的地图不同,丰富了一些,包括了ATM、学校、汽车站等。但是GPSMapEdit中输出的POI信息反而丢失了。
根据这个结果,我觉得可能是GPSMapEdit在将Garmin地图转换为LC格式时将部分信息丢失了。在经历了漫长的测试后,将GARMIN地图(MP文件)中POI的类型与LC地图中POI做了比较,生成了一个对应的表。在比较中发现,GARMIN地图的POI信息比LC要丰富很多,所以,有部分poi无法一一对应。
这个是在模拟器里的显示效果

以下简要介绍一下地图的制作方法

需要工具:
1、GPSMapEdit
2、新版的lcmBuilderDll (http://www.geopainting.com/en/lcmbuilder.html)
3、Garmin地图(新的NT格式的GPSMapEdit无法打开,6.5和7.01可以)
4、安装Python(运行转换脚本用)
5、自制的转换脚本(附件:g2l.7z

地图制作步骤大体如下
1、使用GPSMapEdit打开GARMIN地图(img)文件,最好是纠偏、拼音版的,省事。将其存储为mp格式。如果已。经是MP格式的,略过这步
2、使用EditPlus或者类似的文本编辑工具,打开MP文件,找到 “Preprocess=F ” 在这个上边添加一行 “TypeSet=Lowrance”
3、将附件中的压缩包(里面有6个文件)解压MP文件所在目录。在命令行方式下进入mp文件的目录,输入 fileconv_g2l.py 原始文件名 新文件名。比如 fileconv_g2l.py beijing_py.mp beijing_py_lc.mp 。 然后回车,等一段时间,程序运行完会有提示。
4、将lcmBuilderDll拷贝到GPSMapEdit目录中。运行GPSMapEdit。打开转换好的mp文件(比如beijing_py_lc.mp ),之后输出lcm文件即可

已知的问题:
1、beijing_py.mp 需要是ansi格式的,可以使用EditPlus或者类似的文本编辑工具查看
2、过多的POI信息会使地图文件变得很大(我做的北京市的地图一共15.1M,有兴趣的可以下来看看beijing.7z),也可能造成输出LCM文件出错(我本来是要输出北京市的所有厕所的信息的,但是失败了)。而且地图太大,在读取的时候速度就比较慢,要注意
3、压缩包中的3个DAT文件分别是POI、POLYLINE和POLYGON在两种地图下代码的对照,觉得用不上或者定义错了可以修改

最后,无责任说个东西
我的Lowrance iFinder expendition C刷的是HuntC 1.2.0的固件,使用上好像没有什么问题,不知道是否iFinder间的固件是通用的?

已归档
点赞 0
4 评论
共 4 条评论
帖子已归档
Avatar
Dyson(丁丁) 2011-03-03 01:36

支持DIY,进来学习下

Avatar
firmit OP Dyson(丁丁) 2011-03-03 01:56

第一次发贴,谢谢丁丁大神!!

Avatar
zhiyu313 2011-03-24 04:51

支持楼主专研精神,有机会交流下

Avatar
TSWOWO 2011-03-26 08:46

我手里也还有个HUNT C 拿出来烟酒一下,谢谢分享。