Routino SVN Repository Browser

Check out the latest version of Routino: svn co http://routino.org/svn/trunk routino

ViewVC logotype

Contents of /trunk/doc/html/readme.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2025 - (show annotations) (download) (as text)
Wed Sep 18 17:30:51 2019 UTC (5 years, 6 months ago) by amb
File MIME type: text/html
File size: 12733 byte(s)
Update for version 3.3.2 release.

1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2 <html>
3
4 <head>
5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
6 <meta name="viewport" content="width=device-width, initial-scale=1">
7
8 <title>Routino : Software</title>
9
10 <!--
11 Routino documentation - readme
12
13 Part of the Routino routing software.
14
15 This file Copyright 2008-2017, 2019 Andrew M. Bishop
16
17 This program is free software: you can redistribute it and/or modify
18 it under the terms of the GNU Affero General Public License as published by
19 the Free Software Foundation, either version 3 of the License, or
20 (at your option) any later version.
21
22 This program is distributed in the hope that it will be useful,
23 but WITHOUT ANY WARRANTY; without even the implied warranty of
24 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 GNU Affero General Public License for more details.
26
27 You should have received a copy of the GNU Affero General Public License
28 along with this program. If not, see http://www.gnu.org/licenses/.
29 -->
30
31 <link href="style.css" type="text/css" rel="stylesheet">
32 </head>
33
34 <body>
35
36 <!-- Header Start -->
37
38 <div class="header">
39
40 <h1>Routino : Software</h1>
41
42 </div>
43
44 <!-- Header End -->
45
46 <!-- Content Start -->
47
48 <div class="content">
49
50 <h2 id="H_1_1" title="Introduction">Routino Introduction</h2>
51
52 Routino is an application for finding a route between two points using the
53 dataset of topographical information collected by
54 <a class="ext" title="OpenStreetMap" href="http://www.openstreetmap.org/">http://www.OpenStreetMap.org</a>.
55
56 <p>
57
58 Starting from the raw OpenStreetMap data (in the form of the '.osm' XML files
59 available on the internet) a custom database is generated that contains the
60 information useful for routing. With this database and two points specified by
61 latitude and longitude an optimum route (either shortest or quickest) is
62 determined. The route is calculated for OpenStreetMap highways (roads, paths
63 etc) using one of the common forms of transport defined in OpenStreetMap (foot,
64 bicycle, horse, motorcar, motorcycle etc).
65
66 <p>
67
68 When processing the OpenStreetMap data the types of highways are recorded and
69 these set default limits on the types of traffic allowed. More specific
70 information about permissions for different types of transport are also recorded
71 as are maximum speed limits. Further restrictions like one-way streets, weight,
72 height, width and length limits are also included where specified. Additionally
73 a set of properties of each highway are also recorded. The processing of the
74 input file is controlled by a configuration file which determines the
75 information that is used.
76
77 <p>
78
79 When calculating a route the type of transport to be used is taken into account
80 to ensure that the known restrictions are followed. Each of the different
81 highway types can further be allowed or disallowed depending on preferences.
82 For each type of highway a default speed limit is defined (although the actual
83 speed used will be the lowest of the default and any specified in the original
84 data). To make use of the information about restrictions the weight, height,
85 width and length of the transport can also be specified. Further preferences
86 about road properties (e.g. paved or not) can also be selected. The simplest
87 type of turn restrictions (those formed from an initial way, a node and a second
88 way) are also obeyed.
89
90 <p>
91
92 The result of calculating the route can be presented in several different ways.
93 An HTML file can be produced that contains a description of the route to take
94 with instructions for each of the important junctions. The contents of the file
95 are created based on a set of translations specified in a configuration file.
96 The route is also available in a
97 <a class="ext" title="GPX format" href="http://www.topografix.com/gpx.asp">GPX (GPS eXchange) XML format</a>.
98 format file containing either every point and highway segment (a track file) or
99 just a waypoint and translated instructions for the important junctions (a route
100 file).
101 Additionally there are two plain text files that contain all data points or just
102 the important ones (intended for debugging and further processing).
103
104 <p>
105
106 One of the design aims of Routino was to make the software are flexible as
107 possible in selecting routing preferences but also have a sensible set of
108 default values. Another design aim was that finding the optimum route should be
109 very fast and most of the speed increases come from the carefully chosen and
110 optimised data format.
111
112
113 <h2 id="H_1_2">Disclaimer</h2>
114
115 The route that is calculated by this software is only as good as the input data.
116
117 <p>
118
119 Routino comes with ABSOLUTELY NO WARRANTY for the software itself or the route
120 that is calculated by it.
121
122
123 <h2 id="H_1_3">Demonstration</h2>
124
125 A live demonstration of the router for the UK is available on the internet in
126 both OpenLayers and Leaflet versions:
127 <br>
128 <a href="http://www.routino.org/uk-leaflet/" title="Leaflet Router">http://www.routino.org/uk-leaflet/</a>
129 <br>
130 <a href="http://www.routino.org/uk-openlayers2/" title="OpenLayers v2 Router">http://www.routino.org/uk-openlayers2/</a>
131 <br>
132 <a href="http://www.routino.org/uk-openlayers/" title="OpenLayers Router">http://www.routino.org/uk-openlayers/</a>
133
134 <p>
135
136 The source code download available below also includes a set of files that can
137 be used to create your own interactive map.
138
139 <p>
140
141 The interactive map is made possible by use of the OpenLayers or Leaflet
142 Javascript library from
143 <a class="ext" href="http://www.openlayers.org" title="OpenLayers">http://www.openlayers.org/</a>
144 or
145 <a class="ext" href="http://www.openlayers.org/two/" title="OpenLayers">http://www.openlayers.org/two/</a>
146 or
147 <a class="ext" href="http://leafletjs.com" title="Leaflet">http://leafletjs.com/</a>.
148
149
150 <h2 id="H_1_4">Documentation</h2>
151
152 A full set of
153 <a href="index.html" title="Documentation">documentation</a>
154 is available that describes how to install and use the programs as well as
155 what should go in the configuration files and how it works.
156
157
158 <h2 id="H_1_5">Status</h2>
159
160 Version 1.0 of Routino was released on 8th April 2009.
161 <br>
162 Version 1.1 of Routino was released on 13th June 2009.
163 <br>
164 Version 1.2 of Routino was released on 21st October 2009.
165 <br>
166 Version 1.3 of Routino was released on 21st January 2010.
167 <br>
168 Version 1.4 of Routino was released on 31st May 2010.
169 <br>
170 Version 1.4.1 of Routino was released on 10th July 2010.
171 <br>
172 Version 1.5 of Routino was released on 30th October 2010.
173 <br>
174 Version 1.5.1 of Routino was released on 13th November 2010.
175 <br>
176 Version 2.0 of Routino was released on 30th May 2011.
177 <br>
178 Version 2.0.1 of Routino was released on 7th June 2011.
179 <br>
180 Version 2.0.2 of Routino was released on 26th June 2011.
181 <br>
182 Version 2.0.3 of Routino was released on 4th August 2011.
183 <br>
184 Version 2.1 of Routino was released on 3rd October 2011.
185 <br>
186 Version 2.1.1 of Routino was released on 23rd October 2011.
187 <br>
188 Version 2.1.2 of Routino was released on 12th November 2011.
189 <br>
190 Version 2.2 of Routino was released on 3rd March 2012.
191 <br>
192 Version 2.3 of Routino was released on 21st July 2012.
193 <br>
194 Version 2.3.1 of Routino was released on 11th August 2012.
195 <br>
196 Version 2.3.2 of Routino was released on 6th October 2012.
197 <br>
198 Version 2.4 of Routino was released on 8th December 2012.
199 <br>
200 Version 2.4.1 of Routino was released on 17th December 2012.
201 <br>
202 Version 2.5 of Routino was released on 9th February 2013.
203 <br>
204 Version 2.5.1 of Routino was released on 20th April 2013.
205 <br>
206 Version 2.6 of Routino was released on 6th July 2013.
207 <br>
208 Version 2.7 of Routino was released on 22nd March 2014.
209 <br>
210 Version 2.7.1 of Routino was released on 17th May 2014.
211 <br>
212 Version 2.7.2 of Routino was released on 26th June 2014.
213 <br>
214 Version 2.7.3 of Routino was released on 8th November 2014.
215 <br>
216 Version 3.0 of Routino was released on 12th September 2015.
217 <br>
218 Version 3.1 of Routino was released on 5th March 2016.
219 <br>
220 Version 3.1.1 of Routino was released on 6th March 2016.
221 <br>
222 Version 3.2 of Routino was released on 12th March 2017.
223 <br>
224 Version 3.3 of Routino was released on 7th September 2019.
225 <br>
226 Version 3.3.1 of Routino was released on 8th September 2019.
227 <br>
228 Version 3.3.2 of Routino was released on 18th September 2019.
229
230 <p>
231
232 The full version history is available in the NEWS.txt file.
233
234
235 <h3 id="H_1_5_1" title="Changes 3.3.2">Changes in Version 3.3.2</h3>
236
237 <dl>
238 <dt>Bug fixes:
239 <dd>Ensure that parallel compilation works in the python directory.
240 <br>Updated the version number in the executables to "3.3.2".
241 </dl>
242
243 <p>
244 <b>Note:</b> This version is compatible with databases from versions 2.7.1 - 3.3.
245
246
247 <h3 id="H_1_5_2" title="Changes 3.3.1">Changes in Version 3.3.1</h3>
248
249 <dl>
250 <dt>Bug fixes:
251 <dd>Ensure that 'make clean' in the python directory deletes auto-generated files.
252 <br>Include the python directory in the release file (include in 'FILES').
253 </dl>
254
255 <p>
256 <b>Note:</b> This version is compatible with databases from versions 2.7.1 - 3.3.
257
258
259 <h3 id="H_1_5_3" title="Changes 3.3">Changes in Version 3.3</h3>
260
261 <dl>
262 <dt>Bug fixes:
263 <dd>Make the openlayers and leaflet zoom to the same level on clicking the route.
264 <br>Add some more memory debug logging (for queue data structure).
265 <br>Fix bug with route calculation that may not give optimum solution.
266 <br>Fix parallel make to not have failed targets due to 'mkdir' race condition.
267 <br>Supress compilation warnings from gcc-7 and gcc-8.
268 <br>Supress compilation warnings from clang-5 and clang-5 static analyser.
269 <br>Suppress runtime warnings from gcc's runtime sanitizer.
270 <br>Bug fix for race condition in multi-threaded sorting algorithm.
271 <br>Bug fix for HTML router when named locations are used.
272 <br>Fix some error messages for consistency.
273 <br>Add extra checks to avoid data overflow and file corruption in planetsplitter.
274 <br>Add more checks for memory allocation success/failure.
275 <dt>planetsplitter:
276 <dd>Do not store nodes in route relations (they are not used).
277 <dt>Documentation:
278 <dd>Added an extra Perl module that is required.
279 <dt>Translations:
280 <dd>Updated German, French and Hungarian translations.
281 <br>Added Italian and Spanish translations.
282 <br>Added incomplete Czech translations.
283 <dt>OSM tagging:
284 <dd>Some small changes to access tagging and highway naming (prow_ref).
285 <br>Add heuristics to decide what transport types are allowed on ferrys.
286 <dt>Web pages:
287 <dd>Update to use the latest version of Leaflet (1.5.1).
288 <br>Add support for the latest version of OpenLayers (5.3).
289 <br>Default to showing search boxes for locations not lat/long fields.
290 <dt>Python:
291 <dd>Created a Python (version 3) interface to the router and routing database.
292 <dt>Extras:
293 <dd>Update documentation.
294 <br>Improve log summarisation HTML page formatting.
295 </dl>
296
297 <p>
298 <b>Note:</b> This version is compatible with databases from versions 2.7.1 - 3.2.
299
300
301 <h2 id="H_1_6">License</h2>
302
303 This program is free software: you can redistribute it and/or modify it under
304 the terms of the
305 <a class="ext" title="Affero GPLv3" href="http://www.gnu.org/licenses/agpl-3.0.html">GNU Affero General Public License</a>
306 as published by the Free Software Foundation; either version 3 of the License,
307 or (at your option) any later version.
308
309 <p>
310
311 It is important to note that for this program I have decided to use the
312 <em>Affero GPLv3</em> instead of just using the GPL. This license adds
313 additional requirements to anybody who provides a networked service using this
314 software.
315
316
317 <h3 id="H_1_6_1">Copyright</h3>
318
319 Routino is copyright Andrew M. Bishop 2008-2019.
320
321
322 <h2 id="H_1_7">Homepage</h2>
323
324 The <a title="Homepage" href="http://www.routino.org/">Routino homepage</a>
325 has the latest news about the program.
326
327
328 <h2 id="H_1_8">Download</h2>
329
330 The <a title="Download directory" href="http://www.routino.org/download/">download directory</a>
331 contains the latest version of the source code.
332
333 <h3 id="H_1_8_1">Subversion</h3>
334
335 The source code can also be downloaded from the
336 <a title="SVN Repository" href="http://routino.org/svn/trunk/">Subversion repository</a>
337 with a command like the following:
338
339 <pre class="boxed">
340 svn co http://routino.org/svn/trunk routino
341 </pre>
342
343 <p>
344 The source code can also be browsed in the
345 <a title="SVN Viewer" href="http://www.routino.org/viewvc/trunk/">Subversion viewer</a>
346 which also has a list of the
347 <a title="SVN Changes" href="http://www.routino.org/viewvc/trunk/?view=log">latest changes</a>.
348
349
350 </div>
351
352 <!-- Content End -->
353
354 <!-- Footer Start -->
355
356 <div class="footer">
357
358 <address>
359 &copy; Andrew M. Bishop - <a href="http://www.routino.org/">http://www.routino.org/</a>
360 </address>
361
362 </div>
363
364 <!-- Footer End -->
365
366 </body>
367
368 </html>