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 two maps
21 http://www.amazon.de/exec/obidos/ASIN/3829731280
23 http://www.amazon.de/exec/obidos/ASIN/3934073697
24 (Telefonbuch Deutschland Map+Route)
26 Once you got one of those you need to let NavIt know about it by
27 setting the MAP_DATA environment variable to the directory of the
30 export MAP_DATA=/home/navit/reiseplaner/travel/DE.map
37 The library for Fibonacci heaps from
38 http://resnet.uoregon.edu/~gurney_j/jmpc/fib.html
39 The Fibonacci heaps are used in the routing algorithm.
42 The map layout functions.
43 As of now only the gtk_drawing_area is working.
44 We'll eventually move to cairo.
47 The user interface. So far there are a lot of files still in
51 Plugable modules. So far there is only one but we hope to
52 have more in the future.
54 Display POIs from www.geodownload.com
55 (depends on mdbtools.sf.net)
62 Manages the blocks of the map. Each block of the map is
63 seperated into two sub blocks of half the size.
66 Command line interface.
69 Displays the compass on the map.
72 Reads coordinates from the map.
75 Lists all available countries and provides funtions to access
76 the corresponding data.
79 Draws the vehicle possiton on the map.
82 Displays informations about visible objects.
85 The destination selection dialog.
88 Manages the display-list. The graphics driver is called from
89 here to display the map.
92 Management of map data files.
95 Generates the display-list.
98 Logs local changes to the map datas. its possible to modify
99 the map without changing the original map data. The modified
100 data are stored in log.txt and reread at program start.
106 Manages the differnt map sources. There's an overview map of
107 europe and a detailed map of each country.
110 Callback functions for the gui menu.
113 Generates directions to a destination ( not jet completed )
116 Utility functions for data_window and and popup menu
119 Assembles directions for the speech guide.
122 Loads available pugins.
125 Generate display-list for polygons. ( cities, lakes, ... )
131 A simple timer for performance analysis.
134 The routing algorithm. ( see below for a more detailed
138 Functions to search a place ( city, street, ... ) by name
144 Generates a display-list for streets
147 Reads street names from map datas.
150 Generates a display-list for city names.
154 Coordinate transformation. The map uses a Mercator projection.
157 Manages search trees.
160 Some utility functions for strings
163 Calculates the current vehicle possistion and direction.
164 Issues a cursor update if needed.
170 NavIt uses a dykstra algorithm for routing. The routing starts at the
171 destination by assigning a value to each point directly connected to
172 destination point. The value represents the estimated time needed to
175 Now the point with the lowest value is choosen using the Fibonacci
176 heap and a value is assigned to connected points whos are
177 unevaluated or whos current value ist greater than the new one.
179 The search is repeated until the origin is found.
181 Once the origin is reached, all that needs to be done is to follow the
182 points with the lowest values to the destination.
189 - use ciaro to draw the map
191 - get GPS data from gpsd
193 - complete speech output (speech.c, phrase.c)
195 - complete directions (navigation.c)
197 - investigate problem with fib-1.1