Navit学习笔记(二)

    技术2022-05-19  26

    上一篇《Navit学习笔记(一)》主要简要阐述了Navit的一些特征,怎样下载源代码、怎样在Unbuntu 10.04下进行安装的准备并进行默认安装。因为Navit是模块化设计的,根据安装平台的不同需求对其进行配置。本文的主要目的是讲述Navit的配置问题。

      Navit的设置是通过编辑navit.xml文件实现的。当登入Navit是,程序会加载navit.xml文件设置程序。如果是SVN获取的源代码navit.xml文件在主目录下,如果是安装程序,配置文件在/usr/shared/navit 或者 /etc/navit文件夹下。

      1、用户图形接口

      Navit通过插件形式提供多种用户图形接口。下面简要的介绍一下两种已经成功地嵌入于Navit的GUI。

      Internal GUI:它是当前最新的GUI主要是用于触摸屏设备的,这个GUI现在还在不同的开发完善中。由于本学习笔记针对Navit的核心模块和功能,对于触摸屏设置这部分还请大家参考《Internal GUI》,那里有这部分的具体实现新式和最新进展。

      GTK GUI:在本文中,我们将简要介绍GTK,更详细的介绍请查阅《Custom GTK Tutorial》 GTK是Navit默认的GUI,其一般设置如下:

    *  menubar = " 0 "  will disable the menu bar. Useful on devices with small screens *  toolbar = " 0 "  will disable the tool bar. Useful on devices with small screens *  statusbar = " 0 "  will disable the status bar. Useful on devices with small screens 

      2、一些可以更改的设置

      加载起始点(起始经纬值)

      GSP 模块可以为 Navit 提供当地的经纬度值,也就是说可以为Navit提供起始位置。但我们也可以手动设置,特别是没有GPS模块时。当地的经纬度信息可以从http://maps.google.com/上获取,也可以从http://itouchmap.com/latlong.html 获取,在navit.xml 文件中设置如下:

    < navit gui = " ... "  graphics = " ... "  center = " 3957 N 11618 E "  zoom = " 128 "   >

      注:设置中的经纬度的值是实际经纬度值 x 100,并取整。

      地图设置

      在使用Navit前,要在navit.xml 添加我们的地图。Navit 能够使用多种地图格式。以下是一些能在Navit上使用的地图格式设置向导链接,大家可以根据自己的关注点查看详细信息,本文将以Open Street Maps 地图格式为例阐述Navit的地图设置。

    * For a guide on using Open Street aps please go to the Open Street Maps Guide * For a guide on using European maps please go to the European Maps Guide * For a guide on using Garmin aps please go to the Garmin Maps Guide * For information regarding US / Tiger Data aps please go to Tiger Maps Guide * For other maps  not  included please refer to the Other Maps Guide 

      我们可以从“Navit Planet Extractor”上获取你想要的OSM地图(这里是北京市区的地图)。然后在navit.xml文件添加

    < map type = " binfile "  enabled = " yes "  data = " /path/to/beijing.bin "   />

      车辆导航

      这一节设置Navit的GPS数据源,Navit支持三种数据源获取方式:网络、文件和GPS设备。

    *  source = " file://mynmea.log "  : here, navit will replay the nmea logfile mynmea.log *  source = " file:/dev/ttyS0 "   -   / dev / ttyS0  for  serial GPS connected to the first serial port *  source = " file:/dev/rfcomm0 "   -  BlueTooth GPS,  / dev / rfcomm0 must be configured  in   / etc / bluetooth / rfcomm.conf *  source = " pipe:/usr/bin/gpspipe -r "   -  any executable that produces NMEA output  -  gpsbabel, gpspipe, ... 

      调试

      当Navit程序崩溃时,它能够自动的启动gdb进行调式。但需要对navit.xml进行设置。

    < debug name = " segv "  level = " 0 "   />

      如果想要得到更多的关于系统错误的信息

    < debug name = osd_core level = " 1 "   /> < debug name = osd_core:osd_nav_next_turn_draw level = " 1 "   />

      其中level的设置值如下:

         *  level = " 0 "  : just let navit crash     *  level = " 1 "  : let navit display a backtrace with gdb. This  is  the default setting.     *  level = " 2 "  : let navit enter an interactive gdb session 

    3、深入学习配置文件

    配置文件构造

    配置的文件的构造可以通过主目录下的navit.dtd文件查看。查看配置文件,最先出现的是<plugins>节,这一节的说明我们稍候阐述。接下来,我们可以看到Navit的初始化设置。 

     

     

    *gui 默认设置

    < navit [options] >

    *一辆或者多辆车辆的跟踪(GPS数据)

    < vehicle [options]  />

    *地图设置,使用一个或者多个地图数据

    < mapset > < map type = " mg "  enabled = " yes "  data = " /opt/reiseplaner/travel/DE.map "   /> < map type = " mg "  enabled = " yes "  data = " /opt/reiseplaner/travel/DE.map/smp2.smp "   /> </ mapset >

    *最后添加显示的层数。


    最新回复(0)