Skip to content
The open source (GPL v2) turn-by-turn navigation software for many OS
C C++ Java Perl Shell CMake Other
Branch: trunk
Clone or download
aerostitch fix:plugins: too few arguments to functions navit_attr_iter_new and c…
…onfig_attr_iter_new (#966)

* fix:plugins: too few arguments to function navit_attr_iter_new

* fix:plugins: too few arguments to function config_attr_iter_new
Latest commit b24b3ed Jan 20, 2020
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Use debian:latest in the CI to get more up-to-date tools (#971) Jan 20, 2020
.github Add:doc:Migrate the commit guidelines document to readthedocs (#841) Aug 23, 2019
Toolchain Refactoring:cmake:from 2.6 to 3.2 May 25, 2019
cmake Refactoring:cmake:from 2.6 to 3.2 May 25, 2019
contrib Bump version to 0.5.4 (#961) Jan 18, 2020
docs fix:ci:Fix checkstyle changes since 8.24 (#946) Nov 26, 2019
gradle Android build fix and update (#827) Aug 16, 2019
man cleanup:cmake:retab all CMakeLists.txt files May 26, 2018
navit fix:plugins: too few arguments to functions navit_attr_iter_new and c… Jan 20, 2020
po Update:i18n:Updated Swedish translation from launchpad (#912) Nov 5, 2019
scripts change:build_android:Remove dependency of ant. Not needed anymore (#956) Jan 18, 2020
.gitchangelog.rc update:release:Add more keywords for gitchangelog Aug 31, 2018
.gitchangelog.tpl Update:changelog:Update CHANGELOG.md and add configurations for gitch… Apr 20, 2018
.gitignore Move checkstyle into the sanity_check phase and use a pre-baked image… Nov 2, 2019
.mailmap Update:CI:Use mailmap to cleanup the authors list Apr 24, 2018
.travis.yml Refactoring:Xmlconfig:Moving layout definition in their own .xml file… Nov 18, 2018
AUTHORS Prepare changelog for release 0.5.4 (#960) Jan 18, 2020
CHANGELOG.md Prepare changelog for release 0.5.4 (#960) Jan 18, 2020
CMakeLists.txt Bump version to 0.5.4 (#961) Jan 18, 2020
CONTRIBUTING.md update:doc:Add section about contributing to the documentation and fi… Oct 28, 2019
COPYING Fixed typos Jun 5, 2019
COPYRIGHT Updated COPYRIGHT for 2016 Dec 31, 2015
GPL-2 Add license files and headers Jun 5, 2008
LGPL-2 cleanup:global:Reformat with astyle and remove trailing spaces May 26, 2018
README.md fix:correct link in Markdown Jan 11, 2019
build.gradle Fix:android:64 bit and cleanup2 (#877) Sep 26, 2019
checkstyle.xml fix:ci:Fix checkstyle changes since 8.24 (#946) Nov 26, 2019
config.h.in Fix:android:64 bit and cleanup2 (#877) Sep 26, 2019
cpack.cmake Fix:core:Set CPACK_INCLUDE_TOPLEVEL_DIRECTORY only for zip cpack gene… Nov 9, 2014
gradlew Add:build:Make gradlew executable Jul 20, 2018
gradlew.bat rework:android:Move build system from ant to grandle (#553) May 2, 2018
logo_catalog.svg Update:Android:Navit logo. Closes #909 (#943( Nov 6, 2019
settings.gradle rework:android:Move build system from ant to grandle (#553) May 2, 2018

README.md

Build Status CodeFactor

Navit on Android tablet:

navit on android

Navit on Linux based Carputer:

navit-nuc-osd

Navit

Navit is a open source (GPL) car navigation system with routing engine.

It's modular design is capable of using vector maps of various formats for routing and rendering of the displayed map. It's even possible to use multiple maps at a time.

The GTK+ or SDL user interfaces are designed to work well with touch screen displays. Points of Interest of various formats are displayed on the map.

The current vehicle position is either read from gpsd or directly from NMEA GPS sensors.

The routing engine not only calculates an optimal route to your destination, but also generates directions and even speaks to you.

Navit currently speaks over 70 languages!

You can help translating via our web based translation page: http://translations.launchpad.net/navit/trunk/+pots/navit

For help or more information, please refer to the wiki: http://wiki.navit-project.org

If you don't know where to start, we recommend you to read the Interactive Help : http://wiki.navit-project.org/index.php/Interactive_help

Maps

The best navigation system is useless without maps. Those three maps are known to work:

GPS Support

Navit reads the current vehicle position:

  • directly from a file or port
  • from gpsd (local or remote)
  • from the location service of several mobile platforms
  • from udp server (friends tracking) (experimental)

Routing algorithm

Navit uses LPA* (see Lifelong_Planning_A*), a derivative of the Dijkstra algorithm, for routing. Routing starts at the destination by assigning a value to each point directly connected to the destination point. The value represents the estimated time needed to reach the destination from that point.

Now the point with the lowest value is chosen using the Fibonacci heap, and a value is assigned to connected points which are unevaluated or whose current value is greater than the new one.

The search is repeated until the origin is found.

Once the origin is reached, all that needs to be done is to follow the points with the lowest values to the destination.

LPA* is slightly more complex, as it allows partial re-evaluation of the route graph as segment costs change. This is used by the (still experimental) traffic module, which can process traffic reports and tries to find a way around traffic problems. Refer to the Wikipedia page for a full description.

You can’t perform that action at this time.