C C++ Java Perl CMake Shell Other
Clone or download
Permalink
Failed to load latest commit information.
.circleci Revert Fix because the docker image was fixed Aug 14, 2018
.github Add:github: Add a template for github issues (#446) Apr 20, 2018
Toolchain Upgrade to CircleCI v2 (#310) Sep 5, 2017
cmake cleanup:cmake:remove trailing spaces May 26, 2018
contrib cleanup:scripts:Use $(..) instead of legacy `..` to make codefactor h… Jun 5, 2018
gradle Fix Android apk VersionCode (#633) Aug 12, 2018
man cleanup:cmake:retab all CMakeLists.txt files May 26, 2018
navit Fix Android apk VersionCode (#633) Aug 12, 2018
po cleanup:cmake:retab all CMakeLists.txt files May 26, 2018
scripts Fix:scripts:WinCE build script (remove sample map, add espeak-data) (#… Jul 15, 2018
.gitchangelog.rc Update:changelog:Update CHANGELOG.md and add configurations for gitch… Apr 20, 2018
.gitchangelog.tpl Update:changelog:Update CHANGELOG.md and add configurations for gitch… Apr 20, 2018
.gitignore Add:build:Ignore gradle artifacts Jul 20, 2018
.mailmap Update:CI:Use mailmap to cleanup the authors list Apr 24, 2018
AUTHORS Update:CI:Use mailmap to cleanup the authors list Apr 24, 2018
CHANGELOG.md Update:changelog:Update changelog after release 0.5.1 Apr 20, 2018
CMakeLists.txt Fix:build:Disable map/garmin on Android Jul 25, 2018
CONTRIBUTING.md Add:github: Add a contributing.md that references our wiki (#447) Apr 20, 2018
COPYING Refactor:core:Remove unused files compass.c/.h Aug 31, 2014
COPYRIGHT Updated COPYRIGHT for 2016 Dec 31, 2015
GPL-2 Add license files and headers Jun 5, 2008
LGPL-2 cleanup:cmake:remove trailing spaces May 26, 2018
README.md add:doc:add codefactor.io (#599) Jun 3, 2018
build.gradle Add:Android:checkstyle-javadoc (#595) May 25, 2018
checkstyle.xml change:ci:Move checkstyle.xml to be used by Codefactor.io (#608) Jun 3, 2018
config.h.cmake Update config.h.cmake Feb 9, 2018
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
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 read the current vehicle position:

  • directly from a file
  • from gpsd (local or remote)
  • from udp server (friends tracking) (experimental)

Routing algorithm

NavIt uses a Dijkstra algorithm for routing. The routing starts at the destination by assigning a value to each point directly connected to destination point. The value represents the estimated time needed to pass this distance.

Now the point with the lowest value is chosen using the Fibonacci heap and a value is assigned to connected points whos are unevaluated or whos current value ist 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.