Check out the latest version of Routino: svn co http://routino.org/svn/trunk routino
Contents of /trunk/doc/html/readme.html
Parent Directory
|
Revision Log
Revision 801 -
(show annotations)
(download)
(as text)
Sun Jun 26 14:15:37 2011 UTC (13 years, 8 months ago) by amb
File MIME type: text/html
File size: 9968 byte(s)
Sun Jun 26 14:15:37 2011 UTC (13 years, 8 months ago) by amb
File MIME type: text/html
File size: 9968 byte(s)
Update for version 2.0.2.
1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
2 | <HTML> |
3 | |
4 | <!-- |
5 | Routino documentation - algorithm |
6 | |
7 | Part of the Routino routing software. |
8 | |
9 | This file Copyright 2008-2011 Andrew M. Bishop |
10 | |
11 | This program is free software: you can redistribute it and/or modify |
12 | it under the terms of the GNU Affero General Public License as published by |
13 | the Free Software Foundation, either version 3 of the License, or |
14 | (at your option) any later version. |
15 | |
16 | This program is distributed in the hope that it will be useful, |
17 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
18 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
19 | GNU Affero General Public License for more details. |
20 | |
21 | You should have received a copy of the GNU Affero General Public License |
22 | along with this program. If not, see http://www.gnu.org/licenses/. |
23 | --> |
24 | |
25 | <HEAD> |
26 | <TITLE>Routino : Software</TITLE> |
27 | <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
28 | <LINK href="style.css" type="text/css" rel="stylesheet"> |
29 | </HEAD> |
30 | |
31 | <BODY> |
32 | |
33 | <!-- Header Start --> |
34 | |
35 | <div class="header" align="center"> |
36 | |
37 | <h1>Routino : Software</h1> |
38 | |
39 | <hr> |
40 | </div> |
41 | |
42 | <!-- Header End --> |
43 | |
44 | <!-- Content Start --> |
45 | |
46 | <div class="content"> |
47 | |
48 | <h2><a name="H_1_1" title="Introduction"></a>Routino Introduction</h2> |
49 | |
50 | Routino is an application for finding a route between two points using the |
51 | dataset of topographical information collected by |
52 | <a class="ext" title="OpenStreetMap" href="http://www.openstreetmap.org/">http://www.OpenStreetMap.org</a>. |
53 | |
54 | <p> |
55 | |
56 | Starting from the raw OpenStreetMap data (in the form of the '.osm' XML files |
57 | available on the internet) a custom database is generated that contains the |
58 | information useful for routing. With this database and two points specified by |
59 | latitude and longitude an optimum route (either shortest or quickest) is |
60 | determined. The route is calculated for OpenStreetMap highways (roads, paths |
61 | etc) using one of the common forms of transport defined in OpenStreetMap (foot, |
62 | bicycle, horse, motorcar, motorbike etc). |
63 | |
64 | <p> |
65 | |
66 | When processing the OpenStreetMap data the types of highways are recorded and |
67 | these set default limits on the types of traffic allowed. More specific |
68 | information about permissions for different types of transport are also recorded |
69 | as are maximum speed limits. Further restrictions like one-way streets, weight, |
70 | height, width and length limits are also included where specified. Additionally |
71 | a set of properties of each highway are also recorded. The processing of the |
72 | input file is controlled by a configuration file which determines the |
73 | information that is used. |
74 | |
75 | <p> |
76 | |
77 | When calculating a route the type of transport to be used is taken into account |
78 | to ensure that the known restrictions are followed. Each of the different |
79 | highway types can further be allowed or disallowed depending on preferences. |
80 | For each type of highway a default speed limit is defined (although the actual |
81 | speed used will be the lowest of the default and any specified in the original |
82 | data). To make use of the information about restrictions the weight, height, |
83 | width and length of the transport can also be specified. Further preferences |
84 | about road properties (e.g. paved or not) can also be selected. The simplest |
85 | type of turn restrictions (those formed from an initial way, a node and a second |
86 | way) are also obeyed. |
87 | |
88 | <p> |
89 | |
90 | The result of calculating the route can be presented in several different ways. |
91 | An HTML file can be produced that contains a description of the route to take |
92 | with instructions for each of the important junctions. The contents of the file |
93 | are created based on a set of translations specified in a configuration file. |
94 | The route is also available in a |
95 | <a class="ext" title="GPX format" href="http://www.topografix.com/gpx.asp">GPX (GPS eXchange) XML format</a>. |
96 | format file containing either every point and highway segment (a track file) or |
97 | just a waypoint and translated instructions for the important junctions (a route |
98 | file). |
99 | Additionally there are two plain text files that contain all data points or just |
100 | the important ones (intended for debugging and further processing). |
101 | |
102 | <p> |
103 | |
104 | One of the design aims of Routino was to make the software are flexible as |
105 | possible in selecting routing preferences but also have a sensible set of |
106 | default values. Another design aim was that finding the optimum route should be |
107 | very fast and most of the speed increases come from the carefully chosen and |
108 | optimised data format. |
109 | |
110 | |
111 | <h2><a name="H_1_2"></a>Disclaimer</h2> |
112 | |
113 | The route that is calculated by this software is only as good as the input data. |
114 | |
115 | <p> |
116 | |
117 | Routino comes with ABSOLUTELY NO WARRANTY for the software itself or the route |
118 | that is calculated by it. |
119 | |
120 | |
121 | <h2><a name="H_1_3"></a>Demonstration</h2> |
122 | |
123 | A live demonstration of the router for the UK is available on the internet: |
124 | <br> |
125 | <a title="Routino demo" href="http://www.routino.org/uk/">http://www.routino.org/uk/</a> |
126 | |
127 | <p> |
128 | |
129 | The source code download available below also includes a set of files that can |
130 | be used to create your own interactive map. |
131 | |
132 | <p> |
133 | |
134 | The interactive map is made possible by use of the OpenLayers Javascript |
135 | library from <a class="ext" href="http://www.openlayers.org" title="OpenLayers">http://www.openlayers.org/</a>. |
136 | |
137 | |
138 | <h2><a name="H_1_4"></a>Documentation</h2> |
139 | |
140 | A full set of |
141 | <a href="index.html" title="Documentation">documentation</a> |
142 | is available that describes how to install and use the programs as well as |
143 | what should go in the configuration files and how it works. |
144 | |
145 | |
146 | <h2><a name="H_1_5"></a>Status</h2> |
147 | |
148 | Version 1.0 of Routino was released on 8th April 2009. |
149 | <br> |
150 | Version 1.1 of Routino was released on 13th June 2009. |
151 | <br> |
152 | Version 1.2 of Routino was released on 21st October 2009. |
153 | <br> |
154 | Version 1.3 of Routino was released on 21st January 2010. |
155 | <br> |
156 | Version 1.4 of Routino was released on 31st May 2010. |
157 | <br> |
158 | Version 1.4.1 of Routino was released on 10th July 2010. |
159 | <br> |
160 | Version 1.5 of Routino was released on 30th October 2010. |
161 | <br> |
162 | Version 1.5.1 of Routino was released on 13th November 2010. |
163 | <br> |
164 | Version 2.0 of Routino was released on 30th May 2011. |
165 | <br> |
166 | Version 2.0.1 of Routino was released on 7th June 2011. |
167 | <br> |
168 | Version 2.0.2 of Routino was released on 26th June 2011. |
169 | |
170 | <p> |
171 | |
172 | The full version history is available in the NEWS file. |
173 | |
174 | |
175 | <h3><a name="H_1_5_1" title="Changes"></a>Changes in Version 2.0</h3> |
176 | |
177 | <dl> |
178 | <dt>Bug fixes: |
179 | <dd>Fix mis-spelling with surface=asphalt tag |
180 | <br>Routes between two waypoints on the same segment now work. |
181 | <br>Fix reading of numeric entities from XML files (store as UTF-8 internally). |
182 | <br>Fix turn description in HTML file (angles were biased to the right). |
183 | <br>Fix possibility of occasionally missing turn information from output files. |
184 | |
185 | <dt>Test cases: |
186 | <dd>Added test cases for routing in slim and non-slim modes. |
187 | |
188 | <dt>Documentation: |
189 | <dd>Update documentation to reflect changes in program usage and function. |
190 | <br>Install the license file in the documentation directory. |
191 | |
192 | <dt>OSM tagging |
193 | <dd>Process the tags associated with turn restriction relations. |
194 | <br>Remove the roundabout type from the parsing. |
195 | <br>Add parsing of mini-roundabouts. |
196 | |
197 | <dt>Configuration Files: |
198 | <dd>Update profiles with new options related to turn restrictions. |
199 | |
200 | <dt>Web pages: |
201 | <dd>Change to OpenLayers v2.10. |
202 | <br>Visualiser can display turn restrictions. |
203 | <br>Put the profile information into separate files and auto-generate them. |
204 | |
205 | <dt>planetsplitter: |
206 | <dd>Store information about turn restriction relations. |
207 | <br>Quite a large code re-organisation - now faster and uses less memory. |
208 | |
209 | <dt>router: |
210 | <dd>Take turn restriction relations into account when routing. |
211 | <br>Continue same direction of travel at each waypoint. |
212 | <br>Add a new option to specify an initial direction to start travel. |
213 | |
214 | <dt>filedumper: |
215 | <dd>Print out statistics about what highways are included in the database. |
216 | </dl> |
217 | |
218 | <h4><a name="H_1_5_1_1"></a>Changes in Version 2.0.1</h4> |
219 | |
220 | <dl> |
221 | <dt>Bug fixes: |
222 | <dd>Turn relations that specify missing nodes/ways are deleted (don't crash). |
223 | <br>Shorten the messages printed by planetsplitter to keep below 80 characters. |
224 | |
225 | <dt>Code improvements |
226 | <dd>Various code tidy-ups and 32/64 bit node and index improvements. |
227 | |
228 | <dt>OSM tagging |
229 | <dd>Check whether node/way/relation IDs fit in 32-bits (code ready for 64-bits). |
230 | </dl> |
231 | |
232 | <h4><a name="H_1_5_1_3"></a>Changes in Version 2.0.2</h4> |
233 | |
234 | <dl> |
235 | <dt>Bug fixes: |
236 | <dd>Fix error with handling ferry routes (were ignored). |
237 | <br>Force roundabouts to be one-way (was present in v1.5.1). |
238 | <br>Handle super-nodes with no segments when processing (don't crash). |
239 | |
240 | <dt>Code improvements |
241 | <dd>Use C99 standard by default and fix related warnings. |
242 | <br>More code tidy-up for 32/64 bit node and index types. |
243 | <br>Free some memory in various places (not serious leaks). |
244 | </dl> |
245 | |
246 | |
247 | <h3><a name="H_1_5_2"></a>License</h3> |
248 | |
249 | This program is free software: you can redistribute it and/or modify it under |
250 | the terms of the |
251 | <a class="ext" title="Affero GPLv3" href="http://www.fsf.org/licensing/licenses/agpl-3.0.html">GNU Affero General Public License</a> |
252 | as published by the Free Software Foundation; either version 3 of the License, |
253 | or (at your option) any later version. |
254 | |
255 | <p> |
256 | |
257 | It is important to note that for this program I have decided to use the |
258 | <em>Affero GPLv3</em> instead of just using the GPL. This license adds |
259 | additional requirements to anybody who provides a networked service using this |
260 | software. |
261 | |
262 | |
263 | <h3><a name="H_1_5_3"></a>Copyright</h3> |
264 | |
265 | Routino is copyright Andrew M. Bishop 2008-2011. |
266 | |
267 | |
268 | <h2><a name="H_1_6"></a>Download</h2> |
269 | |
270 | The <a title="Download directory" href="http://www.routino.org/download/">download directory</a> |
271 | contains the latest version of the source code. |
272 | |
273 | |
274 | </div> |
275 | |
276 | <!-- Content End --> |
277 | |
278 | <!-- Footer Start --> |
279 | |
280 | <div class="footer" align="center"> |
281 | <hr> |
282 | |
283 | <address> |
284 | © Andrew M. Bishop = <amb "at" gedanken.demon.co.uk> |
285 | </address> |
286 | |
287 | </div> |
288 | |
289 | <!-- Footer End --> |
290 | |
291 | </BODY> |
292 | |
293 | </HTML> |