Check out the latest version of Routino: svn co http://routino.org/svn/trunk routino
Annotation of /trunk/web/www/routino/visualiser.html.en
Parent Directory
|
Revision Log
Revision 1077 -
(hide annotations)
(download)
Wed Sep 26 09:42:00 2012 UTC (12 years, 5 months ago) by amb
File size: 20169 byte(s)
Wed Sep 26 09:42:00 2012 UTC (12 years, 5 months ago) by amb
File size: 20169 byte(s)
Add an option to the visualiser to display nodes that disallow selected transport type.
1 | amb | 569 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
2 | <HTML> | ||
3 | |||
4 | <!-- | ||
5 | Routino data visualiser web page. | ||
6 | |||
7 | Part of the Routino routing software. | ||
8 | |||
9 | amb | 985 | This file Copyright 2008-2012 Andrew M. Bishop |
10 | amb | 569 | |
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 | amb | 584 | <TITLE>Routino : Data Visualiser for Routino OpenStreetMap Data</TITLE> |
27 | amb | 569 | <META name="keywords" content="openstreetmap routino verifier"> |
28 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> | ||
29 | |||
30 | <!-- OpenLayers Javascript library --> | ||
31 | <script src="../openlayers/OpenLayers.js" type="text/javascript"></script> | ||
32 | |||
33 | <!-- Page elements --> | ||
34 | <script src="page-elements.js" type="text/javascript"></script> | ||
35 | <link href="page-elements.css" type="text/css" rel="stylesheet"> | ||
36 | |||
37 | amb | 577 | <!-- Router and visualiser shared features --> |
38 | <link href="maplayout.css" type="text/css" rel="stylesheet"> | ||
39 | <!--[if IE 6]> | ||
40 | <link href="maplayout-ie6-bugfixes.css" type="text/css" rel="stylesheet"> | ||
41 | <![endif]--> | ||
42 | <!--[if IE 7]> | ||
43 | <link href="maplayout-ie7-bugfixes.css" type="text/css" rel="stylesheet"> | ||
44 | <![endif]--> | ||
45 | |||
46 | amb | 569 | <!-- Visualiser specific features --> |
47 | amb | 933 | <script src="mapprops.js" type="text/javascript"></script> |
48 | amb | 569 | <script src="visualiser.js" type="text/javascript"></script> |
49 | <link href="visualiser.css" type="text/css" rel="stylesheet"> | ||
50 | |||
51 | </HEAD> | ||
52 | amb | 985 | <BODY onload="map_init();"> |
53 | amb | 569 | |
54 | <!-- Left hand side of window - data panel --> | ||
55 | |||
56 | <div class="left_panel"> | ||
57 | |||
58 | amb | 577 | <div class="tab_box"> |
59 | <span id="tab_visualiser" onclick="tab_select('visualiser');" class="tab_selected" title="Select data options">Visualiser</span> | ||
60 | <span id="tab_router" onclick="tab_select('router');" class="tab_unselected" title="Plan a route">Router</span> | ||
61 | <span id="tab_data" onclick="tab_select('data');" class="tab_unselected" title="View database information">Data</span> | ||
62 | </div> | ||
63 | amb | 569 | |
64 | amb | 577 | <div class="tab_content" id="tab_visualiser_div"> |
65 | amb | 569 | |
66 | amb | 577 | <div class="hideshow_box"> |
67 | <span class="hideshow_title">Routino Data Visualiser</span> | ||
68 | This web page allows visualisation of the data that Routino uses for routing. | ||
69 | amb | 623 | Only data relevant for routing is displayed and some will therefore be excluded. |
70 | amb | 577 | <div align="center"> |
71 | amb | 584 | <a target="other" href="http://www.routino.org/">Routino Website</a> |
72 | amb | 577 | | |
73 | amb | 584 | <a target="other" href="../documentation/">Documentation</a> |
74 | amb | 569 | </div> |
75 | amb | 577 | </div> |
76 | amb | 569 | |
77 | amb | 577 | <div class="hideshow_box"> |
78 | amb | 986 | <span id="hideshow_language_show" onclick="hideshow_show('language');" class="hideshow_show">+</span> |
79 | <span id="hideshow_language_hide" onclick="hideshow_hide('language');" class="hideshow_hide">-</span> | ||
80 | <span class="hideshow_title">Language</span> | ||
81 | |||
82 | <!-- Note for translations: Only this HTML file needs to be translated, the Javascript has | ||
83 | no language specific information in it. Only the body text and title attributes should | ||
84 | be changed, the values passed to the JavaScript and the element names must not be changed. | ||
85 | The selection below changes the language option passed to the router and selects the | ||
86 | output language not the web page language, the links are for that. The router itself uses | ||
87 | the translations.xml file for the translated versions of the output. --> | ||
88 | |||
89 | <div id="hideshow_language_div" style="display: none;"> | ||
90 | <table> | ||
91 | <tr> | ||
92 | <td><a id="lang_en_url" onmouseover="updateURL(this);" onfocus="updateURL(this);" onclick="updateURL(this);" href="visualiser.html.en" title="English language web page">English</a> | ||
93 | <td>(EN) | ||
94 | </table> | ||
95 | </div> | ||
96 | </div> | ||
97 | |||
98 | <div class="hideshow_box"> | ||
99 | amb | 577 | <span class="hideshow_title">Instructions</span> |
100 | Zoom in and then use the buttons below to download the data. The | ||
101 | server will only return data if the selected area is small enough. | ||
102 | </div> | ||
103 | amb | 569 | |
104 | amb | 577 | <div class="hideshow_box"> |
105 | <span class="hideshow_title">Status</span> | ||
106 | amb | 936 | <div id="result_status"> |
107 | <div id="result_status_no_data"> | ||
108 | <b><i>No data displayed</i></b> | ||
109 | </div> | ||
110 | <div id="result_status_data" style="display: none;"> | ||
111 | </div> | ||
112 | <div id="result_status_error" style="display: none;"> | ||
113 | <b>Failed to get visualiser data!</b> | ||
114 | </div> | ||
115 | <div id="result_status_junctions" style="display: none;"> | ||
116 | <b>Processed # junctions</b> | ||
117 | </div> | ||
118 | <div id="result_status_super" style="display: none;"> | ||
119 | <b>Processed # super-nodes/segments</b> | ||
120 | </div> | ||
121 | <div id="result_status_oneway" style="display: none;"> | ||
122 | <b>Processed # oneway segments</b> | ||
123 | </div> | ||
124 | amb | 1003 | <div id="result_status_highway" style="display: none;"> |
125 | <b>Processed # segments</b> | ||
126 | </div> | ||
127 | amb | 1002 | <div id="result_status_transport" style="display: none;"> |
128 | <b>Processed # segments</b> | ||
129 | </div> | ||
130 | amb | 1077 | <div id="result_status_barrier" style="display: none;"> |
131 | <b>Processed # nodes</b> | ||
132 | </div> | ||
133 | amb | 936 | <div id="result_status_turns" style="display: none;"> |
134 | <b>Processed # turn restrictions</b> | ||
135 | </div> | ||
136 | <div id="result_status_limit" style="display: none;"> | ||
137 | <b>Processed # limits</b> | ||
138 | </div> | ||
139 | amb | 569 | </div> |
140 | amb | 577 | </div> |
141 | amb | 569 | |
142 | amb | 577 | <div class="hideshow_box"> |
143 | amb | 932 | <span id="hideshow_junctions_show" onclick="hideshow_show('junctions');" class="hideshow_show">+</span> |
144 | <span id="hideshow_junctions_hide" onclick="hideshow_hide('junctions');" class="hideshow_hide">-</span> | ||
145 | amb | 577 | <input type="button" id="junctions" onclick="displayData('junctions');" value="Display Junctions"> |
146 | <div id="hideshow_junctions_div" style="display: none;"> | ||
147 | Each node that is a dead-end, a junction of two highways of different | ||
148 | types (or different properties) or a junction where more than two segments | ||
149 | join are shown colour-coded: | ||
150 | <br> | ||
151 | <table> | ||
152 | amb | 936 | <tr><td><img src="icons/ball-1.png" alt="Red" ><td>only one highway - a dead-end. |
153 | <tr><td><img src="icons/ball-2.png" alt="Yellow"><td>two highways of different types meet. | ||
154 | <tr><td><img src="icons/ball-3.png" alt="Green" ><td>three highways meet. | ||
155 | <tr><td><img src="icons/ball-4.png" alt="Brown" ><td>four highways meet. | ||
156 | <tr><td><img src="icons/ball-5.png" alt="Blue" ><td>five highways meet. | ||
157 | <tr><td><img src="icons/ball-6.png" alt="Pink" ><td>six highways meet. | ||
158 | <tr><td><img src="icons/ball-7.png" alt="Black" ><td>seven (or more) highways meet. | ||
159 | amb | 577 | </table> |
160 | amb | 569 | </div> |
161 | amb | 577 | </div> |
162 | amb | 569 | |
163 | amb | 577 | <div class="hideshow_box"> |
164 | amb | 932 | <span id="hideshow_super_show" onclick="hideshow_show('super');" class="hideshow_show">+</span> |
165 | <span id="hideshow_super_hide" onclick="hideshow_hide('super');" class="hideshow_hide">-</span> | ||
166 | amb | 577 | <input type="button" id="super" onclick="displayData('super');" value="Display Super Segments"> |
167 | <div id="hideshow_super_div" style="display: none;"> | ||
168 | amb | 623 | Each super-node and the associated super-segments are shown (see |
169 | algorithm page for description). | ||
170 | amb | 569 | </div> |
171 | amb | 577 | </div> |
172 | amb | 569 | |
173 | amb | 577 | <div class="hideshow_box"> |
174 | amb | 932 | <span id="hideshow_oneway_show" onclick="hideshow_show('oneway');" class="hideshow_show">+</span> |
175 | <span id="hideshow_oneway_hide" onclick="hideshow_hide('oneway');" class="hideshow_hide">-</span> | ||
176 | amb | 577 | <input type="button" id="oneway" onclick="displayData('oneway');" value="Display One-way Segments"> |
177 | <div id="hideshow_oneway_div" style="display: none;"> | ||
178 | amb | 623 | Each one-way segment is shown with a coloured triangle indicating the |
179 | allowed direction. The colours of the triangles depend on the bearing | ||
180 | of the highway segment. | ||
181 | amb | 569 | </div> |
182 | amb | 577 | </div> |
183 | amb | 569 | |
184 | amb | 577 | <div class="hideshow_box"> |
185 | amb | 1003 | <span id="hideshow_highway_show" onclick="hideshow_show('highway');" class="hideshow_show">+</span> |
186 | <span id="hideshow_highway_hide" onclick="hideshow_hide('highway');" class="hideshow_hide">-</span> | ||
187 | <input type="button" id="highway" onclick="displayData('highway');" value="Display Highway Segments"> | ||
188 | <div id="hideshow_highway_div" style="display: none;"> | ||
189 | Each segment of the chosen type of highway is drawn. | ||
190 | amb | 1010 | <form name="highways" id="highways" action="" method="get" onsubmit="return false;"> |
191 | amb | 1003 | <table> |
192 | <tr><td>Motorway: <td><input name="highway" type="radio" value="motorway" > | ||
193 | <tr><td>Trunk: <td><input name="highway" type="radio" value="trunk" > | ||
194 | <tr><td>Primary: <td><input name="highway" type="radio" value="primary" checked> | ||
195 | <tr><td>Secondary: <td><input name="highway" type="radio" value="secondary" > | ||
196 | <tr><td>Tertiary: <td><input name="highway" type="radio" value="tertiary" > | ||
197 | <tr><td>Unclassified:<td><input name="highway" type="radio" value="unclassified"> | ||
198 | <tr><td>Residential: <td><input name="highway" type="radio" value="residential" > | ||
199 | <tr><td>Service: <td><input name="highway" type="radio" value="service" > | ||
200 | <tr><td>Track: <td><input name="highway" type="radio" value="track" > | ||
201 | <tr><td>Cycleway: <td><input name="highway" type="radio" value="cycleway" > | ||
202 | <tr><td>Path: <td><input name="highway" type="radio" value="path" > | ||
203 | <tr><td>Steps: <td><input name="highway" type="radio" value="steps" > | ||
204 | <tr><td>Ferry: <td><input name="highway" type="radio" value="ferry" > | ||
205 | </table> | ||
206 | </form> | ||
207 | </div> | ||
208 | </div> | ||
209 | |||
210 | <div class="hideshow_box"> | ||
211 | amb | 1002 | <span id="hideshow_transport_show" onclick="hideshow_show('transport');" class="hideshow_show">+</span> |
212 | <span id="hideshow_transport_hide" onclick="hideshow_hide('transport');" class="hideshow_hide">-</span> | ||
213 | <input type="button" id="transport" onclick="displayData('transport');" value="Display Transport Segments"> | ||
214 | <div id="hideshow_transport_div" style="display: none;"> | ||
215 | Each segment allowed for the chosen type of transport is drawn. | ||
216 | amb | 1010 | <form name="transports" id="transports" action="" method="get" onsubmit="return false;"> |
217 | amb | 1002 | <table> |
218 | <tr><td>Foot <td><input name="transport" type="radio" value="foot" > | ||
219 | <tr><td>Horse <td><input name="transport" type="radio" value="horse" > | ||
220 | <tr><td>Wheelchair<td><input name="transport" type="radio" value="wheelchair"> | ||
221 | <tr><td>Bicycle <td><input name="transport" type="radio" value="bicycle" > | ||
222 | <tr><td>Moped <td><input name="transport" type="radio" value="moped" > | ||
223 | <tr><td>Motorbike <td><input name="transport" type="radio" value="motorbike" > | ||
224 | <tr><td>Motorcar <td><input name="transport" type="radio" value="motorcar" checked> | ||
225 | <tr><td>Goods <td><input name="transport" type="radio" value="goods" > | ||
226 | <tr><td>HGV <td><input name="transport" type="radio" value="hgv" > | ||
227 | <tr><td>PSV <td><input name="transport" type="radio" value="psv" > | ||
228 | </table> | ||
229 | </form> | ||
230 | </div> | ||
231 | </div> | ||
232 | |||
233 | <div class="hideshow_box"> | ||
234 | amb | 1077 | <span id="hideshow_barrier_show" onclick="hideshow_show('barrier');" class="hideshow_show">+</span> |
235 | <span id="hideshow_barrier_hide" onclick="hideshow_hide('barrier');" class="hideshow_hide">-</span> | ||
236 | <input type="button" id="barrier" onclick="displayData('barrier');" value="Display Barrier Nodes"> | ||
237 | <div id="hideshow_barrier_div" style="display: none;"> | ||
238 | Each barrier blocking the chosen type of transport is drawn. | ||
239 | <form name="barriers" id="barriers" action="" method="get" onsubmit="return false;"> | ||
240 | <table> | ||
241 | <tr><td>Foot <td><input name="barrier" type="radio" value="foot" > | ||
242 | <tr><td>Horse <td><input name="barrier" type="radio" value="horse" > | ||
243 | <tr><td>Wheelchair<td><input name="barrier" type="radio" value="wheelchair"> | ||
244 | <tr><td>Bicycle <td><input name="barrier" type="radio" value="bicycle" > | ||
245 | <tr><td>Moped <td><input name="barrier" type="radio" value="moped" > | ||
246 | <tr><td>Motorbike <td><input name="barrier" type="radio" value="motorbike" > | ||
247 | <tr><td>Motorcar <td><input name="barrier" type="radio" value="motorcar" checked> | ||
248 | <tr><td>Goods <td><input name="barrier" type="radio" value="goods" > | ||
249 | <tr><td>HGV <td><input name="barrier" type="radio" value="hgv" > | ||
250 | <tr><td>PSV <td><input name="barrier" type="radio" value="psv" > | ||
251 | </table> | ||
252 | </form> | ||
253 | </div> | ||
254 | </div> | ||
255 | |||
256 | <div class="hideshow_box"> | ||
257 | amb | 932 | <span id="hideshow_turns_show" onclick="hideshow_show('turns');" class="hideshow_show">+</span> |
258 | <span id="hideshow_turns_hide" onclick="hideshow_hide('turns');" class="hideshow_hide">-</span> | ||
259 | amb | 623 | <input type="button" id="turns" onclick="displayData('turns');" value="Display Turn Restrictions"> |
260 | <div id="hideshow_turns_div" style="display: none;"> | ||
261 | Each turn restrictions is shown with a line indicating the disallowed | ||
262 | turn. | ||
263 | </div> | ||
264 | </div> | ||
265 | |||
266 | <div class="hideshow_box"> | ||
267 | amb | 932 | <span id="hideshow_speed_show" onclick="hideshow_show('speed');" class="hideshow_show">+</span> |
268 | <span id="hideshow_speed_hide" onclick="hideshow_hide('speed');" class="hideshow_hide">-</span> | ||
269 | amb | 577 | <input type="button" id="speed" onclick="displayData('speed');" value="Display Speed Limits"> |
270 | <div id="hideshow_speed_div" style="display: none;"> | ||
271 | Each node that joins segments with different speed limits is shown | ||
272 | along with the speed limit on relevant segments. | ||
273 | <br> | ||
274 | <table> | ||
275 | <tr><td><img src="icons/ball-1.png" alt="Red dot"><td>Change of limit | ||
276 | <tr><td><img src="icons/limit-no.png" alt="(no)" ><td>No specified speed limit | ||
277 | <tr><td><img src="icons/limit-80.png" alt="(80)" ><td>80 km/hour speed limit | ||
278 | </table> | ||
279 | amb | 569 | </div> |
280 | amb | 577 | </div> |
281 | amb | 569 | |
282 | amb | 577 | <div class="hideshow_box"> |
283 | amb | 932 | <span id="hideshow_weight_show" onclick="hideshow_show('weight');" class="hideshow_show">+</span> |
284 | <span id="hideshow_weight_hide" onclick="hideshow_hide('weight');" class="hideshow_hide">-</span> | ||
285 | amb | 577 | <input type="button" id="weight" onclick="displayData('weight');" value="Display Weight Limits"> |
286 | <div id="hideshow_weight_div" style="display: none;"> | ||
287 | Each node that joins segments with different weight limits is shown | ||
288 | along with the weight limit on relevant segments. For example: | ||
289 | <br> | ||
290 | <table> | ||
291 | <tr><td><img src="icons/ball-1.png" alt="Red dot"><td>Change of limit | ||
292 | <tr><td><img src="icons/limit-no.png" alt="(no)" ><td>No specified weight limit | ||
293 | <tr><td><img src="icons/limit-8.0.png" alt="(8.0)" ><td>8.0 tonnes weight limit | ||
294 | </table> | ||
295 | amb | 569 | </div> |
296 | amb | 577 | </div> |
297 | amb | 569 | |
298 | amb | 577 | <div class="hideshow_box"> |
299 | amb | 932 | <span id="hideshow_height_show" onclick="hideshow_show('height');" class="hideshow_show">+</span> |
300 | <span id="hideshow_height_hide" onclick="hideshow_hide('height');" class="hideshow_hide">-</span> | ||
301 | amb | 577 | <input type="button" id="height" onclick="displayData('height');" value="Display Height Limits"> |
302 | <div id="hideshow_height_div" style="display: none;"> | ||
303 | Each node that joins segments with different height limits is shown | ||
304 | along with the height limit on relevant segments. For example: | ||
305 | <br> | ||
306 | <table> | ||
307 | <tr><td><img src="icons/ball-1.png" alt="Red dot"><td>Change of limit | ||
308 | <tr><td><img src="icons/limit-no.png" alt="(no)" ><td>No specified height limit | ||
309 | <tr><td><img src="icons/limit-4.0.png" alt="(4.0)" ><td>4.0 m height limit | ||
310 | </table> | ||
311 | amb | 569 | </div> |
312 | amb | 577 | </div> |
313 | amb | 569 | |
314 | amb | 577 | <div class="hideshow_box"> |
315 | amb | 932 | <span id="hideshow_width_show" onclick="hideshow_show('width');" class="hideshow_show">+</span> |
316 | <span id="hideshow_width_hide" onclick="hideshow_hide('width');" class="hideshow_hide">-</span> | ||
317 | amb | 577 | <input type="button" id="width" onclick="displayData('width');" value="Display Width Limits"> |
318 | <div id="hideshow_width_div" style="display: none;"> | ||
319 | Each node that joins segments with different width limits is shown | ||
320 | along with the width limit on relevant segments. For example: | ||
321 | <br> | ||
322 | <table> | ||
323 | <tr><td><img src="icons/ball-1.png" alt="Red dot"><td>Change of limit | ||
324 | <tr><td><img src="icons/limit-no.png" alt="(no)" ><td>No specified width limit | ||
325 | <tr><td><img src="icons/limit-3.0.png" alt="(3.0)" ><td>3.0 m width limit | ||
326 | </table> | ||
327 | amb | 569 | </div> |
328 | amb | 577 | </div> |
329 | amb | 569 | |
330 | amb | 577 | <div class="hideshow_box"> |
331 | amb | 932 | <span id="hideshow_length_show" onclick="hideshow_show('length');" class="hideshow_show">+</span> |
332 | <span id="hideshow_length_hide" onclick="hideshow_hide('length');" class="hideshow_hide">-</span> | ||
333 | amb | 577 | <input type="button" id="length" onclick="displayData('length');" value="Display Length Limits"> |
334 | <div id="hideshow_length_div" style="display: none;"> | ||
335 | Each node that joins segments with different length limits is shown | ||
336 | along with the length limit on relevant segments. For example: | ||
337 | <br> | ||
338 | <table> | ||
339 | <tr><td><img src="icons/ball-1.png" alt="Red dot"><td>Change of limit | ||
340 | <tr><td><img src="icons/limit-no.png" alt="(no)" ><td>No specified length limit | ||
341 | <tr><td><img src="icons/limit-9.0.png" alt="(9.0)" ><td>9.0 m length limit | ||
342 | </table> | ||
343 | amb | 569 | </div> |
344 | amb | 577 | </div> |
345 | amb | 569 | |
346 | amb | 577 | <div class="hideshow_box"> |
347 | <input type="button" id="clear" onclick="displayData('');" value="Clear data"> | ||
348 | </div> | ||
349 | amb | 569 | |
350 | amb | 577 | <div class="hideshow_box"> |
351 | <span class="hideshow_title">Links</span> | ||
352 | amb | 986 | <a id="permalink_url" onmouseover="updateURL(this);" onfocus="updateURL(this);" onclick="updateURL(this);" href="visualiser.html">Permanent link to this view</a> |
353 | amb | 577 | <br> |
354 | amb | 986 | <a id="edit_url" onmouseover="updateURL(this);" onfocus="updateURL(this);" onclick="updateURL(this);" href="http://www.openstreetmap.org/" target="edit">Edit OSM data in Potlatch</a> |
355 | amb | 577 | </div> |
356 | </div> | ||
357 | amb | 569 | |
358 | amb | 577 | <div class="tab_content" id="tab_router_div" style="display: none;"> |
359 | <div class="hideshow_box"> | ||
360 | <span class="hideshow_title">Router</span> | ||
361 | To perform routing on the map use the link below. | ||
362 | <br> | ||
363 | amb | 986 | <a id="router_url" onmouseover="updateURL(this);" onfocus="updateURL(this);" onclick="updateURL(this);" href="router.html" target="router">Custom link to this map view</a> |
364 | amb | 577 | </div> |
365 | </div> | ||
366 | amb | 569 | |
367 | amb | 577 | <div class="tab_content" id="tab_data_div" style="display: none;"> |
368 | <div class="hideshow_box"> | ||
369 | <span class="hideshow_title">Statistics</span> | ||
370 | <div id="statistics_data"></div> | ||
371 | <a id="statistics_link" href="statistics.cgi" onclick="displayStatistics();return(false);">Display data statistics</a> | ||
372 | </div> | ||
373 | </div> | ||
374 | |||
375 | amb | 569 | </div> |
376 | |||
377 | <!-- Right hand side of window - map --> | ||
378 | |||
379 | <div class="right_panel"> | ||
380 | amb | 577 | <div class="map" id="map"> |
381 | <noscript> | ||
382 | Javascript is <em>required</em> to use this web page because of the | ||
383 | interactive map. | ||
384 | </noscript> | ||
385 | </div> | ||
386 | <div class="attribution"> | ||
387 | amb | 584 | <a target="other" href="http://www.routino.org/" title="Routino">Data Manipulation: Routino</a> |
388 | amb | 577 | | |
389 | <a target="other" href="http://www.openstreetmap.org/" title="Copyright: OpenStreetMap.org; License: Creative Commons Attribution-Share Alike 2.0">Geo Data: OpenStreetMap</a> | ||
390 | </div> | ||
391 | amb | 569 | </div> |
392 | |||
393 | </BODY> | ||
394 | </HTML> |