diff options
author | horwitz <horwitz@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2005-12-04 10:31:41 +0000 |
---|---|---|
committer | horwitz <horwitz@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2005-12-04 10:31:41 +0000 |
commit | 8ab3cc1606ab3c416894ff4b5b886bd84e3c79eb (patch) | |
tree | 56c43992849ddf0b9ec6d1d1524971eaee5b6a44 /README | |
parent | 132a38489d5ea15f19bfa00190d16118b32ed4f3 (diff) | |
download | navit-svn-8ab3cc1606ab3c416894ff4b5b886bd84e3c79eb.tar.gz |
Add some documentatiion
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@14 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'README')
-rw-r--r-- | README | 199 |
1 files changed, 199 insertions, 0 deletions
@@ -0,0 +1,199 @@ +NavIT +===== + +Navit is a open source (GPL) car navigation software for Linux systems +based on the GTK+ toolkit. Navit will display your position on a +2D map, or as a 3D visualisation (planned) from GPS sensor data. Navit +is also capable of providing precise route calculation, touch screen +functionality and supports Points of Interest (POI). + +Unlike other navigation systems, Navit maps are dynamically generated +in real time from vector data. + + + +Maps: +===== + +The best navigation system is useless without maps. Those two maps +are known to work: + + http://www.amazon.de/exec/obidos/ASIN/3829731280 + (grosser Reiseplaner) + http://www.amazon.de/exec/obidos/ASIN/3934073697 + (Telefonbuch Deutschland Map+Route) + +Once you got one of those you need to let NavIt know about it by +setting the MAP_DATA environment variable to the directory of the +map files: + + export MAP_DATA=/home/navit/reiseplaner/travel/DE.map + + +Subdirectories: +=============== + +fib-1.0 + The library for Fibonacci heaps from + http://resnet.uoregon.edu/~gurney_j/jmpc/fib.html + The Fibonacci heaps are used in the routing algorithm. + +graphics + The map layout functions. + As of now only the gtk_drawing_area is working. + We'll eventually move to cairo. + +gui + The user interface. So far there are a lot of files still in + the main directory. + +plugins + Plugable modules. So far there is only one but we hope to + have more in the future. + - poi_geodownloads + Display POIs from www.geodownload.com + (depends on mdbtools.sf.net) + + +Files in src: +============= + +block.c: + Manages the blocks of the map. Each block of the map is + seperated into two sub blocks of half the size. + +command.c + Command line interface. + +compass.c + Displays the compass on the map. + +coord.c + Reads coordinates from the map. + +country.c + Lists all available countries and provides funtions to access + the corresponding data. + +cursor.c + Draws the vehicle possiton on the map. + +data_window.c + Displays informations about visible objects. + +destination.c + The destination selection dialog. + +display.c + Manages the display-list. The graphics driver is called from + here to display the map. + +file.c + Management of map data files. + +graphics.c + Generates the display-list. + +log.c + Logs local changes to the map datas. its possible to modify + the map without changing the original map data. The modified + data are stored in log.txt and reread at program start. + +main.c + Guess what? + +map_data.c + Manages the differnt map sources. There's an overview map of + europe and a detailed map of each country. + +menu.c + Callback functions for the gui menu. + +navigation.c + Generates directions to a destination ( not jet completed ) + +param.c + Utility functions for data_window and and popup menu + +phrase.c + Assembles directions for the speech guide. + +plugin.c + Loads available pugins. + +poly.c + Generate display-list for polygons. ( cities, lakes, ... ) + +popup.c + Popup-menu dialog + +profile.c + A simple timer for performance analysis. + +route.c + The routing algorithm. ( see below for a more detailed + description ) + +search.c + Functions to search a place ( city, street, ... ) by name + +speech.c + Interface to speechd + +street.c + Generates a display-list for streets + +street_name.c + Reads street names from map datas. + +town.c + Generates a display-list for city names. + +transform.c + + Coordinate transformation. The map uses a Mercator projection. + +tree.c + Manages search trees. + +util.c + Some utility functions for strings + +vehicle.c + Calculates the current vehicle possistion and direction. + Issues a cursor update if needed. + + +Routing algorithm +================= + +NavIt uses a dykstra 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 choosen 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. + + + +Plans: +====== + +- use ciaro to draw the map + +- get GPS data from gpsd + +- complete speech output (speech.c, phrase.c) + +- complete directions (navigation.c) + +- investigate problem with fib-1.1 + + |