]> git.street.me.uk Git - andy/viking.git/blob - help/C/viking.xml
SF Features#113: Allow distance from track start to be shown in the Statusbar.
[andy/viking.git] / help / C / viking.xml
1 <?xml version="1.0"?>
2 <!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
3 "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
4   <!ENTITY appname          "Viking">
5   <!ENTITY app "<application>Viking</application>">
6   <!ENTITY appversion   "1.4">
7   <!ENTITY manrevision  "1.4">
8   <!ENTITY date "February 2013">
9 ]>
10 <!--
11       (Do not remove this comment block.)
12   Maintained by the GNOME Documentation Project
13   http://live.gnome.org/DocumentationProject
14   Template version: 3.0 beta
15   Template last modified 2006-11-21
16
17 -->
18 <!-- =============Document Header ============================= -->
19 <article id="index" lang="en">
20   <articleinfo>
21     <title>&app; Manual</title>
22     <abstract role="description">
23       <para>&app; is a free/open source program to manage GPS data.</para>
24     </abstract>
25
26     <copyright>
27       <year>2013</year>
28       <holder>Guilhem Bonnefille</holder>
29       <holder>Rob Norris</holder>
30     </copyright>
31
32     <!-- An address can be added to the publisher information. -->
33     <publisher role="maintainer">
34       <publishername>GNOME Documentation Project</publishername>
35     </publisher>
36
37     <xi:include href="legal.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
38     <!-- The file legal.xml contains link to license for the documentation,
39         and other legal stuff such as "NO WARRANTY" statement.
40         Please do not change any of this. -->
41
42     <authorgroup>
43       <author>
44         <firstname>Guilhem</firstname>
45         <surname>Bonnefille</surname>
46       </author>
47       <author>
48         <firstname>Rob</firstname>
49         <surname>Norris</surname>
50       </author>
51       <!-- Contributors from the Wiki history -->
52       <author>
53         <firstname>username:</firstname>
54         <surname>Alexxy</surname>
55       </author>
56       <author>
57         <firstname>username:</firstname>
58         <surname>Vikingis</surname>
59       </author>
60       <author>
61         <firstname>username:</firstname>
62         <surname>Tallguy</surname>
63       </author>
64       <author>
65         <firstname>username:</firstname>
66         <surname>EliotB</surname>
67       </author>
68       <author>
69         <firstname>Alex</firstname>
70         <surname>Foobarian</surname>
71       </author>
72       <!-- END -->
73     </authorgroup>
74
75     <revhistory>
76       <revision>
77         <revnumber>&appname; Manual V&manrevision;</revnumber>
78         <date>&date;</date>
79         <revdescription>
80           <para role="author">Guilhem Bonnefille <email>guilhem.bonnefille@gmail.com</email></para>
81           <para role="author">Rob Norris <email>rw_norris@hotmail.com</email></para>
82           <para role="publisher">GNOME Documentation Project</para>
83           <para>This document was generated on <?dbtimestamp format="Y-m-d"?>.</para>    
84         </revdescription>
85       </revision>
86     </revhistory>
87
88     <releaseinfo>This manual describes version &appversion; of &appname;.</releaseinfo>
89
90     <legalnotice>
91       <title>Feedback</title>
92       <para>To report a bug or make a suggestion regarding the &app; application or
93       this manual, follow the directions in the
94       <ulink url="ghelp:user-guide?feedback-bugs" type="help">Feedback section of the GNOME User Guide</ulink>.
95       </para>
96     </legalnotice>
97   </articleinfo>
98
99   <indexterm zone="index">
100     <primary>&app;</primary>
101   </indexterm>
102 <!-- ============= Document Body ============================= -->
103 <section id="introduction">
104   <title>Introduction</title>
105 <para>
106 &appname; aims to be easy to use, yet powerful in accomplishing a wide
107 variety of tasks. Some of the things you can use &appname; for are:
108 </para>
109 <itemizedlist mark="opencircle"><listitem>
110 <para>
111 Uploading and downloading waypoints, tracks and routes to/from GPS.
112 </para>
113 </listitem>
114 <listitem>
115 <para>Preparing tracks, routes and waypoints for trips using maps from services such as OpenStreetMap (OSM) and/or Terrasever.
116 The data is only needed to be uploaded to your GPS before you leave.
117 The maps together with your tracks, routes and waypoints can also be printed and used during the trip.
118 </para>
119 </listitem>
120 <listitem>
121 <para>
122 After trips, tracks and waypoints from GPS can be downloaded, stored, managed and reused in your (or your friends') later trips.
123 </para>
124 </listitem>
125 <listitem>
126 <para>
127 Analyzing Off Highway Vehicle (OHV) and hiking trips, understanding where you went and how far you were from something.
128 </para>
129 </listitem>
130 <listitem>
131 <para>Making waypoints, tracks and routes to follow to easily get someplace
132 you've never been before or don't have GPS data for but online
133 maps exist for it.
134 </para>
135 </listitem>
136 <listitem>
137 <para>
138 Making maps with coordinate lines.
139 </para>
140 </listitem>
141 <listitem>
142 <para>
143 Grouping data from multiple trips using a hierarchical data manager.
144 </para>
145 </listitem>
146 <listitem>
147 <para>
148 Analyzing speed at different places (to some degree), adding waypoints where you forgot to mark one but did slow down or stop.
149 </para>
150 </listitem>
151 <listitem>
152 <para>
153 Downloading and storing OpenStreetMap and/or Terraserver maps on your hard drive and looking at them later.
154 </para>
155 </listitem>
156 <listitem>
157 <para>
158 Editing routes or tracks and their trackpoints, joining and splitting up tracks and routes.
159 </para>
160 </listitem>
161 <listitem>
162 <para>
163 Show the live GPS position on the map (for use on a mobile device - e.g. a laptop). Not <trademark>Windows</trademark> at the moment.
164 </para>
165 </listitem>
166 <listitem>
167 <para>
168 Import track, route and waypoint files of various types via <application>GPSBabel</application>
169 </para>
170 </listitem>
171 <listitem>
172 <para>
173 View, create and update Geotagged Images (using EXIF data).
174 </para>
175 </listitem>
176 </itemizedlist>
177 <note>
178 <para>
179 &appname; is under continual improvement: see the potential areas in the <ulink url="http://sourceforge.net/apps/mediawiki/viking/index.php?title=Main_Page#TODO_.2F_Ideas"><citetitle>Roadmap / Wishlist</citetitle></ulink>:
180 </para>
181 </note>
182 <figure>
183 <title>Screenshot: OSM Cycle Map and Many Tracks</title>
184 <screenshot>
185   <graphic format="JPG" fileref="figures/Viking-OSM-CycleMap-ManyTracks.jpg"/>
186 </screenshot>
187 </figure>
188 </section>
189
190 <section><title>General Concepts</title>
191 <section id="gc_layers" xreflabel="Layers"><title>Layers</title>
192 <para>
193 <emphasis>Layers</emphasis> is concept one may know from powerful graphics editors such as <application>Photoshop</application> or <application>GIMP</application>.
194 Instead of putting all the data on the same level, it is stacked (i.e. layered) with different data over one another.
195 This can be useful for analysis and general handling of various sets of data.
196 </para>
197 <para>
198 Unfortunately the downside of this complexity is remembering how differing layers of data can obscure other data.
199 </para>
200 <para>
201 The Map layers have <ulink url="http://en.wikipedia.org/wiki/Alpha_compositing"><citetitle>Alpha Compositing</citetitle></ulink>,
202 to create the appearance of partial transparency.
203 By controlling this value one can see data below it in the layer heirarchy for interesting effects.
204 </para>
205 </section>
206 <section id="gc_layers_panel" xreflabel="Layers Panel"><title>Layers Panel</title>
207 <para>
208 The panel on the left is called the <emphasis role="bold">layers panel</emphasis>.
209 It determines which layers and sublayers (such as tracks and waypoints)
210 are shown, and the order in which they are drawn. Layers on the
211 top of the layers panel list are drawn last. You can change the order by
212 drag and drop, or by selecting a layer and using the up and down
213 buttons at the bottom of the layers panel.
214 </para>
215 </section>
216 <section><title>Viewport</title>
217 <para>
218 The main &appname; area where the layer data is drawn, is called the <emphasis role="bold">viewport</emphasis>.
219 </para>
220 </section>
221 <section><title>Statusbar</title>
222 <para>This provides a readout of various information:</para>
223 <itemizedlist>
224 <listitem><para>The currently selected (mouse pointer) tool</para></listitem>
225 <listitem><para>The number of items to process in the background - normally this the number in the map tile download queue</para></listitem>
226 <listitem><para>The zoom factor</para></listitem>
227 <listitem><para>The location of the mouse pointer (and potentially height information if DEM data is available)</para></listitem>
228 </itemizedlist>
229 <para>When creating a track/route, the statusbar also displays some information about the track/route.</para>
230 <figure>
231 <title>Statusbar</title>
232 <screenshot>
233   <graphic format="PNG" fileref="figures/trw_statusbar.png"/>
234 </screenshot>
235 </figure>
236 <para>This part of the statusbar displays:
237 <itemizedlist>
238 <listitem><para>The total distance of the track/route (including currently edited segment).</para></listitem>
239 <listitem><para>The bearing of the currently edited segment.</para></listitem>
240 <listitem><para>The distance of the currently edited segment.</para></listitem>
241 </itemizedlist>
242 </para>
243 <para>For convenience, a zoom selector can be opened from the status bar. Simply left-click on the zoom factor.</para>
244 <figure>
245   <title>The zoom selector available from status bar</title>
246   <screenshot>
247     <graphic format="PNG" fileref="figures/zoom_status_popup.png"/>
248   </screenshot>
249 </figure>
250 </section>
251
252 <section><title>Projections</title>
253 <para>
254 &appname; supports differents projections:
255 <itemizedlist>
256 <listitem>
257 <para>UTM</para>
258 </listitem>
259 <listitem>
260 <para>LatLon (also called EPSG:4326)</para>
261 </listitem>
262 <listitem>
263 <para>Mercator (also called Spherical Mercator)</para>
264 </listitem>
265 </itemizedlist>
266 </para>
267 </section>
268
269 <section><title>Map Cache</title>
270 <para>
271 &appname; stores downloaded map tiles to disk for a couple of reasons:
272 </para>
273 <itemizedlist>
274 <listitem><para>Enables off line usage</para></listitem>
275 <listitem><para>Reduces loading on the map tile provider</para></listitem>
276 </itemizedlist>
277 <para>
278 The &appname; automatic caching strategy is two fold:
279 </para>
280 <itemizedlist>
281 <listitem>
282 <para>
283   If the age of the tile on disk is less than the specified tile age (see <xref linkend="prefs"/>),
284   it will <emphasis>not</emphasis> attempt to contact the server to get a new version of the tile.
285 </para>
286 </listitem>
287 <listitem>
288 <para>
289   When the tile age has expired &appname; will attempt a <emphasis>refresh</emphasis> update, so that it provides the cached tile generation timestamp so the server can determine if a new tile image needs to be returned. Not all map types support this refresh method.
290 </para>
291 </listitem>
292 </itemizedlist>
293 <para>
294   You can override the caching scheme by using right-click on the Map on the layers panel and selecting <guimenuitem>Redownload All Onscreen Maps</guimenuitem>, or <keycap>Ctrl+F5</keycap> for the top most map displayed. This will get the latest version held by the server.
295 </para>
296 <note>
297 <para>
298   This can be useful if you contribute to OpenStreetMap and wish to see your modifications (of course give time for the server to have processed your changes - see <ulink url="http://help.openstreetmap.org/questions/102/i-have-made-edits-but-they-dont-show-up-on-the-map">I have made edits but they don't show up on the map</ulink>)
299 </para>
300 </note>
301 </section>
302
303 <section id="shortcut_keys" xreflabel="Shortcut Keys"><title>Shortcut Keys</title>
304 <para>
305 &appname; has several shortcut keys or key combinations for commands as listed in the main window along side the command.
306 </para>
307 <para>
308 Some function keys follow standard GUI behaviour:
309 </para>
310 <itemizedlist>
311 <listitem><para><keycap>F1</keycap> Help (view this manual)</para></listitem>
312 <listitem><para><keycap>F5</keycap> or <keycap>Ctrl+R</keycap> Refresh the maps on screen</para></listitem>
313 <listitem><para><keycap>F10</keycap> Select the Menubar (in built behaviour)</para></listitem>
314 <listitem><para><keycap>F11</keycap> Full Screen</para></listitem>
315 <listitem><para><keycap>Ctrl+F5</keycap> or <keycap>Ctrl+Shift+R</keycap> Redownload the maps on screen</para></listitem>
316 </itemizedlist>
317 <note>
318 <para>
319 Refresh attempts to get new maps only if the local tile cache time period has expired for any particular map tile.
320 Redownload gets all on screen maps from the server, ignoring the local tile cache.
321 </para>
322 </note>
323 <para>
324 Other function keys control turn on/off visibility of various elements:
325 </para>
326 <itemizedlist>
327 <listitem><para><keycap>F3</keycap> Toggle visibility of the Toolbar</para></listitem>
328 <listitem><para><keycap>F4</keycap> Toggle visibility of the Menubar</para></listitem>
329 <listitem><para><keycap>Shift+F5</keycap> Toggle visibility of the Scale indicator on the viewport</para></listitem>
330 <listitem><para><keycap>F6</keycap> Toggle visibility of the Center Crosshairs on the viewport</para></listitem>
331 <listitem><para><keycap>F7</keycap> Toggle showing selected items (e.g. tracks or waypoints) in the highlight colour in the viewport</para></listitem>
332 <listitem><para><keycap>F9</keycap> Toggle visibility of the Layers Panel</para></listitem>
333 <listitem><para><keycap>F12</keycap> Toggle visibility of the Statusbar</para></listitem>
334 </itemizedlist>
335 <para>
336 Standard shortcuts are provided for normal GUI operations: such as creating new files, opening, saving and exitting.
337 Then there are shortcuts specific to &appname; to switch projection modes, zoom in/out, create layers and switch the active tool mode.
338 For these combinations see the menu entry themselves.
339 </para>
340 </section>
341
342 <section><title>Tracks vs Routes</title>
343 <para>
344 In theory a route is path you are planning to follow and a track of where you have actually been. The GPX specification splits these into two separate catergories, although tracks contain everything route may have.
345 </para>
346 <para>
347 Q. When planning a <emphasis>route</emphasis> what difference does it make if it's a route or a track?
348 </para>
349 <para>
350 A. One difference is in how a GPS device navigates following the route or track.
351 Or you may want to consider interoperability with other software.
352 Otherwise it is probably best to use tracks as they are a superset of the route functionality.
353 </para>
354 <para>
355 For example on Garmin Etrex:
356 </para>
357 <itemizedlist>
358 <listitem>
359 <para>Route following: Uses navigation mode with compass and estimated time to next point.</para>
360 <para>If following on road it can calculate a route on fly.</para>
361 <para>I (RN) always use this mode to follow pre planned routes.</para>
362 </listitem>
363 <listitem>
364 <para>Track following: Uses a <trademark>TracBack</trademark> mode</para>
365 <para>I (RN) never use this so I can't comment on how it actually compares to the route mode.</para>
366 </listitem>
367 </itemizedlist>
368 <note><para>
369 There are often restrictions on the numbers of route points the GPS Device can handle - may be 250 or as little as 50.
370 This generally not a problem for single day routes, but needs managing for multi-day events or for highly detailed routes.
371 </para></note>
372 </section>
373
374 </section><!--General Concepts End-->
375
376 <section><title>File Types and the Main Window</title>
377
378 <para>
379 &appname; has it's own file type traditionally marked by the <emphasis>.vik</emphasis> file extension.
380 This is a plain text file saving all information of the current window including the view location, zoom level, projection type and then all the layer information (aggregrates, maps, tracks, waypoints, etc...).
381 </para>
382 <para>
383 Besides it's own file type, &appname; can open (and save to via export methods) GPX and KML file types.
384 </para>
385 <note>
386 <para>
387 &appname; does not handle GPX 1.1 particularly well - it prefers GPX 1.0
388 </para>
389 </note>
390 <para>
391 By default &appname; opens a default blank window centered on the home location. This behaviour can be changed by the <xref linkend="prefs_startup"/>.
392 Each window contains menus, a toolbar, a viewport, layers panel and a statusbar.
393 Each section (apart from the viewport) can be hidden using the <xref linkend="shortcut_keys"/> or from the
394 <menuchoice><guimenu>View</guimenu><guisubmenu>Show</guisubmenu></menuchoice> choices.
395 </para>
396 <para>
397 One may consider each &appname; window to be a separate project - each with it's project <emphasis>Viking</emphasis> file.
398 However generally one window is enough for most purposes!
399 </para>
400 <para>
401 Several operations apply at the window level as follows next.
402 Also see <xref linkend="tools"/> for the operational modes that generally work in conjunction with a selected layer.
403 </para>
404
405 <section><title>New</title>
406 <para>
407 Located on the <menuchoice><guimenu>File</guimenu><guisubmenu>New</guisubmenu></menuchoice> menu and on the toolbar <guibutton>New</guibutton>.
408 </para>
409 <para>
410 This creates a new window with the default settings.
411 </para>
412 </section>
413
414 <section><title>Open</title>
415 <para>
416 Located on the <menuchoice><guimenu>File</guimenu><guisubmenu>Open</guisubmenu></menuchoice> menu and on the toolbar <guibutton>Open</guibutton>.
417 </para>
418 <para>
419 This opens a file chooser dialog to select one (or more) files of the supported GPS data file types:
420 <itemizedlist>
421 <listitem><para>Viking</para></listitem>
422 <listitem><para>GPX</para></listitem>
423 <listitem><para>KML</para></listitem>
424 </itemizedlist>
425 </para>
426 <para>
427 GPX and KML files will be loaded into the existing &appname; view. A <emphasis>Viking</emphasis> file will be given a new window if the current window is already assigned.
428 </para>
429 <tip>
430 <para>
431 &appname; handles more file types via the <link linkend="acquire">Acquire</link> methods below.
432 </para>
433 </tip>
434 </section>
435
436 <section><title>Save</title>
437 <para>
438 Located on the <menuchoice><guimenu>File</guimenu><guisubmenu>Save</guisubmenu></menuchoice> menu and on the toolbar <guibutton>Save</guibutton>.
439 </para>
440 <para>
441 If the current opened file is <emphasis>Viking</emphasis> file, this save will simply update it.
442 If it is a new file or the file loaded was an external type (i.e. GPX or KML), then this will ask for a <emphasis>new name</emphasis> to save as a <emphasis>Viking</emphasis> file.
443 </para>
444 </section>
445
446 <section><title>Save As</title>
447 <para>
448 Located on the <menuchoice><guimenu>File</guimenu><guisubmenu>Save As</guisubmenu></menuchoice> menu only.
449 </para>
450 <para>
451 This will ask for a <emphasis>new name</emphasis> to save as a <emphasis>Viking</emphasis> file (even it was already a <emphasis>Viking</emphasis> file).
452 </para>
453 </section>
454
455 <section><title>Append</title>
456 <para>
457 Located on the <menuchoice><guimenu>File</guimenu><guisubmenu>Append</guisubmenu></menuchoice> menu only.
458 </para>
459 <para>
460 Selecting a <emphasis>Viking</emphasis> file from this method will join the file contents to the current window (instead of creating a new one).
461 GPX and KML files may also be appended, but this is exactly the same as the normal file open method.
462 </para>
463 </section>
464
465 <section id="acquire" xreflabel="acquire"><title>Acquire</title>
466
467 <para>
468 Available on the <menuchoice><guimenu>File</guimenu><guisubmenu>Acquire</guisubmenu></menuchoice> menu and from the <xref linkend="TrackWaypoint"/> layer menu.
469 </para>
470 <para>
471 If used from the <guimenu>File</guimenu> menu and a TrackWaypoint layer is not currently selected, these methods place the results in a new TrackWaypoint layer. When a TrackWaypoint layer is selected, then using the <menuchoice><guimenu>File</guimenu><guisubmenu>Acquire</guisubmenu></menuchoice> will put the results into the selected TrackWaypoint layer.
472 </para>
473 <para>
474 If used from the <xref linkend="TrackWaypoint"/> layer menu these methods place the results in that TrackWaypoint layer.
475 </para>
476
477 <section>
478 <title>From GPS</title>
479 <para>
480 <menuchoice><guimenu>File</guimenu><guimenuitem>Acquire</guimenuitem><guimenuitem>From GPS</guimenuitem></menuchoice>
481 Probably the easiest way of getting information from a GPS Device.
482 </para>
483 <para>
484 Select the GPS Device communication settings and then hit <guibutton>OK</guibutton>.
485 See the <link linkend="method_c">Getting Started</link> section for more info about the settings.
486 </para>
487 <note>
488 <para>
489 Some GPS devices (such as the <trademark>Garmin Nuvi 255</trademark>) support a native file system and write information to a <filename>Current.gpx</filename> file or similar. You will have to browse the file system on the device and open it directly.
490 </para>
491 </note>
492 </section>
493
494 <section>
495 <title>Import File With GPSBabel</title>
496 <para>
497 <menuchoice><guimenu>File</guimenu><guimenuitem>Acquire</guimenuitem><guimenuitem>Import File With GPSBabel</guimenuitem></menuchoice>
498 </para>
499 <para>
500 Other formats can be imported that are supported by GPSBabel.
501 </para>
502 <para>
503 You need to select the file <emphasis>and</emphasis> the type of the file that is going to be opened,
504 since there is no automatic detection of the file kind.
505 </para>
506 </section>
507
508 <section>
509 <title>OSM Traces</title>
510 <para>
511 <menuchoice><guimenu>File</guimenu><guimenuitem>Acquire</guimenuitem><guimenuitem>OSM Traces</guimenuitem></menuchoice>
512 </para>
513 <para>
514 See <xref linkend="osm_dl"/> section for more information.
515 </para>
516 </section>
517
518 <section>
519 <title>My OSM Traces</title>
520 <para>
521 <menuchoice><guimenu>File</guimenu><guimenuitem>Acquire</guimenuitem><guimenuitem>My OSM Traces</guimenuitem></menuchoice>
522 </para>
523 <para>
524 See <xref linkend="osm_my_dl"/> section for more information.
525 </para>
526 </section>
527
528 <section>
529 <title>From Geotagged Images</title>
530 <para>
531 <menuchoice><guimenu>File</guimenu><guimenuitem>Acquire</guimenuitem><guimenuitem>From Geotagged Images</guimenuitem></menuchoice>
532 Enables automatic creation of waypoints from geotagged images.
533 </para>
534 <para>
535 This menu opens a dialog to select such image files.
536 If the image files have geotag information in them, then a <xref linkend="TrackWaypoint"/> layer with named waypoints positioned at the location of each image with a thumbnail of that image is created.
537 </para>
538 </section>
539
540 <section>
541 <title>From Wikipedia Waypoints</title>
542 <para>
543 <menuchoice><guimenu>File</guimenu><guimenuitem>Acquire</guimenuitem><guimenuitem>From Wikipedia Waypoints</guimenuitem></menuchoice>
544 </para>
545 <para>
546 This gets <emphasis>interesting</emphasis> points from Wikipedia for the specified view: either within the extent of layer bounds or within the current viewport boundary.
547 </para>
548 </section>
549
550 <section>
551 <title>From Routing</title>
552 <para>
553 <menuchoice><guimenu>File</guimenu><guimenuitem>Acquire</guimenuitem><guimenuitem>From Directions</guimenuitem></menuchoice>
554 </para>
555 <para>
556 This gets a route from given directions.
557 </para>
558 </section>
559
560 </section> <!-- End Acquire -->
561
562 <section><title>Print</title>
563 <para>
564 Located on the <menuchoice><guimenu>File</guimenu><guisubmenu>Print</guisubmenu></menuchoice> menu and on the toolbar <guibutton>Print</guibutton>.
565 </para>
566 <para>
567 Print uses what is displayed on the current map view for printing: i.e. what ever map, tracks and waypoints that are in view, including the
568 cross hairs and the scale.
569 </para>
570 <para>
571 It uses a standard system print dialog using an image the size of the current viewport in pixel terms.
572 On the <emphasis>Image Settings</emphasis> you can move the image around the page and scale the image up / or down.
573 </para>
574 </section>
575
576 <section><title>Generate Image File</title>
577 <para>
578 Located on the <menuchoice><guimenu>File</guimenu><guisubmenu>Generate Image File</guisubmenu></menuchoice> menu only.
579 </para>
580 <para>
581 Allows generation of larger (pixel) area images than the standard Print method above.
582 From the generated image you can use the facilities of the <application>Operating System</application> to print the image
583 or perform other actions.
584 </para>
585 <para>
586 You should have previously downloaded the tile images for the chosen zoom level,
587 otherwise the image produced will have missing sections.
588 </para>
589 <warning>
590 <para>
591 Using large areas takes some time to process and due to the method used it may run out of memory to complete the operation.
592 Unfortunately under <trademark>Windows</trademark> systems it can not detect this failure and may crash the program.
593 So the maximum size is dependent on the capabilities of your system.
594 For instance the largest successful image generated on my (RN) Debian system is a pixel area of 20,000 x 20,000.
595 </para>
596 </warning>
597 </section>
598
599 <section><title>Generate Directory of Images</title>
600 <para>
601 Located on the <menuchoice><guimenu>File</guimenu><guisubmenu>Generate Directory of Images</guisubmenu></menuchoice> menu only.
602 </para>
603 <para>
604 This is only available in UTM mode.
605 </para>
606 </section>
607
608 </section> <!-- End File Types -->
609
610 <section><title>Layers</title>
611
612 <para>
613 Layers supported by &appname; are:
614 </para>
615 <itemizedlist>
616 <listitem><para><xref linkend="Aggregate"/></para></listitem>
617 <listitem><para><xref linkend="TrackWaypoint"/></para></listitem>
618 <listitem><para><xref linkend="GPS"/></para></listitem>
619 <listitem><para><xref linkend="DEM"/></para></listitem>
620 <listitem><para><xref linkend="Coordinate"/></para></listitem>
621 <listitem><para><xref linkend="Maps"/></para></listitem>
622 <listitem><para><xref linkend="GeoRef"/></para></listitem>
623 </itemizedlist>
624 <para>
625 For each layer there are a few standard options:
626 </para>
627 <itemizedlist>
628 <listitem><para>Properties - Layer setup / configuration settings</para></listitem>
629 <listitem><para>Cut</para></listitem>
630 <listitem><para>Copy</para></listitem>
631 <listitem><para>Paste</para></listitem>
632 <listitem><para>Delete</para></listitem>
633 <listitem><para>Visibility - This checkbox on the Layers Panel controls whether the layer is shown in the viewport or not</para></listitem>
634 </itemizedlist>
635 <para>
636 The cut/copy/paste options can be accessed in a variety of ways once the layer has been selected:
637 </para>
638 <itemizedlist>
639 <listitem><para>Standard keys: <keycap>Ctrl+x|c|v</keycap></para></listitem>
640 <listitem><para>Main menu <guimenuitem>Edit</guimenuitem></para></listitem>
641 <listitem><para>From the right click menu</para></listitem>
642 <listitem><para>Buttons at the bottom of the Layers Panel</para></listitem>
643 </itemizedlist>
644 <para>
645 Default values used for each layer's properties can be altered via the <menuchoice><guimenu>Edit</guimenu><guisubmenu>Layer Defaults</guisubmenu></menuchoice> menu options.
646 </para>
647 <para>
648 See the individual section for detail about each layer.
649 </para>
650 </section>
651
652 <section id="TrackWaypoint" xreflabel="TrackWaypoint"><title>TrackWaypoint Layer</title>
653 <para>
654 TrackWaypoint layers display GPS data (tracks, routes and waypoints).
655 </para>
656 <para>One way to create new waypoints is to copy a
657 latitude/longitude coordinate pair, such as the one shown on most
658 geocaches, and paste it into an active TrackWaypoint layer. &appname; can
659 automatically recognize several variations of the lat/lon format.
660 </para>
661 <para>
662 By right-clicking on tracks, routes or waypoints in the <xref linkend="gc_layers_panel"/>, you can access many commands on them.
663 You can easily find a specific track, route or waypoint by expanding the appropriate containing Tracks, Routes or Waypoints sublayer in the
664 layers panel to show all the individual items and then typing the name of the track, route or waypoint.
665 </para>
666
667 <para>
668 The containing Tracks, Routes or Waypoints sublayers are only shown when items of that type exist.
669 To start creating them enter into a create mode via either the <guibutton>Create</guibutton> toolbar commands or the <guimenuitem>New</guimenuitem> menu commands.
670 </para>
671
672 <para>
673 The sublayers also offer right click menu options.
674 These are the same as those available at the TrackWaypoint level, but only those that relate to the sublayer type.
675 </para>
676
677 <para>
678 By default routes are coloured red. Tracks are automatically assigned a spread of colours.
679 </para>
680
681 <para>
682 Most operations available on tracks are available on routes, except for functionality that relies on having timestamps - since routes by definition have no timing information. Thus for example, uploading a route to OpenStreetMap Traces is not available nor is Geotagging on a route.
683 It is possible to convert between Tracks and Routes, although converting from a Track to a Route may involve a loss of information (hence you are required to confirm this operation before it happens).
684 </para>
685
686 <section><title>Layer Operations</title>
687 <para>
688 The layer has a context menu with several operations.
689 </para>
690
691 <section><title>View Layer</title>
692 <para>
693 Version1.1+: This will automatically move the viewport and select the best zoom level to see the whole layer (i.e. all tracks, routes and waypoints).
694 </para>
695 </section>
696
697 <section><title>View</title>
698
699 <section id="track_view_all"><title>View All Tracks</title>
700 <para>
701 Version1.1+: This will automatically move the viewport and select the best zoom level to see the all the tracks in the layer (ignoring positions of any routes or waypoints).
702 </para>
703 </section>
704
705 <section id="route_view_all"><title>View All Routes</title>
706 <para>
707 Version1.4+: This will automatically move the viewport and select the best zoom level to see the all the routes in the layer (ignoring positions of any tracks or waypoints).
708 </para>
709 </section>
710
711 <section id="wp_view_all"><title>View All Waypoints</title>
712 <para>
713 Version1.1+: This will automatically move the viewport and select the best zoom level to see the all the waypoints in the layer (ignoring positions of any tracks or routes).
714 </para>
715 </section>
716
717 </section>
718
719 <section><title>Goto Center of Layer</title>
720 <para>
721 This will automatically move the viewport to see the whole layer (i.e. tracks, routes and waypoints). It does not adjust the zoom level.
722 </para>
723 </section>
724
725 <section id="wp_goto"><title>Goto Waypoint</title>
726 <para>
727 This opens a dialog box to enter a name of waypoint to search for. If it is found the viewport is centred on it.
728 </para>
729 <note>
730 <para>
731 Note this search is not very clever and only finds exact matches.
732 You are probably better off expanding the waypoint list and directly start typing, as mentioned above, which finds a match based on each letter typed.
733 </para>
734 </note>
735 </section>
736
737 <section><title>Export Layer</title>
738 <para>
739 The layer (all tracks, routes and waypoints) can be exported to a file GPX, GPSPoint, GPSMapper or Google's KML format.
740 </para>
741 <para>
742 Version1.1+: An individual track can be exported to a GPX file via the track menu.
743 </para>
744 </section>
745
746 <section id="finish_track"><title>Finish Track or Route</title>
747 <para>
748 This is only available when a track or route is being created by the <xref linkend="track_create"/> or <xref linkend="route_create"/> tools.
749 Selecting this option ends the creation of that individual track or route.
750 </para>
751 </section>
752
753 <section><title>New</title>
754 <section id="new_wp"><title>New Waypoint</title>
755 <para>
756 This opens a dialog box to create a new waypoint. A default name will be suggested and the default position is the center of the viewport.
757 </para>
758 </section>
759 <section id="new_track"><title>New Track</title>
760 <para>
761 This turns on the <xref linkend="track_create"/> tool.
762 </para>
763 </section>
764 <section id="new_route"><title>New Route</title>
765 <para>
766 This turns on the <xref linkend="route_create"/> tool.
767 </para>
768 </section>
769 </section>
770
771 <section><title>Geotag Images</title>
772 <para>
773 This starts the Geotagging Images dialog against all tracks in the layer.
774 See <link linkend="geotagging">Geotagging</link> for further detail.
775 </para>
776 </section>
777
778 <section><title>Acquire</title>
779 <para>
780 This offers the same choice from <xref linkend="acquire"/> methods as on the <guimenu>File</guimenu> menu.
781 However when invoked from here, the results will be stored in this layer (instead of creating a new one).
782 </para>
783 </section>
784
785 <section><title>Upload</title>
786
787 <section id="gps_upload"><title>Upload to GPS</title>
788 <para>
789 This opens a dialog to select the GPS Device and port to which the layer information will be transferred.
790 </para>
791 <para>
792 The types of GPS information (tracks, routes or waypoints) to be transferred can be selected.
793 </para>
794 <para>
795 Tracks, Routes or Waypoints that are invisible will not be transferred.
796 </para>
797 </section>
798
799 <section id="osm_upload" xreflabel="Upload To OSM" ><title>Upload To OSM</title>
800 <para>
801 This opens a dialog to upload all tracks and waypoints to <ulink url="http://openstreetmap.org/">OpenStreetMap</ulink> traces.
802 Useful if you are an OpenStreetMap contributor (you will need an OpenStreetMap account), these details can be stored in &appname; <xref linkend="prefs_osm"/>
803 </para>
804 <para>
805  &appname; allows you to edit a track, e.g. remove duplicate points, perhaps remove track points leading to your home and then upload it to OpenStreetMap.
806 </para>
807 <warning>
808 <para>
809 The password is transferred <emphasis role="bold">unencrypted</emphasis> in every request sent to the OpenStreetMap server. This is due to the use of OpenStreetMap's basic authentication method.
810 </para>
811 <para>Currently &appname; does not support the <ulink url="http://oauth.net/">OAuth</ulink> mechanism.</para>
812 </warning>
813 </section>
814
815 </section>
816
817 <section><title>Delete</title>
818 <para>Offers deletion of various parts of a TrackWaypoint layer:</para>
819 <section id="delete_all_tracks"><title>Delete All Tracks</title>
820 <para>Deletes all the tracks in this layer.</para>
821 </section>
822 <section id="delete_selection_tracks"><title>Delete Tracks from Selection</title>
823 <para>Opens a dialog with list of all the tracks from this layer to choose the ones to delete.</para>
824 </section>
825 <section id="delete_all_routes"><title>Delete All Routes</title>
826 <para>Deletes all the routes in this layer.</para>
827 </section>
828 <section id="delete_selection_routes"><title>Delete Routes from Selection</title>
829 <para>Opens a dialog with list of all the routes from this layer to choose the ones to delete.</para>
830 </section>
831 <section id="delete_all_waypoints"><title>Delete All Waypoints</title>
832 <para>Deletes all the waypoints in this layer.</para>
833 </section>
834 <section id="delete_selection_waypoints"><title>Delete Waypoints from Selection</title>
835 <para>Opens a dialog with list of all the waypoints from this layer to choose the ones to delete.</para>
836 </section>
837 </section>
838
839 <section><title>Filter</title>
840 <section><title>Simplify All Tracks</title>
841 <para>
842 This opens dialog to request the number of points each track will be simplified using <application>GPSBabel</application>. The result is put into a new layer. The simplification method removes points considered to be in a 'near straight line', thus reducing the number of points and attempting to keep the most important turning points.
843 </para>
844 </section>
845 <section><title>Remove Duplicate Waypoints</title>
846 <para>
847 Remove Duplicate Waypoints - fairly self explainatory, with the results created in a new layer.
848 </para>
849 <note>
850 <para>
851 However it only considers a precise position (waypoints only 1 metre away from each other are considered different) and also doesn't consider if the waypoints have different comments, symbols or images.
852 </para>
853 </note>
854 </section>
855 </section>
856
857 <section id="filter_with_track"><title>Filter With <emphasis>Trackname</emphasis></title>
858 <para>
859 This runs <application>GPSBabel</application> on the layer using information from a previously selected track (select via the track menu "Use With Filter" option) with the following command types:
860 </para>
861 <itemizedlist>
862 <listitem><para>Waypoints Inside This</para></listitem>
863 <listitem><para>Waypoints Outside This</para></listitem>
864 </itemizedlist>
865 <para>
866 The result is generated in a new Track/Waypoint layer.
867 </para>
868 </section>
869
870 <section><title>Geotag Images</title>
871 <para>
872 This starts the Geotagging Images dialog using the specific track.
873 See <link linkend="geotagging">Geotagging</link> for further detail.
874 </para>
875 </section>
876
877 </section><!-- End TRW Layer Options -->
878
879 <section><title>Track and Route Sublayer Options</title>
880 <para>Repeats options available at the TrackWaypoint level, but only those for tracks and routes:</para>
881 <itemizedlist>
882 <listitem><para>Finish Track or Route. Same as the layer <link linkend="finish_track">Finish Track or Route</link></para></listitem>
883 <listitem><para>New Track or Route. Same as the layer <link linkend="new_track">New Track</link> or <link linkend="new_route">New Route</link></para></listitem>
884 <listitem><para>View All Tracks or Routes. Same as the layer <link linkend="track_view_all">View All Tracks</link> or <link linkend="route_view_all">View All Routes</link></para></listitem>
885 <listitem><para>Delete All Tracks or Routes. Same as the layer <link linkend="delete_all_tracks">Delete All Tracks</link> or <link linkend="delete_all_routes">Delete All Routes</link></para></listitem>
886 <listitem><para>Delete Tracks or Routes from Selection. Same as the layer <link linkend="delete_selection_tracks">Delete Tracks from Selection</link> or <link linkend="delete_selection_routes">Delete Routes from Selection</link></para></listitem>
887 </itemizedlist>
888 </section>
889
890 <section><title>Track and Route Properties</title>
891 <para>
892 Show many useful statistics about a track or a route, including a
893 elevation-distance graph and a speed-time graph (if data is available).
894 You can click these graphs to jump to the point in the track. You can
895 also reverse it, delete duplicates, and split a track from its
896 component segments (discontinuous breaks in a track) into separate
897 tracks.
898 </para>
899 <para>
900 The following colors are used in the elevation-distance graph:
901 </para>
902 <variablelist>
903 <varlistentry>
904 <term><emphasis>Main</emphasis> colour - this is dependent on your Desktop theme - often blue by default</term>
905 <listitem><para>elevation data in graph</para></listitem>
906 </varlistentry>
907 <varlistentry>
908 <term>Yellow</term>
909 <listitem>
910 <para>no elevation data</para>
911 </listitem>
912 </varlistentry>
913 <varlistentry>
914 <term>Green</term>
915 <listitem>
916 <para>elevation data from DEM</para>
917 </listitem>
918 </varlistentry>
919 <varlistentry>
920 <term>Red</term>
921 <listitem>
922 <para>speed</para>
923 </listitem>
924 </varlistentry>
925 </variablelist>
926
927 </section>
928
929 <section><title>Track and Route Operations</title>
930
931 <section><title>Finish Track</title>
932 <para>
933 This is only available when a track is being created by the <xref linkend="track_create"/> tool.
934 Selecting this option ends the creation of the individual track.
935 </para>
936 </section>
937
938 <section><title>Goto</title>
939 <para>
940 This centers the viewport on the selected position on the track:
941 </para>
942 <itemizedlist>
943 <listitem><para>Startpoint</para></listitem>
944 <listitem><para>"Center" - the notional center from the bounds of the track</para></listitem>
945 <listitem><para>Endpoint</para></listitem>
946 <listitem><para>Version1.1+: Highest Altitude</para></listitem>
947 <listitem><para>Version1.1+: Lowest Altitude</para></listitem>
948 <listitem><para>Version1.1+: Maximum Speed (Not Available on Routes)</para></listitem>
949 </itemizedlist>
950 </section>
951
952 <section><title>View</title>
953 <para>
954 Version1.1+: This centers the viewport on the track and selects the best zoom level to see it.
955 </para>
956 </section>
957
958 <section><title>Combine</title>
959 <section><title>Merge By Time</title>
960 <para>
961 This operation repeatedly tries to merge the right-clicked track
962 with tracks in the same TrackWaypoint layer. The tracks which are
963 merged are those which have at least one trackpoint less than some
964 threshold time away. This way, if you somehow end up with lots of small
965 segments (say, caused by turning the GPS on and off) you can merge them
966 easily into one track.
967 </para>
968 <para>
969 This is not available on routes as they have no timestamps.
970 </para>
971 </section>
972
973 <section><title>Merge With Other Tracks</title>
974 <para>
975 This opens a dialog listing the other tracks in the same TrackWaypoint layer, from which one can select the other tracks to merge with.
976 </para>
977 </section>
978
979 <section><title>Merge Segments</title>
980 <para>
981 Combines track segments. Effectively removing track segment markers to leave one segment for the whole track.
982 </para>
983 </section>
984
985 <section><title>Append Track or Route</title>
986 <para>
987 Enable joining of a single track to the end of the current track.
988 This opens a dialog listing the other tracks in the same TrackWaypoint layer from which one can make the selection.
989 </para>
990 </section>
991 </section>
992
993 <section><title>Split</title>
994 <section><title>Split By Time</title>
995 <para>
996 This operation will split a single track into segments wherever the
997 time interval between successive trackpoints is larger than some
998 threshold. This is useful when processing raw NMEA GPS data, especially
999 taken over a long time.
1000 </para>
1001 <para>
1002 This is not available on routes as they have no timestamps.
1003 </para>
1004 </section>
1005
1006 <section><title>Split By Number of Points</title>
1007 <para>
1008 Version1.2+: This operation will split a single track into segments by the number of points specified.
1009 This can be useful with devices which may have limits on the number of points it supports.
1010 </para>
1011 </section>
1012
1013 <section><title>Split Segments</title>
1014 <para>
1015 Splits track segments into new tracks.
1016 </para>
1017 <para>
1018 This is not available on routes as they do not have route segments.
1019 </para>
1020 </section>
1021
1022 <section><title>Split at Trackpoint</title>
1023 <para>
1024 Splits the track at the currently selected trackpoint. This is only enabled when a trackpoint is selected.
1025 </para>
1026 </section>
1027 </section>
1028
1029 <section><title>Delete Points</title>
1030 <section><title>Delete Points With the Same Position</title>
1031 <para>
1032 Deletes subsequent points that have the same position (but have different timestamps).
1033 </para>
1034 </section>
1035 <section><title>Delete Points With the Same Time</title>
1036 <para>
1037 Deletes subsequent points that have the same time stamp (but may have different positions).
1038 </para>
1039 <para>
1040 This is not available on routes as they have no timestamps.
1041 </para>
1042 </section>
1043
1044 </section>
1045
1046 <section><title>Apply DEM data</title>
1047 <para>
1048 If any DEM data is loaded, this will apply the DEM data to give the track elevation data.
1049 </para>
1050 </section>
1051
1052 <section><title>Export Track as GPX</title>
1053 <para>
1054 Version1.1+: This allows exporting the track as a GPX file by opening a file save dialog.
1055 </para>
1056 </section>
1057
1058 <section><title>Extend Track End</title>
1059 <para>
1060 Changes the current tool to add trackpoints to the end of the track.
1061 </para>
1062 </section>
1063
1064 <section><title>Extend Using Route Finder</title>
1065 <para>
1066 Enables the Route Finder tool. Thus on a subsequent left click in the viewport, a route is calculated from the end of track to that point using the default route service and applied to the track.
1067 </para>
1068 </section>
1069
1070 <section><title>Upload</title>
1071
1072 <section><title>Upload to GPS</title>
1073 <para>
1074 Same as the layer <link linkend="gps_upload">Upload to GPS</link> command, but only applies to the track.
1075 </para>
1076 </section>
1077
1078 <section><title>Upload to OSM</title>
1079 <para>
1080 Same as the layer <link linkend="osm_upload">Upload to OSM</link> command, but only applies to the track.
1081 </para>
1082 </section>
1083
1084 </section>
1085
1086 <section><title>Use With Filter</title>
1087 <para>
1088 This selects the track to be used in the <link linkend="filter_with_track">Filter With <emphasis>Trackname</emphasis></link> feature.
1089 </para>
1090 <para>
1091 This is not available on routes.
1092 </para>
1093 </section>
1094
1095 <section><title>View Google Directions</title>
1096 <para>
1097 This option is only available on a track created using the Route Finder tool.
1098 </para>
1099 <para>
1100 Launch a web browser to see the Google directions page which yielded the route.
1101 </para>
1102 <note>
1103 <para>
1104 The record of the Google route is stored in the track's comment, so if the comment is changed (or the route was created by something other than the Route Finder tool) this will not work correctly.
1105 </para>
1106 </note>
1107 </section>
1108
1109 </section><!-- End Track Options -->
1110
1111 <section><title>Waypoint Sublayer Options</title>
1112 <para>Repeats options available at the TrackWaypoint level, but only those for waypoints:</para>
1113 <itemizedlist>
1114 <listitem><para>New Waypoint. Same as the layer <link linkend="new_wp">New Waypoint</link></para></listitem>
1115 <listitem><para>View All Waypoints. Same as the layer <link linkend="wp_view_all">View All Waypoints</link></para></listitem>
1116 <listitem><para>Goto Waypoint. Same as the layer <link linkend="wp_goto">Goto Waypoint</link></para></listitem>
1117 <listitem><para>Delete All Waypoints. Same as the layer <link linkend="delete_all_waypoints">Delete All Waypoints</link></para></listitem>
1118 <listitem><para>Delete Waypoints from Selection. Same as the layer <link linkend="delete_selection_waypoints">Delete Waypoints from Selection</link></para></listitem>
1119 </itemizedlist>
1120 </section>
1121
1122 <section><title>Waypoint Properties</title>
1123
1124 <para>
1125 This shows a dialog with detailed information for the waypoint. Many properties of the waypoint can changed here, such as the comment, the symbol used in drawing or the image (normally a photograph taken at this position) assiocated with it. When a waypoint has an image, a thumbnail of it is drawn in the viewport for the waypoint (in preference to the symbol).
1126 </para>
1127 <para>
1128 If the waypoint has an associated image, then the Geotag information may be updated, either with updating the file's modification timestamp or not.
1129 This can be useful when the waypoint has been moved.
1130 </para>
1131
1132 </section><!-- WP Prop END -->
1133
1134 <section><title>Waypoint Operations</title>
1135
1136 <section><title>Goto</title>
1137 <para>
1138 This centers the viewport on the selected waypoint.
1139 </para>
1140 </section>
1141
1142 <section><title>Visit Webpage</title>
1143 <para>
1144 If the waypoint's comment (or description) starts with <literal>http:</literal> then this option is available and allows launching a web browser to go to the webpage.
1145 </para>
1146 </section>
1147
1148 <section><title>Visit Geocache Webpage</title>
1149 <para>
1150 If the waypoint's name is in Geocache form (GCXXXXX) then this option is available and allows launching a web browser to go to the Geocache page.
1151 </para>
1152 </section>
1153
1154 <section><title>New Waypoint</title>
1155 <para>
1156 Same as the layer <link linkend="new_wp">New Waypoint</link>.
1157 </para>
1158 </section>
1159
1160 </section><!-- WP END -->
1161
1162 <section id="geotagging" xreflabel="Geotagging"><title>Version1.3+: Geotag Images</title>
1163 <para>
1164 This dialog allows geotagging images (normally taken with a digital camera) via interpolation against a specific track or all tracks in the TrackWaypoint layer - depending on how it is invoked.
1165 </para>
1166 <para>
1167 Images need to have an EXIF DATE_TIME_ORIGINAL (nearly always set by a camera). This timestamp is then used to find the location when the image(s) was taken by searching through the track(s) to find the nearest time - interpolating between points if necessary to set the location.
1168 </para>
1169 <note>
1170 <para>
1171 Generally it is good policy to synchronize your camera's clock with your GPS clock before taking photographs. However the times can be adjusted afterwards (if necessary) to take into consideration clock differences.
1172 </para>
1173 </note>
1174 <para>
1175 Various options allow control of how the geotagging process is performed:
1176 </para>
1177 <itemizedlist>
1178 <listitem><para>Images - Add the images used for geotagging</para></listitem>
1179 <listitem><para>Create Waypoints</para></listitem>
1180 <listitem><para>Overwrite Existing Waypoints</para></listitem>
1181 <listitem><para>Write EXIF</para></listitem>
1182 <listitem><para>Overwrite Existing GPS Information</para></listitem>
1183 <listitem><para>Interpolate Between Track Segments</para></listitem>
1184 <listitem><para>Image Time Offset - The number of seconds to ADD to the photos time to make it match the GPS data. Calculate this with (GPS - Photo). Can be negative or positive. Useful to adjust times when a camera's timestamp was incorrect.</para></listitem>
1185 <listitem><para>Image Timezone - The timezone that the used when the images were created. For example, if a camera is set to AWST or +8:00 hours. Enter +8:00 here so that the correct adjustment to the images' time can be made. GPS data is always in UTC.</para></listitem>
1186 </itemizedlist>
1187 </section>
1188
1189 </section><!-- TRW Layer END -->
1190
1191 <section id="GPS" xreflabel="GPS"><title>GPS Layer</title>
1192 <para>
1193 The GPS layer is responsible for uploading and downloading GPS data
1194 from a GPS device. It also is responsible for realtime GPS tracking.
1195 Expand the GPS layer in the layers panel to see the two <xref linkend="TrackWaypoint"/> layers it
1196 uses for uploading and downloading. To upload, download, or use
1197 realtime tracking, right-click the GPS layer and click the appropiate
1198 menu item.
1199 </para>
1200
1201 <section><title>Download</title>
1202 <para>
1203 To download data from the GPS, right-click the GPS layer and click <guimenuitem>Download from GPS</guimenuitem>.
1204 </para>
1205 </section>
1206
1207 <section><title>Upload</title>
1208 <para>
1209 To upload data to the GPS, first populate the GPS Upload child
1210 layer of the GPS layer (either by creating waypoints/tracks/routes in it, or
1211 copying and pasting or dragging waypoints/tracks/routes from another layer).
1212 Then right-click the GPS layer and click <guimenuitem>Upload to GPS</guimenuitem>.
1213 </para>
1214 </section>
1215
1216 <section><title>Realtime Tracking</title>
1217 <para>
1218 You must set up gpsd correctly or use a GPSD server and put the
1219 correct information in the GPS layer properties dialog. Then right-click
1220 the layer and select <guimenuitem>Start Realtime Tracking</guimenuitem>.
1221 </para>
1222 </section>
1223
1224 <section><title>Empty <emphasis>Item</emphasis></title>
1225 <para>
1226 There are several options to quickly delete a subsection of data:
1227 </para>
1228 <itemizedlist>
1229 <listitem><para>Empty Realtime</para></listitem>
1230 <listitem><para>Empty Upload</para></listitem>
1231 <listitem><para>Empty Download</para></listitem>
1232 <listitem><para>Empty All</para></listitem>
1233 </itemizedlist>
1234 </section>
1235
1236 </section><!-- End GPS -->
1237
1238 <section id="DEM" xreflabel="DEM"><title>DEM (Digital Elevation Model) Layer</title>
1239 <para>
1240 This layer provides elevation data from the <ulink url="http://www2.jpl.nasa.gov/srtm/">Shuttle Radar Topography Mission (SRTM)</ulink>
1241 </para>
1242 <para>
1243 Elevation data can be useful in planning trips, as you many wish to avoid/minimise the hills encountered. [OSM Cyclemap is also useful this way too]
1244 </para>
1245 <para>
1246 To download the data use the DEM Download tool (shown on the toolbar), and then click on a area of the viewport. Once files have been downloaded they can then be loaded from disk via the DEM properties in future application runs.
1247 </para>
1248 <para>
1249 The current data server is: <ulink url="http://dds.cr.usgs.gov/srtm/version2_1/">NASA STRM 2.1</ulink>.
1250 </para>
1251 <para>
1252 ATM &appname; does not auto download DEM data. If you want to get lots of data blocks, you may wish to use some other program get such as <application>curl</application> or <application>wget</application> to download them for an area.
1253 </para>
1254 <note>
1255 <para>
1256 Using many DEMs is CPU/memory intensive. Depending on your computer's capability, &appname; will be less responsive when about 50+ DEM blocks are loaded. It is probably unwise to attempt using 200+ blocks, so trying to use DEMs covering large countries/continents (USA, Australia etc...) is unlikely to work. In these conditions under Linux, &appname; may be automatically stopped by the "<ulink url="http://en.wikipedia.org/wiki/Out_of_memory/">OOM</ulink> Killer"
1257 </para>
1258 </note>
1259
1260 </section><!-- End DEM -->
1261
1262
1263 <section id="Maps" xreflabel="Maps"><title>Maps Layer</title>
1264 <para>
1265 This layer provides a single map resource, you may have multiple map layers but only top one (if enabled) will be visible.
1266 You will need an open internet connection when you are downloading maps, but once downloaded they are available from the hard disk cache. When map are avaliable from the disk cache it is much faster and can be used offline.
1267 </para>
1268 <para>
1269 Some maps are continually improving over time (e.g. OpenStreetMap) and so in order to not to have to (re)download the data all the time &appname; employs a timeout method - <emphasis>Tile Age</emphasis> to determine whether to access the server. However a forced refresh for the current view can be made via the <guilabel>Reload All Onscreen Maps</guilabel> option.
1270 </para>
1271 <para>
1272 Inbuilt maps include various <ulink url="http://en.wikipedia.org/wiki/TerraServer-USA">Terraserver</ulink> (Primarily USA coverage) and <ulink url="http://openstreetmap.org/">OpenStreetMap (OSM)</ulink> ones and more:
1273 </para>
1274 <itemizedlist>
1275 <listitem><para>Bing Bird's Eye (Aerial) Maps (&appname; Version1.2+)</para></listitem>
1276 <listitem><para>Terraserver Topos</para></listitem>
1277 <listitem><para>Terraserver Aerials</para></listitem>
1278 <listitem><para>Terraserver Urban Areas</para></listitem>
1279 <listitem><para>OpenStreetMap (Mapquest) - This is the default (&appname; Version1.3+)</para></listitem>
1280 <listitem><para>OpenStreetMap (Mapnik)</para></listitem>
1281 <listitem><para>OpenStreetMap (Cycle)</para></listitem>
1282 <listitem><para>OpenStreetMap (Transport) (&appname; Version1.3+)</para></listitem>
1283 <listitem><para>NASA BlueMarble</para></listitem>
1284 <listitem><para>SpotMap (&appname; Version1.1+)</para></listitem>
1285 </itemizedlist>
1286
1287 <para>
1288 &appname; can be configured to handle additional maps. See <xref linkend="extend_viking"/> for further detail.
1289 </para>
1290
1291 <section><title>Layer Operations</title>
1292 <section><title>Download Missing Onscreen Maps</title>
1293 <para>
1294 This requests map tiles for areas of the viewport that do not currently have one.
1295 </para>
1296 </section>
1297
1298 <section><title>Download New Onscreen Maps</title>
1299 <para>
1300 This requests map tiles only if the maps are older than the Tile Age preference.
1301 </para>
1302 </section>
1303
1304 <section><title>Reload All Onscreen Maps</title>
1305 <para>
1306 Force a refresh of all visible map tiles.
1307 </para>
1308 </section>
1309 </section>
1310
1311
1312 </section><!-- End Maps -->
1313
1314 <section id="Aggregate" xreflabel="Aggregate"><title>Aggregate Layer</title>
1315 <para>
1316 This layer is a container layer to hold other layers. There is always an initial and controlling <emphasis>Top Layer</emphasis> that can not be removed or renamed.
1317 </para>
1318 <para>
1319 This layer type is useful for grouping other layers, especially <xref linkend="TrackWaypoint"/> layers, in whatever categories are relevant to you: such as by activity, location or date.
1320 Here are some suggestions:
1321 <itemizedlist>
1322 <listitem><para>Hiking</para></listitem>
1323 <listitem><para>Mountain Biking</para></listitem>
1324 <listitem><para>Road Cycling</para></listitem>
1325 <listitem><para>Car Trips</para></listitem>
1326 <listitem><para>Sailing</para></listitem>
1327 <listitem><para>Holidays</para></listitem>
1328 <listitem><para>UK Points of Interest</para></listitem>
1329 <listitem><para>USA Points of Interest</para></listitem>
1330 <listitem><para>etc...</para></listitem>
1331 </itemizedlist>
1332 </para>
1333 <para>
1334 Thus one can have a list of all your tracks, but groups can be shown or not using the relevant layers visibility checkbox.
1335 </para>
1336
1337 <para>
1338 This layer only has one operation: <guilabel>New Layer</guilabel>
1339 </para>
1340
1341 <section><title>New Layer</title>
1342 <para>
1343 Add a new layer of the selected type.
1344 </para>
1345 </section>
1346
1347 </section><!-- End Agg -->
1348
1349 <section id="GeoRef" xreflabel="GeoRef"><title>GeoRef Layer</title>
1350 <para>
1351 This layer allows one to use any image as a map. You will need to tell it how to align the map to a position in the world and the scale of map.
1352 </para>
1353 <section><title>Layer Operations</title>
1354 <section><title>Zoom to Fit Map</title>
1355 <para>
1356 Automatically set a zoom level to see the entire map coverage.
1357 </para>
1358 </section>
1359
1360 <section><title>Goto Map Center</title>
1361 <para>
1362 Center the viewport on this map.
1363 </para>
1364
1365 </section>
1366 <section><title>Export to World File</title>
1367 <para>
1368 Opens a file save dialog to save the scale and position information as a <ulink url="http://en.wikipedia.org/wiki/World_file">World File</ulink>.
1369 </para>
1370 </section>
1371 </section>
1372
1373 </section><!-- End GeoRef -->
1374
1375 <section id="Coordinate" xreflabel="Coordinate"><title>Coordinate Layer</title>
1376 <para>
1377 This layer is allows drawing of grid lines on the viewport.
1378 </para>
1379 </section><!-- End Coord -->
1380
1381
1382 <section id="tools" xreflabel="Tools"><title>Tools</title>
1383 <para>
1384 &appname;'s mouse actions on the viewport are controlled by which tool is active. Only one tool can be active at a time. The default mode is pan.
1385 </para>
1386 <para>
1387 You can use the scroll wheel, the middle-click, the middle-click+drag to zoom, center map at position and pan respectively no matter what tool you are using.
1388 </para>
1389 <para>
1390 <keycap>Scroll</keycap>: zoom in and out keeping the mouse over same location
1391 </para>
1392 <para>
1393 <keycap>Ctrl-scroll</keycap>: pan north-south (also <keycap>Ctrl-up</keycap>, <keycap>Ctrl-down</keycap>)
1394 </para>
1395 <para>
1396 <keycap>Shift-scroll</keycap>: pan east-west (also <keycap>Ctrl-left</keycap>, <keycap>Ctrl-right</keycap>)
1397 </para>
1398 <para>
1399 <keycap>Ctrl-shift-scroll</keycap>: zoom in and out, without changing the center (also <keycap>Ctrl+</keycap>, <keycap>Ctrl-</keycap> [*not* KeyPad +/-])
1400 </para>
1401 <para>
1402 <keycap>Middle-click</keycap>: make the clicked point on the map the center
1403 </para>
1404 <para>
1405 <keycap>Middle-click</keycap> and drag: pan
1406 </para>
1407
1408 <section><title>Pan</title>
1409 <para>
1410 This is the default mode of operation for &appname;.
1411 </para>
1412 <para>
1413 This mode is entered by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/mover_22.png"/></guiicon>
1414 </para>
1415 <para>
1416 Pan moves the viewpoint. A single click centers the viewport at that point, whereas click and drag dynamically moves the view around.
1417 This is the default tool.
1418 </para>
1419 <para>
1420 This mode can also be entered by the keyboard shortcut <keycap>Ctrl+Shift+P</keycap>
1421 </para>
1422 </section>
1423
1424 <section><title>Zoom</title>
1425 <para>
1426 This mode is entered by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/zoom_18.png"/></guiicon>
1427 </para>
1428 <para>
1429 Zooms in and out on the clicked part of the map or by the selected area.
1430 </para>
1431 <para>
1432 This mode can also be entered by the keyboard shortcut <keycap>Ctrl+Shift+Z</keycap>
1433 </para>
1434 <para>
1435 <keycap>Ctrl</keycap> + left or right click: Zoom in/out and center the map on the clicked location
1436 </para>
1437 <para>
1438 <keycap>Shift</keycap> (and hold) + left mouse button: Draws a bounding box area on which to zoom in. The zoom action is performed when the left mouse button is released.
1439 </para>
1440 </section>
1441
1442 <section><title>Ruler</title>
1443 <para>
1444 This mode is entered by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/ruler_18.png"/></guiicon>
1445 </para>
1446 <para>
1447 The ruler is used to measure the bearing and distance between two points: Click on first point and then move the mouse point around - the values will be continually updated.
1448 A second click will <emphasis>freeze</emphasis> the ruler at that point.
1449 </para>
1450 <para>
1451 This mode can also be entered by the keyboard shortcut <keycap>Ctrl+Shift+U</keycap>
1452 </para>
1453 </section>
1454
1455 <section id="select" xreflabel="Select"><title>Version1.1+: Select</title>
1456 <para>
1457 This mode is entered by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/select_18.png"/></guiicon>
1458 </para>
1459 <para>
1460 The select tool allows one to choose any waypoint or track by clicking on it (or reasonably near) in the viewpoint.
1461 </para>
1462 <para>
1463 ATM to select a track one must actually click on a trackpoint, which is also selected.
1464 </para>
1465 <para>
1466 This mode can also be entered by the keyboard shortcut <keycap>Ctrl+Shift+S</keycap>
1467 </para>
1468 </section>
1469
1470 <section><title>TrackWaypoint Layer Tools</title>
1471 <para>
1472 You must have a <xref linkend="TrackWaypoint"/> Layer selected to use these tools.
1473 </para>
1474 <section id="createwptool" xreflabel="Create Waypoint"><title>Create Waypoint</title>
1475 <para>
1476 Enable this tool by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/addwp_18.png"/></guiicon>
1477 </para>
1478 <para>
1479 Left click will open the new waypoint dialog using the specified position.
1480 </para>
1481 </section>
1482
1483 <section id="track_create" xreflabel="Create Track"><title>Create Track</title>
1484 <para>
1485 Enable this tool by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/addtr_18.png"/></guiicon>
1486 </para>
1487 <para>
1488 Left click to create a new trackpoint. If it's the initial trackpoint you will be asked to enter a name for the track.
1489 If <keycap>Ctrl</keycap> is held at the same time, it will jump the new trackpoint position to a nearby existing trackpoint.
1490 Right click or <keycap>Backspace</keycap>: undo one point.
1491 </para>
1492 <para>
1493 Double click or <keycap>Escape</keycap>: to finish track creation.
1494 Finishing the track is also available via the right click <xref linkend="TrackWaypoint"/> and track menus.
1495 </para>
1496 <para>
1497 One must finish the current track to be able to create another track.
1498 </para>
1499 </section>
1500
1501 <section id="route_create" xreflabel="Create Route"><title>Create Route</title>
1502 <para>
1503 Enable this tool by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/vik_new_route_18.png"/></guiicon>
1504 </para>
1505 <para>
1506 This operates in exactly the same way as the <link linkend="track_create">Create Track</link> above.
1507 </para>
1508 <para>
1509 One must finish the current route to be able to create another route.
1510 </para>
1511 </section>
1512
1513 <section><title>Edit Waypoint</title>
1514 <para>
1515 Enable this tool by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/edwp_18.png"/></guiicon>
1516 </para>
1517 <para>
1518 Left Click/drag: select/move a waypoint.
1519 If <keycap>Ctrl</keycap> is held at the same time, it will jump the waypoint position to a nearby existing trackpoint.
1520 If <keycap>Shift</keycap> is held at the same time, it will jump the waypoint position to a nearby existing waypoint.
1521 </para>
1522 <para>Right-click on waypoint: opens a menu with waypoint actions (the
1523 same menu accessed by right-clicking the waypoint in the layers panel)
1524 </para>
1525 </section>
1526
1527 <section><title>Edit Trackpoint</title>
1528 <para>
1529 Enable this tool by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/edtr_18.png"/></guiicon>
1530 </para>
1531 <para>
1532 Left click near a trackpoint (in screen pixel terms) to bring up the Track Point Edit dialog on that trackpoint.
1533 Whilst the edit dialog is already open, left click again and drag enables moving of the trackpoint.
1534 If <keycap>Ctrl</keycap> is held at the same time, it will jump the new trackpoint position to a nearby existing trackpoint.
1535 </para>
1536 <para>
1537 Options in the Track Point Edit dialog include: change position, go to next, go to previous, delete, insert (halfway to next trackpoint) and splitting the track.
1538 </para>
1539 </section>
1540
1541 <section><title>Show Picture</title>
1542 <para>
1543 Enable this tool by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/showpic_18.png"/></guiicon>
1544 </para>
1545 <para>
1546 Opens an image viewer with the picture associated with the waypoint.
1547 By default this uses the default system image viewer.
1548 For Linux you can override this with the setting in the <xref linkend="prefs_external"/>
1549 </para>
1550 </section>
1551
1552 <section id="route_finder" xreflabel="Route Finder"><title>Route Finder</title>
1553 <para>
1554 Enable this tool by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/route_finder_18.png"/></guiicon>
1555 </para>
1556 <para>Creates a track using default routing engine between two points.
1557 Requires an internet connection. Click one point, then click another to
1558 create a track.
1559 </para>
1560 <para>
1561 Right-click: undo last routing (only track removed - not any waypoints)
1562 </para>
1563 <para>
1564 <keycap>Ctrl</keycap>: continue previous track
1565 </para>
1566 </section>
1567
1568 </section>
1569
1570 <section><title>Georef Map Layer Tools</title>
1571 <para>
1572 You must have a <xref linkend="GeoRef"/> Map Layer selected to use these tools.
1573 </para>
1574 <section><title>Georef zoom</title>
1575 <para>
1576 Enable this tool by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/geozoom_18.png"/></guiicon>
1577 </para>
1578 <para>Changes the zoom level of the georeferenced map and changes the
1579 &appname; zoom level accordingly. Useful if you are trying to match GPS
1580 data to a georeferenced map.
1581 </para>
1582 </section>
1583
1584 <section><title>Georef move</title>
1585 <para>
1586 Enable this tool by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/geomove_18.png"/></guiicon>
1587 </para>
1588 <para>
1589 Drag to move the georeferenced map.
1590 </para>
1591 </section>
1592 </section>
1593
1594 <section id="map_tool_dl" xreflabel="Map Download"><title>Map Download</title>
1595 <para>
1596 You must have a <xref linkend="Maps"/> Layer selected to use this.
1597 </para>
1598 <para>
1599 Enable this tool by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/mapdl_18.png"/></guiicon>
1600 </para>
1601 <para>
1602 Click to download a single tile. Drag to download tiles in the dragged rectangle area.
1603 </para>
1604 <para>
1605 Right-click to redownload tiles via the selected method. Right-click and drag to redownload tiles in the dragged rectangle area by the selected method.
1606 The possible methods to redownload one or more tiles are:
1607 </para>
1608 <para>
1609 <itemizedlist>
1610 <listitem><para>Bad - Only if the tile is corrupt in some way or missing, then this will download a new copy</para></listitem>
1611 <listitem><para>New - Refresh the tile according to the local map cache and if server has a newer version</para></listitem>
1612 <listitem><para>All - Redownload the tile</para></listitem>
1613 </itemizedlist>
1614 </para>
1615 <formalpara><title>Map Tile Information</title>
1616 <para>
1617 By right clicking on viewport you can see the tile properties of the that location for the current map layer and current zoom level.
1618 This includes the remote source URL for the tile and the cached version on the local filesystem with timestamp details.
1619 </para>
1620 </formalpara>
1621 <para>
1622 <figure>
1623 <title>Map Tile Info Dialog: Example</title>
1624 <screenshot>
1625   <graphic format="PNG" fileref="figures/map_tile_info_dialog.png"/>
1626 </screenshot>
1627 </figure>
1628 This is using MapQuest at &appname; zoom level 128 over the Isle of Wight, UK.
1629 </para>
1630 </section>
1631
1632 <section><title>DEM Download</title>
1633 <para>
1634 You must have a <xref linkend="DEM"/> Layer selected to use this.
1635 </para>
1636 <para>
1637 Enable this tool by clicking on the toolbar icon: <guiicon><inlinegraphic fileref="figures/demdl_18.png"/></guiicon>
1638 </para>
1639 <para>
1640 Click to download and import a DEM file.
1641 </para>
1642 </section>
1643
1644 <section><title>Webtools</title>
1645 <para>
1646 Many services are available only via a web browser (Google Maps, OpenStreetMap Potlach editor, etc.).
1647 </para>
1648 <para>
1649 Jumping from &app; to such service can become annoying.
1650 </para>
1651 <para>
1652 &appname; allows you to open such service directly at the position currently viewed in &app;.
1653 </para>
1654 <para>
1655 This feature is called <guilabel>Webtools</guilabel>. It is also known as External Tools.
1656 </para>
1657 </section>
1658
1659 </section>
1660
1661 <!-- Preferences -->
1662 <section id="prefs" xreflabel="Preferences"><title>Preferences</title>
1663 <section><title>General</title>
1664 <section><title>Localisation</title>
1665 <para>You can select units displayed by &appname; to best fit your usage.</para>
1666 <figure>
1667 <title>Properties dialog: units part</title>
1668 <screenshot>
1669   <graphic format="PNG" fileref="figures/properties_units.png"/>
1670 </screenshot>
1671 </figure>
1672 <para>Concerning degrees, you can select the way to display them:
1673 <variablelist>
1674 <varlistentry>
1675 <term>DDD</term><listitem><para>decimal degree</para></listitem>
1676 </varlistentry>
1677 <varlistentry>
1678 <term>DMM</term><listitem><para>partial sexagesimal display: degrees, minutes and decimal part of minutes</para></listitem>
1679 </varlistentry>
1680 <varlistentry>
1681 <term>DMS</term><listitem><para>sexagesimal display: degrees, minutes and seconds</para></listitem>
1682 </varlistentry>
1683 </variablelist>
1684 </para>
1685 <figure>
1686 <title>Properties dialog: degree display options</title>
1687 <screenshot>
1688   <graphic format="PNG" fileref="figures/properties_degree.png"/>
1689 </screenshot>
1690 </figure>
1691 </section>
1692 <section><title>Waypoint Icon Size</title>
1693 <para>An option exists to control the icon (symbol) size used for waypoints
1694 </para>
1695 </section>
1696 <section><title><emphasis>Home</emphasis> Default Location: Latitude and Longitude</title>
1697 <para>You can set the <emphasis>Home</emphasis> location directly by inputting the latitude and longitude in decimal degrees.
1698 </para>
1699 </section>
1700 <section><title>Tile's age</title>
1701 <para>This age is used to decided wether or not a new request to tile server must be done.
1702 </para>
1703 <para>Changing this value, you will increase or decrese the network load.</para>
1704 </section>
1705 <section><title>Default maplayer directory</title>
1706 <para>This property sets the default directory of the tiles cache.
1707 This value is used when you create a new map layer.
1708 </para>
1709 <para>You are still able to change this value in each map layer properties.</para>
1710 </section>
1711 <section><title>Map Cache Memory Size</title>
1712 <para>This controls the amount of maps that are stored in memory, rather than having to reread from disk.
1713 Generally if you have a system with lots of memory it's recommended to increase this value.
1714 </para>
1715 </section>
1716 </section>
1717
1718 <section id="prefs_external" xreflabel="Export/External Preferences"><title>Export/External</title>
1719 <section><title>KML Export Units</title>
1720 <para>Allows setting the units used when saved as the KML file type, such as Metric or Statue units</para>
1721 </section>
1722 <section><title>Image Viewer (Not Windows)</title>
1723 <para>Allows setting the program used to view images associated with Waypoints.</para>
1724 <para>By default this is set to <application>xdg-open</application> which should open the system's default image viewer, however this can be overridden with this setting.</para>
1725 <para>Note: for Windows systems, viewing images associated with Waypoints always uses the system's default image viewer.</para>
1726 </section>
1727 <section><title>External GPX programs</title>
1728 <para>Allows setting the programs invoked via the <xref linkend="TrackWaypoint"/> Layer menu <menuchoice><guimenu>Export Layer</guimenu><guisubmenu>Open With 'program'</guisubmenu></menuchoice></para>
1729 <para>Two options are given so that it can be configured for various uses such as:</para>
1730 <itemizedlist>
1731 <listitem><para>An OSM editor (default)</para></listitem>
1732 <listitem><para>Some other user defined program</para></listitem>
1733 </itemizedlist>
1734 </section>
1735 </section>
1736
1737 <section id="prefs_osm" xreflabel="OpenStreetMap Traces Preferences"><title>OpenStreetMap Traces</title>
1738 <section><title>OSM Username + Password</title>
1739 <para>Store your OSM details here, so that you don't need to enter it in every time in the <xref linkend="osm_upload"/> procedure.</para>
1740 <warning>
1741 <para>
1742 Your OSM password will be stored in plain text.
1743 </para>
1744 </warning>
1745 </section>
1746 </section>
1747
1748 <section id="prefs_routing" xreflabel="Routing Preferences"><title>Routing</title>
1749 <section><title>Routing engine</title>
1750 <para>You can select the routing engine used by default, ie by features that do not propose a live selection, like <xref linkend="route_finder"/>.</para>
1751 </section>
1752 </section>
1753
1754 <section id="prefs_startup" xreflabel="Startup Preferences"><title>Startup</title>
1755 <para>Naturally since these preferences effect the startup, the values will not be used until &appname; is restarted.</para>
1756 <section><title>Restore Window Setup</title>
1757 <para>When this is enabled, the main window size and layout (such as whether the statusbar or layers panel are shown) is restored to the values from last use.</para>
1758 </section>
1759 <section><title>Default Map Layer</title>
1760 <para>When this is enabled, a map layer is automatically added whenever &appname; is opened and a &appname; file is not to be loaded.</para>
1761 <para>The map layer used is defined by the map layer's default values.</para>
1762 </section>
1763 <section><title>Startup Method</title>
1764 <para>Enables selection of how the startup position should be determined.</para>
1765 <itemizedlist>
1766 <listitem><para>Home Location (default) - Position as set by the <guilabel>Set the Default Location</guilabel></para></listitem>
1767 <listitem><para>Last Location - Uses the last position viewed on the viewport</para></listitem>
1768 <listitem><para>Specified File - Load the file as specified below</para></listitem>
1769 <listitem><para>Auto Location - Use the web service <ulink url="http://www.hostip.info">hostip.info</ulink> to attempt to determine your location via IP lookup</para></listitem>
1770 </itemizedlist>
1771 </section>
1772 <section><title>Startup File</title>
1773 <para>Loads this specified file when the Startup method is set to <guilabel>Specified File</guilabel></para>
1774 </section>
1775 <section><title>Check For New Version</title>
1776 <para>Periodically (no more than once every 14 days), check to see if there is a new version of &appname; available.</para>
1777 </section>
1778 </section>
1779
1780 </section>
1781
1782 <!-- HOWTOS-->
1783 <section><title>Howto's</title>
1784 <section id="howto_start"><title>Getting Started</title>
1785 <para>
1786 &appname; from version 1.5 has several features to ease the start up process.
1787 On the very first run, you will be asked if you want to enable these features which make use of an Internet connection.
1788 If you select no or you have upgraded from an earlier version you can choose to enable any of the startup options via the <xref linkend="prefs_startup"/>.
1789 </para>
1790 <para>
1791 Some other general use cases for using &appname;, are as follows:
1792 </para>
1793 <section><title>Go to an area of interest</title>
1794 <para>
1795 &appname;'s default location is a Manhatten, New York, USA, so you may need to pick another place that interests you - such as where you live.
1796 </para>
1797 <procedure>
1798 <title>Method A</title>
1799 <step>
1800 <para>
1801   Use the online location address/place search.
1802 </para>
1803 <para>
1804   Use the <guibutton>Go to Location</guibutton> toolbar button or from the menus
1805   <menuchoice><guimenu>View</guimenu><guimenuitem>Go to Location</guimenuitem></menuchoice>.
1806   You can change the search location provider if desired.
1807   Enter the name of place you wish to go to (you may need to specify the country to refine the search).
1808   Also you can enter a post code or a ZIP code instead.
1809 </para>
1810 <note>
1811         <para>You will need an internet connection for this search to work</para>
1812 </note>
1813 </step>
1814 </procedure>
1815 <procedure>
1816 <title>Method B</title>
1817 <step>
1818 <para>
1819         If you know the coordinates of where you want to view:
1820 </para>
1821 <para>
1822 Use <menuchoice><guimenu>View</guimenu></menuchoice> and select from either <menuchoice><guimenu>Go to Lat/Lon</guimenu></menuchoice> or <menuchoice><guimenu>Go to UTM</guimenu></menuchoice> and then enter in the specific coordinates.
1823 </para>
1824 </step>
1825 </procedure>
1826 <procedure>
1827 <title id="method_c">Method C</title>
1828 <step>
1829 <para>Use the GPS Layer or <menuchoice><guimenu>File</guimenu><guimenuitem>Acquire</guimenuitem><guimenuitem>From GPS</guimenuitem></menuchoice>
1830 to load data directly from your GPS into &appname;.
1831 </para>
1832 <para>You can specify the types of data to acquire: Tracks, Routes and/or Waypoints.
1833 </para>
1834 <note>
1835 <para>You must have write permission to the port used. For <trademark>Unix</trademark> like OS:</para>
1836 <itemizedlist>
1837         <listitem><para>/dev/ttyS0 is the first serial port</para></listitem>
1838         <listitem><para>/dev/ttyUSB0 is the first USB port</para></listitem>
1839         <listitem><para>usb: is any USB port</para></listitem>
1840 </itemizedlist>
1841 <para>Depending on your distribution only one of the USB port types may work</para>
1842 <para>For <trademark>Windows</trademark>:</para>
1843 <itemizedlist>
1844         <listitem><para>com1: is the first serial port</para></listitem>
1845         <listitem><para>usb: is any USB port</para></listitem>
1846 </itemizedlist>
1847 </note>
1848 <note>
1849         <para>The GPS devices supported are those supported by <application>GPSBabel</application>.</para>
1850         <para>Garmin and Magellan GPS devices supported by all versions, later versions of GPSBabel support more devices such as DeLorme and Navilink.</para>
1851 </note>
1852 </step>
1853 </procedure>
1854 <procedure>
1855 <title>Method D</title>
1856 <step>
1857 <para>
1858 Get data from files in GPX or KML format, which can be opened directly.
1859 Use <menuchoice><guimenu>File</guimenu><guimenuitem>Open</guimenuitem></menuchoice>
1860 </para>
1861 <para>
1862 Other formats can be imported that are supported by GPSBabel.
1863 <menuchoice><guimenu>File</guimenu><guimenuitem>Acquire</guimenuitem><guimenuitem>Import File With GPSBabel...</guimenuitem></menuchoice>
1864 </para>
1865 <note>
1866 <para>
1867 The viewport will be automatically moved and resized to view the contents of the file.
1868 </para>
1869 </note>
1870 </step>
1871 </procedure>
1872 </section>
1873 <section><title>Add a Map Layer</title>
1874 <para>
1875 Use <menuchoice><guimenu>Layers</guimenu><guimenuitem>New Map Layer</guimenuitem></menuchoice>, and choose a suitable cache directory
1876 where you would like to store your tracks and click <guilabel>OK</guilabel>. Zoom to a
1877 comfortable level (I suggest 4 mpp) by clicking the left and right
1878 mouse buttons on the gray area where your tracks are. Now from the menu
1879 choose the <xref linkend="map_tool_dl"/> Tool. Click where you would like to download a
1880 map. Regardless of what tool you are using, the middle mouse button
1881 always pans. </para>
1882 <note>
1883 <para>
1884 You need an open internet connection when you are downloading maps.
1885 </para>
1886 </note>
1887 <para>
1888 If you can no longer see your tracks or waypoints and only the map,
1889 it is because the layer named <emphasis>Map</emphasis> is <emphasis>ABOVE</emphasis> your TrackWaypoint layer that your GPS data is in.
1890 This means that it will be drawn last and on top of the other <xref linkend="gc_layers"/>.
1891 Look at the  <xref linkend="gc_layers_panel"/> to the left which shows this order.
1892 Select the Map layer from the list and click the down arrow button beneath the list until the Map layer is below the TrackWaypoint layer.
1893 Your tracks will now be drawn over the map.
1894 </para>
1895 </section>
1896
1897 <section><title>Set Your Home Location</title>
1898 <para>
1899         You can save the current center position of the viewport as the default location AKA the Home Location by
1900         <menuchoice><guimenu>Edit</guimenu><guimenuitem>Set the Default Location</guimenuitem></menuchoice>.
1901 </para>
1902 <para>
1903         Then at any time you can return to this place by clicking on the <guibutton>Home</guibutton> icon on the toolbar.
1904 </para>
1905 <para>
1906     You can also set the default location via specifing the exact latitude and longitude in the <xref linkend="prefs"/>.
1907 </para>
1908 </section>
1909
1910 </section>
1911 <section><title>From 1st startup to GPS track (including offline maps)</title>
1912 <para>
1913 The first you'll see is an empty map, because &appname; in its default configuration will download maps only on demand.
1914 Before fetching unneeded data, one can position to a location of interest, e.g. Stuttgart: <menuchoice><guimenu>View</guimenu><guimenuitem>Go to Location</guimenuitem></menuchoice>, enter <userinput>Stuttgart</userinput>.
1915 </para>
1916 <section><title>Fetching the maps</title>
1917 <para>
1918 <emphasis role="bold">Map</emphasis>
1919 </para>
1920 <procedure>
1921 <step><para><menuchoice><guimenu>Layers</guimenu><guimenuitem>New Map Layer</guimenuitem></menuchoice></para></step>
1922 <step><para>in the layer properties dialogue choose e.g. <guilabel>OpenStreetMap (Mapnik)</guilabel>.</para></step>
1923 <step>
1924 <para>For the moment, we keep the default <guilabel>Maps Directory</guilabel> (the directory in
1925 which the maps will be stored and can be used for offline usage).</para>
1926 </step>
1927 <step>
1928 <para>Check <guilabel>Autodownload maps</guilabel> and keep the zoom level as <guilabel>Use Viking
1929 Zoom Level</guilabel>.</para>
1930 <note>
1931 <para>
1932 however, that these settings will play an important
1933 role in the pre-fetch for offline usage discussed later
1934 </para>
1935 </note>
1936 </step>
1937 </procedure>
1938 <para>You'll see a map of Stuttgart. Using the mouse wheel, you can
1939 zoom in and out. The maps for the choosen resolution will be downloaded
1940 automatically.
1941 </para>
1942 <para>
1943 <emphasis role="bold">DEM Layer (Height Map)</emphasis>
1944 </para>
1945 <procedure>
1946 <step><para>Zoom out to 512.</para></step>
1947 <step><para><menuchoice><guimenu>Layers</guimenu><guimenuitem>New DEM Layer</guimenuitem></menuchoice></para></step>
1948 <step><para>Keep the download source as is (SRTM Global 90m), hit <guilabel>OK</guilabel>.</para></step>
1949 </procedure>
1950
1951 <para>In the layer listing on the left, the <xref linkend="DEM"/> layer should reside
1952 above the map layer. If this is not the case, highlight the DEM layer
1953 an shift it one up (using the arrow up button).
1954 </para>
1955 <procedure>
1956 <step><para>highlight the DEM layer in the layer listing on the left</para></step>
1957 <step><para>in the toolbar, check DEM layer download/import (the last symbol)</para></step>
1958 <step><para>a left-click in the map window should then fetch the DEM data</para></step>
1959 </procedure>
1960 <para>
1961 This might take some time.
1962 </para>
1963 <para>
1964 Sometimes, a tile does not show up correctly (you might see only a
1965 black frame in the map window) because it got corrupted during
1966 transfer. In order to correct this, you can delete the corresponding
1967 datafile in the cache. <programlisting> right-click the DEM layer properties</programlisting>
1968 </para>
1969 <para>
1970 The <guilabel>DEM Files</guilabel> listing allows you to delete the specific tiles (alternatively do this from the command line).
1971 </para>
1972 <para>
1973 You can also alter the Min. and Max. elevation in this dialogue.
1974 </para>
1975
1976 </section>
1977 <section><title>GPS Track with Height Profile</title>
1978 <procedure>
1979 <step><para>Uncheck the <xref linkend="DEM"/> layer (the map is shown again)</para></step>
1980 <step>
1981         <para><menuchoice><guimenu>Layers</guimenu><guimenuitem>New TrackWaypoint Layer</guimenuitem></menuchoice></para>
1982         <para>Ensure the new track layer is above the map layer.</para>
1983 </step>
1984 <step><para>Expand the <xref linkend="TrackWaypoint"/> layer, select <guimenuitem>Tracks</guimenuitem></para></step>
1985 <step><para>In the tools menu choose <guiicon><inlinegraphic fileref="figures/addtr_18.png"/></guiicon> <guibutton>Create Track</guibutton>
1986 </para></step>
1987 <step><para>Leftclick in the map window, enter a name</para></step>
1988 <step>
1989         <para>Click several times to generate a track (a right-click removes the last point).</para>
1990         <para>Height data is set automatically since DEM data is available</para>
1991 </step>
1992 <step><para>Expand tracks in the layer menu, your track should show up, select it</para></step>
1993 <step><para>Right click your track, select <guimenuitem>Properties</guimenuitem></para></step>
1994 <step><para>Click the tab <guilabel>Elevation-distance</guilabel> - enjoy the plot</para></step>
1995 </procedure>
1996 <para>
1997 In order to save this setting for later usage
1998 </para>
1999 <procedure>
2000 <step><para>click <guilabel>OK</guilabel> in the <guilabel>Track Properties</guilabel> dialog</para></step>
2001 <step><para><menuchoice><guimenu>File</guimenu><guimenuitem>Save As</guimenuitem></menuchoice>, choose a name (you can open this <emphasis>view</emphasis> later via <menuchoice><guimenu>file</guimenu><guimenuitem>Open</guimenuitem></menuchoice>).</para></step>
2002 </procedure>
2003
2004 </section>
2005 <section><title>Usecase: offline data for holiday</title>
2006 <para>
2007 Suppose you want to have the <xref linkend="Maps"/> and <xref linkend="DEM"/> data offline for your holiday in Italy near Bologna.
2008 </para>
2009 <procedure>
2010 <step><para>Start a new &appname; session.</para></step>
2011 <step><para><menuchoice><guimenu>View</guimenu><guimenuitem>Go to Location</guimenuitem></menuchoice>, enter Bologna</para></step>
2012 <step><para><menuchoice><guimenu>Layers</guimenu><guimenuitem>New Map Layer</guimenuitem></menuchoice></para></step>
2013 <step><para>Choose e.g. <guilabel>OpenStreetMap (mapnik)</guilabel>.</para></step>
2014 <step><para>adapt the <guilabel>maps directory</guilabel> e.g. to <filename>/home/user/.viking-map-holiday/</filename>.
2015 This allows you to delete the map stuff after holiday without purging the rest of your maps.
2016 </para></step>
2017 <step><para>check <guilabel>autodownload map</guilabel></para></step>
2018 <step><para>keep <guilabel>viking zoom level</guilabel></para></step>
2019 <step><para>zoom out to 1024</para></step>
2020 <step><para>add a <xref linkend="DEM"/> layer (as discussed above)</para></step>
2021 <step><para>download the DEM data</para></step>
2022 </procedure>
2023 <para>In the &app; version discussed here, the DEM data automatically
2024 are stored in <filename>/home/user/.viking-maps/</filename>. You can move the corresponding
2025 tiles into <filename>.viking-map-holiday/</filename> if you like.
2026 </para>
2027 <para>
2028 <emphasis role="bold">Download map data for all zoom levels</emphasis>
2029 </para>
2030 <procedure>
2031 <step><para>uncheck the DEM layer for the map to show up</para></step>
2032 <step><para>navigate the map to be centered at Bologna</para></step>
2033 <step><para>choose the zoom such, that all regions of interest are displayed in the map window (e.g. 1024)</para></step>
2034 <step>
2035 <para>follow this sequence until you have all tiles for all zoom levels you need</para>
2036 <substeps>
2037 <step><para>right-click the map layer properties</para></step>
2038 <step><para>set the zoomlevel explicitely one below the last (in the first cycle 512), hit OK</para></step>
2039 <step><para>right click the map layer  <guimenuitem>Download Missing Onscreen Maps</guimenuitem></para></step>
2040 <step><para>wait until all tiles for that resolution have been downloaded</para></step>
2041 </substeps>
2042 </step>
2043 </procedure>
2044 <para>This may take some time and some hard disk capacity.</para>
2045 <para>
2046 Do not forget to save your configuration (as discussed above).
2047 </para>
2048
2049 </section>
2050
2051 </section>
2052 <section><title>OpenStreetMap project</title>
2053 <para>
2054 <ulink url="http://openstreetmap.org/">OpenStreetMap (OSM)</ulink> is a collaborative project to create a free editable map of the world.
2055 One of sources of data for this project is GPS tracks.
2056 &appname; supports this project via the GPS Traces methods, both uploading and downloading such data.
2057 </para>
2058 <para>
2059 Also see <ulink url="http://wiki.openstreetmap.org/wiki/API_v0.6#GPS_Traces"/> for further detail.
2060 </para>
2061 <section><title>Uploading data to OpenStreetMap</title>
2062 <para>
2063 It is possible to upload data directly from &appname; to OpenStreetMap.
2064 </para>
2065 <formalpara>
2066 <title>Upload a layer</title>
2067 <para>
2068 One solution is to upload whole a <xref linkend="TrackWaypoint"/> layer. To do this,
2069 simply select the layer and right click on it. Then, select <guimenuitem>Upload to
2070 OSM</guimenuitem>.
2071 </para>
2072 </formalpara>
2073 <formalpara>
2074 <title>Upload a single track</title>
2075 <para>Another solution is to upload an individual track. Simply select the track and right click on it.
2076 Then select <guimenuitem>Upload to OSM</guimenuitem>.
2077 </para>
2078 </formalpara>
2079 <formalpara>
2080 <title>Fill in the form</title>
2081 <para>
2082 In both cases, &appname; will retain some information.
2083 The email field is the email you used to subscribed into OpenStreetMap.
2084 The password field is the password you used with this account.
2085 The filename is the name you want your upload has on the server. This information is displayed by the osm server.
2086 The description is some descriptive information.
2087 The tags field is a white separated list of tags.
2088 </para> 
2089 </formalpara>
2090 </section>
2091
2092 <section id="osm_dl" xreflabel="OpenStreetMap Traces Download"><title>Downloading Traces from OpenStreetMap</title>
2093 <para>
2094 It is possible to download GPS traces directly from OpenStreetMap into &appname;.
2095 This feature can be really useful for checking existing data before uploading new ones.
2096 </para>
2097 <formalpara>
2098 <title>Download all visible tracks</title>
2099 <para>One solution is to select
2100 <menuchoice>
2101 <guimenu>File</guimenu>
2102 <guisubmenu>Acquire</guisubmenu>
2103 <guimenuitem>OSM traces...</guimenuitem>
2104 </menuchoice>.
2105 Each request can get up to 5,000 points.
2106 The dialog box allows setting which group of 5,000 points to get. These groups are known as <emphasis>Page Numbers</emphasis> which start at 0.
2107 Increasing the page number parameter allows one to request the subsequent sets of point groups.
2108 </para>
2109 </formalpara>
2110 </section>
2111 <section id="osm_my_dl" xreflabel="OpenStreetMap My Traces Download"><title>Downloading Your Own Traces from OpenStreetMap</title>
2112 <para>
2113 It is possible to download any of <emphasis>your personal</emphasis> GPS traces previously uploaded to OpenStreetMap into &appname;.
2114 </para>
2115 <para>
2116 You will need to provide your OSM username and password to get the list of your OSM Traces.
2117 From this list you can select which traces to retrieve.
2118 This list can be sorted on each column so that it easier to find an individual trace or select a group of traces by similar properties.
2119 </para>
2120 </section>
2121
2122 </section>
2123
2124 <section><title>Geotagging</title>
2125 <para>
2126         This assumes you already have a <xref linkend="Maps"/> layer enabled for ease of use (if not see above to get one).
2127 </para>
2128 <section><title>Manual Positioning</title>
2129 <para>
2130         This is useful for instances when you already know exactly where the image was taken (no need for tracklog).
2131         Or maybe you want to adjust an automatically generated waypoint for the position of the subject of the image rather than the location that the photograph is taken from.
2132         ATM this process only works on an individual image, so it will be tedious for handling lots of images.
2133 </para>
2134 <para>
2135         First create a <xref linkend="TrackWaypoint"/> layer or use an existing one; and select it in the <xref linkend="gc_layers_panel"/>.
2136         NB Make sure this layer is above the map layer in the Layers Panel list.
2137         Create a new waypoint (or move an existing one) to exact location desired:
2138 <itemizedlist>
2139         <listitem><para>Select the <xref linkend="createwptool"/> tool, then left click on the map at the location desired, choosing an image to associate with it in the new waypoint dialog</para></listitem>
2140         <listitem><para>Select the <xref linkend="select"/> tool, then left click on waypoint to be moved. Left click again and drag the waypoint to the location desired</para></listitem>
2141 </itemizedlist>
2142         Then using the Select tool left click on waypoint to select it, then right click to access the Waypoint properties menu, then choose
2143         <menuchoice><guimenu>Update Geotag on Image</guimenu><guisubmenu>Update</guisubmenu></menuchoice>
2144 </para>
2145 <para>
2146         The <guilabel>Update Geotag on Image</guilabel> options are only available when a waypoint has an image associated with it.
2147 </para>
2148 </section>
2149
2150 <section><title>Automatic Positioning Against a Tracklog</title>
2151 <para>
2152         First you will need a tracklog with timestamps in it. Either load one from a previously saved file or freshly acquired from a GPS device -
2153         see <link linkend="howto_start">Getting Started</link>.
2154         It helps if this is the track that was recorded at the time you took some photographs!
2155 </para>
2156 <para>
2157         Select the track either from the layers panel on the left or via the viewport using the <xref linkend="select"/> tool.
2158         Then right click on it and chose the <menuchoice><guimenu>Geotag Images...</guimenu></menuchoice> leading you to the <xref linkend="geotagging"/> Dialog.
2159 </para>
2160 <para>
2161         Load some images that where taken around the time the track log was recorded. Confirm the other options in the dialog - normally the defaults should be alright and select OK.
2162         If things are succesful, new waypoints with thumbnail images of the photographs will appear.
2163         You should probably check they are really in the right place as often the timestamp of the camera may not be aligned to the GPS correctly leading to inferring incorrect locations.
2164 </para>
2165 <formalpara><title>Option: Overwrite Waypoints</title>
2166 <para>
2167         This is particularly useful when one finds an attempt at geotagging gives wrong locations, often due to time offset issues.
2168         Simply try again with a new time offset (often 1 hour adjustments due to Daylight Savings or Summer Time times) and the old waypoints will be updated (instead of creating new ones).
2169 </para>
2170 </formalpara>
2171 <para>
2172         If you have multiple tracks in a TrackWaypoint layer, then invoking the <menuchoice><guimenu>Geotag Images...</guimenu></menuchoice> action on the layer
2173         will search all the tracks to find location matches.
2174 </para>
2175 </section>
2176 </section>
2177
2178 <section><title>GPS Real Time Location (Not <trademark>Windows</trademark>)</title>
2179 <para>
2180         &appname; relies on <ulink url="http://www.catb.org/gpsd/">gpsd</ulink> to provide the current location from a real time feed from a GPS device.
2181         Unfortunately <application>gpsd</application> is not available on <trademark>Windows</trademark>,
2182         so currently this functionality is disabled in <trademark>Windows</trademark> builds of &appname;
2183 </para>
2184 <para>
2185         This assumes you already have a <xref linkend="Maps"/> layer enabled for ease of use (if not see above to get one).
2186 </para>
2187 <para>
2188         Turn on the GPS Device, ensure it has figured out it's location and plug it in to your computer.
2189 </para>
2190 <section><title>Set Up GPS Layer</title>
2191 <para>
2192         You will need a <xref linkend="GPS"/> layer. One can be added via <menuchoice><guimenu>Layers</guimenu><guisubmenu>Add GPS Layer</guisubmenu></menuchoice>.
2193 </para>
2194 <para>
2195         Adjust the <emphasis>Realtime Tracking Mode</emphasis> settings to interface with <ulink url="http://www.catb.org/gpsd/">gpsd</ulink> as necessary. Normally the defaults should suffice.
2196 </para>
2197 <para>
2198   Current Linux distributions should run <application>gpsd</application> automatically when a GPS Device is plugged in. Otherwise you may have to run <application>gpsd</application> manually.
2199 </para>
2200 <para>
2201   Then right-click the layer and select <guimenuitem>Start Realtime Tracking</guimenuitem>.
2202   Hopefully the viewport should jump to the GPS location.
2203 </para>
2204 <para>
2205   Troubleshooting checklist:
2206 </para>
2207 <procedure><step><para>Confirm <application>gpsd</application> is running.</para></step></procedure>
2208 <procedure><step><para>Confirm on the GPS device it has a location.</para></step></procedure>
2209 <procedure><step><para>Confirm the <emphasis>Realtime Tracking Mode</emphasis> settings.</para></step></procedure>
2210 </section>
2211 </section>
2212
2213 <section><title>What to Do if &appname; Does Not Seem to Work</title>
2214 <para>
2215 In order to get some information about what &appname; is doing, start it in verbose debug mode via the command line:
2216 <programlisting>viking -dV</programlisting>
2217 </para>
2218 <para>
2219 For instance you can check the correct URLs &appname; is using in requesting remote data for DEMs or map tiles in the verbose debug output.
2220 E.g. Something like this for DEMs:
2221 <screen>
2222 ** (viking:28778): DEBUG: curl_download_uri: uri=http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/Eurasia/N48E008.hgt.zip
2223 * About to connect() to dds.cr.usgs.gov port 80 (#0)
2224 * Trying 152.61.128.95... * connected
2225 * Connected to dds.cr.usgs.gov (152.61.128.95) port 80 (#0)
2226  GET /srtm/version2_1/SRTM3/Eurasia/N48E008.hgt.zip HTTP/1.1
2227 User-Agent: viking/0.9.8 libcurl/7.18.2 GnuTLS/2.4.2 zlib/1.2.3.3 libidn/1.8
2228 Host: dds.cr.usgs.gov
2229 Accept: */*
2230  HTTP/1.1 200 OK
2231  Date: Sun, 26 Jul 2009 18:13:38 GMT
2232  Server: Apache
2233  Last-Modified: Tue, 21 Jul 2009 19:57:35 GMT
2234  ETag: eac3f8-1828f5-46f3caa76070a
2235  Accept-Ranges: bytes
2236  Content-Length: 1583349
2237  Content-Type: application/zip
2238
2239 * Connection #0 to host dds.cr.usgs.gov left intact
2240 * Closing connection #0
2241 ** (viking:28778): DEBUG: dem_layer_add_file: /home/username/.viking-maps/srtm3-Eurasia/N48E008.hgt.zip
2242 </screen>
2243 Or for OSM Mapnik tile server:
2244 <screen>
2245 * About to connect() to tile.openstreetmap.org port 80 (#0)
2246 *   Trying 193.63.75.28... * connected
2247 * Connected to tile.openstreetmap.org (193.63.75.28) port 80 (#0)
2248  GET /13/4065/2748.png HTTP/1.1
2249 User-Agent: viking/0.9.96 libcurl/7.20.1 GnuTLS/2.8.6 zlib/1.2.3.4 libidn/1.18
2250 Host: tile.openstreetmap.org
2251 Accept: */*
2252
2253 * HTTP 1.0, assume close after body
2254  HTTP/1.0 200 OK
2255  Date: Thu, 14 Oct 2010 22:18:42 GMT
2256  Server: Apache/2.2.8 (Ubuntu)
2257  ETag: "b66ff9d46474bab68262a3483428a232"
2258 ** (viking:16704): DEBUG: curl_get_etag_func: ETAG found: "b66ff9d46474bab68262a3483428a232"
2259  Content-Length: 17194
2260  Cache-Control: max-age=94805
2261  Expires: Sat, 16 Oct 2010 00:38:47 GMT
2262  Content-Type: image/png
2263  Age: 5153
2264  X-Cache: HIT from konqi.openstreetmap.org
2265  X-Cache-Lookup: HIT from konqi.openstreetmap.org:3128
2266  Via: 1.1 konqi.openstreetmap.org:3128 (squid/2.7.STABLE7)
2267  Connection: close
2268  
2269 * Closing connection #0
2270 * About to connect() to a.andy.sandbox.cloudmade.com port 80 (#0)
2271 *   Trying 178.63.75.195... ** (viking:16704): DEBUG: curl_download_uri: uri=http://tile.openstreetmap.org/13/4065/2749.png
2272 * About to connect() to tile.openstreetmap.org port 80 (#0)
2273 *   Trying 193.63.75.28... * connected
2274 * Connected to a.andy.sandbox.cloudmade.com (178.63.75.195) port 80 (#0)
2275  GET /tiles/cycle/13/4065/2747.png HTTP/1.1
2276 User-Agent: viking/0.9.96 libcurl/7.20.1 GnuTLS/2.8.6 zlib/1.2.3.4 libidn/1.18
2277 Host: a.andy.sandbox.cloudmade.com
2278 Accept: */*
2279
2280 * connected
2281 * Connected to tile.openstreetmap.org (193.63.75.28) port 80 (#0)
2282  GET /13/4065/2749.png HTTP/1.1
2283 User-Agent: viking/0.9.96 libcurl/7.20.1 GnuTLS/2.8.6 zlib/1.2.3.4 libidn/1.18
2284 Host: tile.openstreetmap.org
2285 Accept: */*
2286
2287 * HTTP 1.0, assume close after body
2288  HTTP/1.0 200 OK
2289  Date: Thu, 14 Oct 2010 23:44:35 GMT
2290  Server: Apache/2.2.8 (Ubuntu)
2291  ETag: "8e520ad47ce9c1b63430554886eb5fab"
2292 ** (viking:16704): DEBUG: curl_get_etag_func: ETAG found: "8e520ad47ce9c1b63430554886eb5fab"
2293  Content-Length: 18094
2294  Cache-Control: max-age=87742
2295  Expires: Sat, 16 Oct 2010 00:06:57 GMT
2296  Content-Type: image/png
2297  X-Cache: MISS from konqi.openstreetmap.org
2298  X-Cache-Lookup: MISS from konqi.openstreetmap.org:3128
2299  Via: 1.1 konqi.openstreetmap.org:3128 (squid/2.7.STABLE7)
2300  Connection: close
2301 </screen>
2302 </para>
2303 </section>
2304
2305 </section>
2306 <!-- End of Howtos -->
2307
2308 <section id="extend_viking" xreflabel="Extending Viking">
2309     <title>Extending Viking</title>
2310
2311       <para>Currently, &app; has some extention points based on configuration files. The file format is heavily inspired by the GtkBuilder file format: you specify the class of the GObject to build and set its properties. Technically, it is a XML file containing a "objects" root element. Inside this element, you set a collection of "object".</para>
2312       <para>Here is an example:
2313 <programlisting><![CDATA[
2314 <objects>
2315   <object class="ClassName">
2316     <property name="property_name1">Property value</property>
2317     <property name="property_name2">Property value</property>
2318   </object>
2319   ...
2320 <objects>
2321 ]]>
2322 </programlisting>
2323 </para>
2324       <para>You can find more examples in the documentation part of the distribution.</para>
2325       <section>
2326         <title>Map Source</title>
2327         <para>It is possible to add new map's sources. The file is <filename>~/.viking/maps.xml</filename> for <trademark>UNIX</trademark> like systems and <filename>C:\Documents and Settings\<replaceable>username</replaceable>\.viking\maps.xml</filename> on <trademark>Windows XP</trademark>.</para>
2328         <para>An example of the file is in the distribution <filename>doc/examples/maps.xml</filename>. Further examples and values are online in the <ulink url="http://sourceforge.net/apps/mediawiki/viking/index.php?title=Maps">Maps Wiki</ulink></para>
2329
2330         <para>The <classname>VikSlippyMapSource</classname> allows to declare any map's source working like OpenStreetMap. It supports the following properties:
2331           <variablelist>
2332             <varlistentry>
2333               <term>id</term>
2334               <listitem><para>this is an integer and should be unique as it used to identify the map source</para></listitem>
2335             </varlistentry>
2336             <varlistentry>
2337               <term>label</term>
2338               <listitem><para>the text displayed in the map's source selection dialog</para></listitem>
2339             </varlistentry>
2340             <varlistentry>
2341               <term>hostname</term>
2342               <listitem><para>the server's hostname (eg. "tile.openstreetmap.org")</para></listitem>
2343             </varlistentry>
2344             <varlistentry>
2345               <term>url</term>
2346               <listitem><para>the parametrized address of the tile, in the spirit of C printf format, with 3 "%d" fields for X, Y and Z (zoom level) (eg. "/%d/%d/%d.png")</para></listitem>
2347             </varlistentry>
2348           </variablelist>
2349         </para>
2350         <para>The <classname>VikTmsMapSource</classname> allows to declare any TMS service. It supports the following properties:
2351           <variablelist>
2352             <varlistentry>
2353               <term>id</term>
2354               <listitem><para>this is an integer and should be unique as it used to identify the map source</para></listitem>
2355             </varlistentry>
2356             <varlistentry>
2357               <term>label</term>
2358               <listitem><para>the text displayed in the map's source selection dialog</para></listitem>
2359             </varlistentry>
2360             <varlistentry>
2361               <term>hostname</term>
2362               <listitem><para>the server's hostname (eg. "tile.openstreetmap.org")</para></listitem>
2363             </varlistentry>
2364             <varlistentry>
2365               <term>url</term>
2366               <listitem><para>the parametrized address of the tile, in the spirit of C printf format, with 3 "%d" fields for X, Y and Z (zoom level) (eg. "/%d/%d/%d.png")</para></listitem>
2367             </varlistentry>
2368           </variablelist>
2369         </para>
2370         <para>The <classname>VikWmscMapSource</classname> allows to declare any WMS or WMS-C service. It supports the following properties:
2371           <variablelist>
2372             <varlistentry>
2373               <term>id</term>
2374               <listitem><para>this is an integer and should be unique as it used to identify the map source</para></listitem>
2375             </varlistentry>
2376             <varlistentry>
2377               <term>label</term>
2378               <listitem><para>the text displayed in the map's source selection dialog</para></listitem>
2379             </varlistentry>
2380             <varlistentry>
2381               <term>hostname</term>
2382               <listitem><para>the server's hostname (eg. "tile.openstreetmap.org")</para></listitem>
2383             </varlistentry>
2384             <varlistentry>
2385               <term>url</term>
2386               <listitem><para>the parametrized address of the tile, in the spirit of C printf format, with 4 "%s" fields for bounding box coordinates (eg. "/coord=%s,%s,%s,%s")</para></listitem>
2387             </varlistentry>
2388           </variablelist>
2389         </para>
2390       </section>
2391
2392       <section>
2393         <title>Go-to search engines</title>
2394         <para>It is possible to add new new search engines for the "Go-To" feature. The file is <filename>~/.viking/goto_tools.xml</filename>.</para>
2395         <para>An example of the file in the distribution <filename>doc/examples/goto_tools.xml</filename>.</para>
2396         <para>Currently, there is a single object class available: <classname>VikGotoXmlTool</classname>. Such feature allows to declare any search engine using a XML format as result.</para>
2397         <para>The related properties are:
2398           <variablelist>
2399             <varlistentry>
2400               <term>label</term>
2401               <listitem><para>the text displayed in the <guilabel>Go-To</guilabel> dialog</para></listitem>
2402             </varlistentry>
2403             <varlistentry>
2404               <term>url-format</term>
2405               <listitem><para>the parametrized address of the query, in the spirit of C <function>printf</function> format, with a single "%s" field (replaced by the query string)</para></listitem>
2406             </varlistentry>
2407             <varlistentry>
2408               <term>lat-path</term>
2409               <listitem><para>XML path of the latitude (eg. <literal>/root/parent/elem</literal>)</para></listitem>
2410             </varlistentry>
2411             <varlistentry>
2412               <term>lat-attr (optional)</term>
2413               <listitem><para>name of the attribute (of previous element) containing the latitude</para></listitem>
2414             </varlistentry>
2415             <varlistentry>
2416               <term>lon-path</term>
2417               <listitem><para>XML path of the longitude (eg. <literal>/root/parent/elem</literal>)</para></listitem>
2418             </varlistentry>
2419             <varlistentry>
2420               <term>lon-attr (optional)</term>
2421               <listitem><para>name of the attribute (of previous element) containing the longiude</para></listitem>
2422             </varlistentry>
2423           </variablelist>
2424         </para>
2425         <para>As a facility (or readability) it is possible to set both path and attribute name in a single property, like an XPath expression. To do so, simply set both info in lat-path (or lon-path) in the following format: <literal>/root/parent/elem@attribute</literal>.</para>
2426       </section>
2427
2428       <section>
2429         <title>External tools</title>
2430         <para>It is possible to add new external tools. The file is <filename>~/.viking/external_tools.xml</filename>.</para>
2431         <para>An example of the file in the distribution <filename>doc/examples/external_tools.xml</filename>.</para>
2432         <para>The <classname>VikWebtoolCenter</classname> allows to declare any Webtool using a logic based on center coordinates and zoom level value.</para>
2433         <para>The related properties are:
2434           <variablelist>
2435             <varlistentry>
2436               <term>label</term>
2437               <listitem><para>the text displayed in the menu entry</para></listitem>
2438             </varlistentry>
2439             <varlistentry>
2440               <term>url</term>
2441               <listitem><para>the parametrized URL to open, in the spirit of C printf format, with 2 "%s" and a "%d" fields for X, Y and Z (zoom level) (eg. "http://hostname/?lat=%s&amp;lon=%s&amp;zoom=%d")</para></listitem>
2442             </varlistentry>
2443           </variablelist>
2444         </para>
2445         <para>The <classname>VikWebtoolBounds</classname> allows to declare any Webtool using a logic based on bounds coordinates.</para>
2446         <para>The related properties are:
2447           <variablelist>
2448             <varlistentry>
2449               <term>label</term>
2450               <listitem><para>the text displayed in the menu entry</para></listitem>
2451             </varlistentry>
2452             <varlistentry>
2453               <term>url</term>
2454               <listitem><para>the parametrized address of the tile, in the spirit of C printf format, with 4 "%s" fields for left, right, bottom and top (eg. "http://hostname:8111/load_and_zoom?left=%s&amp;right=%s&amp;bottom=%s&amp;top=%s")</para></listitem>
2455             </varlistentry>
2456           </variablelist>
2457         </para>
2458       </section>
2459       
2460       <section>
2461         <title>Routing engine</title>
2462         <para>It is possible to declare new routing engines. The file is <filename>~/.viking/routing.xml</filename>.</para>
2463         <para>An example of the file in the distribution <filename>doc/examples/routing.xml</filename>.</para>
2464         <para>The <classname>VikRoutingWebEngine</classname> allows to declare a routing engine available via HTTP.</para>
2465         <para>The related properties are:
2466           <variablelist>
2467             <varlistentry>
2468               <term>id</term>
2469               <listitem><para>a string, should be unique as it used to identify the routing engine</para></listitem>
2470             </varlistentry>
2471             <varlistentry>
2472               <term>label</term>
2473               <listitem><para>the text displayed in the menu entry</para></listitem>
2474             </varlistentry>
2475             <varlistentry>
2476               <term>url-base</term>
2477               <listitem><para>the base URL of the web service (eg. "http://hostname/service?")</para></listitem>
2478             </varlistentry>
2479             <varlistentry>
2480               <term>url-start-ll</term>
2481               <listitem><para>the part of the URL setting the starting point location, parametrized in the spirit of C printf format, with 2 "%s" for coordinates (eg. "&amp;start=%s,%s")</para></listitem>
2482             </varlistentry>
2483             <varlistentry>
2484               <term>url-stop-ll</term>
2485               <listitem><para>the part of the URL setting the end point location, parametrized in the spirit of C printf format, with 2 "%s" for coordinates (eg. "&amp;stop=%s,%s")</para></listitem>
2486             </varlistentry>
2487             <varlistentry>
2488               <term>url-start-dir</term>
2489               <listitem><para>the part of the URL setting the starting point location for direction based routing, parametrized in the spirit of C printf format, with one "%s" for direction (eg. "&amp;start=%s")</para>
2490                                                 <para>(Optional)</para></listitem>
2491             </varlistentry>
2492             <varlistentry>
2493               <term>url-stop-dir</term>
2494               <listitem><para>the part of the URL setting the end point location for direction based routing, parametrized in the spirit of C printf format, with one "%s" for direction (eg. "&amp;start=%s")</para>
2495                                                 <para>(Optional)</para></listitem>
2496             </varlistentry>
2497             <varlistentry>
2498               <term>referer</term>
2499               <listitem><para>an URL to serve as referer for the HTTP request (eg. "http://hostname/")</para></listitem>
2500             </varlistentry>
2501             <varlistentry>
2502               <term>follow-location</term>
2503               <listitem><para>the max depth of recursive redirections</para></listitem>
2504             </varlistentry>
2505           </variablelist>
2506         </para>
2507       </section>
2508       
2509       <section>
2510         <title>Remote File Datasources</title>
2511         <para>It is possible to add web references expected to return a file which can then be opened directly or converted via GPSBabel.</para>
2512         <para>The file is <filename>~/.viking/datasources.xml</filename>.</para>
2513         <para>An example of the file is in the source distribution <filename>doc/examples/datasources.xml</filename>.</para>
2514         <para>The <classname>VikWebtoolDatasource</classname> allows to declare any URL using logic based on coordinates.</para>
2515         <para>The related properties are:
2516           <variablelist>
2517             <varlistentry>
2518               <term>label</term>
2519               <listitem><para>the text displayed in the menu entry</para></listitem>
2520             </varlistentry>
2521             <varlistentry>
2522               <term>url</term>
2523               <listitem>
2524                 <para>the parametrized URL to open in the spirit of C printf format, with up to 7 "%s" values. e.g. <literal>http://hostname/getfile?lat=%s&amp;lon=%s</literal></para>
2525                 <para>The order and meaning of these parameters is given by the url_format_code below</para>
2526               </listitem>
2527             </varlistentry>
2528             <varlistentry>
2529               <term>url_format_code</term>
2530               <listitem>
2531                 <para>A string describing the parametrized URL substitution parameters, each character represents how to translate each term.</para>
2532                 <para>B = Bottom of the current view i.e. minimum latitude</para>
2533                 <para>L = Left of the current view i.e. minimum longitude</para>
2534                 <para>T = Top of the current view i.e. maximum latitude</para>
2535                 <para>R = Right of the current view i.e. maximum longitude</para>
2536                 <para>A = center lAtitude of the current view</para>
2537                 <para>O = center lOngitude of the current view</para>
2538                 <para>Z = OSM Zoom value of the current view. See <ulink url="http://wiki.openstreetmap.org/wiki/Zoom_levels">Zoom Levels</ulink></para>
2539                 <para>Thus for the url example above then the format code should be <emphasis>AO</emphasis></para>
2540               </listitem>
2541             </varlistentry>
2542             <varlistentry>
2543               <term>file_type</term>
2544               <listitem>
2545                 <para>This value is passed on for the -i parameter in interfacing with GPSBabel.</para>
2546                 <para>If it is not defined then the returned file is interpreted internally as a GPX file.</para>
2547                 <para>Possible values such as 'kml', 'mapsource' etc.. can be used. See <ulink url="http://www.gpsbabel.org/capabilities.html">GPSBabel File Formats</ulink> for the full list.</para>
2548               </listitem>
2549             </varlistentry>
2550           </variablelist>
2551         </para>
2552       </section>
2553
2554       <section>
2555         <title>More</title>
2556         <para>Note that, on <trademark>UNIX</trademark> like systems, the extension files (<filename>maps.xml</filename>, <filename>goto_tools.xml</filename>, <filename>external_tools.xml</filename>, <filename>datasources.xml</filename>) are also searched in <filename>/etc/viking</filename> and <filename>/usr/share/viking</filename> directories (or related in your system).</para>
2557         <para>The <envar>XDG_DATA_DIRS</envar> environment variable can be used to change these directories.</para>
2558         <para>The <envar>XDG_DATA_HOME</envar> environment variable is also used (if set) to look for these extension files.</para>
2559       </section>
2560
2561
2562       <section>
2563         <title>Miscellaneous Settings</title>
2564         <para>Various individual values are automatically saved between &app; sessions in the <filename>~/.viking/viking.ini</filename> file.</para>
2565         <para>This file is not intended to be manually edited, but since it is a plain text file it can be changed if desired.</para>
2566         <para>Some values in this file are <emphasis>read only</emphasis>, in the sense that there is no way to set it other than by manually entering in the keys and values (the key will not exist in the file otherwise). This allows some fine tuning of &app; behaviours, without resorting to recompiling the code. However is it not expected that these values should need to be changed for a normal user, hence no GUI options for these have been provided.</para>
2567         <para>Here is the list of the <emphasis>read only</emphasis> keys and their default values.</para>
2568         <orderedlist>
2569           <listitem>
2570             <para>maps_max_tiles=1000</para>
2571           </listitem>
2572           <listitem>
2573             <para>maps_min_shrinkfactor=0.0312499</para>
2574           </listitem>
2575           <listitem>
2576             <para>maps_max_shrinkfactor=8.0000001</para>
2577           </listitem>
2578           <listitem>
2579             <para>maps_real_min_shrinkfactor=0.0039062499</para>
2580           </listitem>
2581           <listitem>
2582             <para>background_max_threads=10</para>
2583           </listitem>
2584           <listitem>
2585             <para>window_menubar=true</para>
2586           </listitem>
2587           <listitem>
2588             <para>version_check_period_days=14</para>
2589           </listitem>
2590         </orderedlist>
2591       </section>
2592
2593 </section>
2594 <!-- End of Extending Viking -->
2595
2596 <section><title>Dependencies</title>
2597 <formalpara><title>gpsbabel</title>
2598 <para>&appname; uses <ulink url="http://gpsbabel.org/">GPSBabel</ulink> to convert data.</para>
2599 </formalpara>
2600 <formalpara><title>unbuffer (optional)</title>
2601 <para>&appname; uses unbuffer command to optimize conversion calls.</para>
2602 </formalpara>
2603 <formalpara><title>gpsd (optional - but not <trademark>Windows</trademark>)</title>
2604 <para>&appname; can use <ulink url="http://www.catb.org/gpsd/">gpsd</ulink> to get the current location.</para>
2605 </formalpara>
2606 </section>
2607
2608 </article>