4 Navit is a open source (GPL) car navigation software for Linux systems
5 based on the GTK+ toolkit. Navit will display your position on a
6 2D map, or as a 3D visualisation (planned) from GPS sensor data. Navit
7 is also capable of providing precise route calculation, touch screen
8 functionality and supports Points of Interest (POI).
10 Unlike other navigation systems, Navit maps are dynamically generated
11 in real time from vector data.
18 The best navigation system is useless without maps. Those three maps
21 http://www.amazon.de/exec/obidos/ASIN/3829731280
22 (Grosser Reiseplaner, detailed map of europe)
23 http://www.amazon.de/exec/obidos/ASIN/3934073697
24 (Telefonbuch Deutschland Map+Route,
25 detailed map of germany, coarse map of europe)
26 http://www.amazon.de/exec/obidos/ASIN/3934073719
27 (Gelbe Seiten Map+Route, detailed map of germany,
31 - Gelbe Seiten and Telefonbuch Deutschland
32 unzip karten.zip from the map cd where the map should go (about 1.2 GB)
33 export MAP_DATA=<path to where the map has been unzipped>/d7.map
36 Compile unshield from http://synce.sourceforge.net/synce/unshield.php
37 run "unshield x <path to your dvd>/travel/data2.cab" where the map
38 should go (about 4.3 GB)
39 export MAP_DATA=<path to where the map has been unshielded>/DIRMAP_MAP/DIE.map
40 move smp4.smp from DIE.map to a higher directory, since it currently
47 The library for Fibonacci heaps from
48 http://resnet.uoregon.edu/~gurney_j/jmpc/fib.html
49 The Fibonacci heaps are used in the routing algorithm.
52 The map layout functions.
53 As of now only the gtk_drawing_area is working.
54 We'll eventually move to cairo.
57 The user interface. So far there are a lot of files still in
61 Plugable modules. So far there is only one but we hope to
62 have more in the future.
64 Display POIs from www.geodownload.com
65 (depends on mdbtools.sf.net)
72 Manages the blocks of the map. Each block of the map is
73 seperated into two sub blocks of half the size.
76 Command line interface.
79 Displays the compass on the map.
82 Reads coordinates from the map.
85 Lists all available countries and provides funtions to access
86 the corresponding data.
89 Draws the vehicle possiton on the map.
92 Displays informations about visible objects.
95 The destination selection dialog.
98 Manages the display-list. The graphics driver is called from
99 here to display the map.
102 Management of map data files.
105 Generates the display-list.
108 Logs local changes to the map datas. its possible to modify
109 the map without changing the original map data. The modified
110 data are stored in log.txt and reread at program start.
116 Manages the differnt map sources. There's an overview map of
117 europe and a detailed map of each country.
120 Callback functions for the gui menu.
123 Generates directions to a destination ( not jet completed )
126 Utility functions for data_window and and popup menu
129 Assembles directions for the speech guide.
132 Loads available pugins.
135 Generate display-list for polygons. ( cities, lakes, ... )
141 A simple timer for performance analysis.
144 The routing algorithm. ( see below for a more detailed
148 Functions to search a place ( city, street, ... ) by name
154 Generates a display-list for streets
157 Reads street names from map datas.
160 Generates a display-list for city names.
164 Coordinate transformation. The map uses a Mercator projection.
167 Manages search trees.
170 Some utility functions for strings
173 Calculates the current vehicle possistion and direction.
174 Issues a cursor update if needed.
180 NavIt uses a dykstra algorithm for routing. The routing starts at the
181 destination by assigning a value to each point directly connected to
182 destination point. The value represents the estimated time needed to
185 Now the point with the lowest value is choosen using the Fibonacci
186 heap and a value is assigned to connected points whos are
187 unevaluated or whos current value ist greater than the new one.
189 The search is repeated until the origin is found.
191 Once the origin is reached, all that needs to be done is to follow the
192 points with the lowest values to the destination.
199 - use ciaro to draw the map
201 - get GPS data from gpsd
203 - complete speech output (speech.c, phrase.c)
205 - complete directions (navigation.c)
207 - investigate problem with fib-1.1