]> git.street.me.uk Git - andy/viking.git/blob - help/C/viking.xml
[DOC] Some help detail about keyboard shortcuts.
[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.3">
7   <!ENTITY manrevision  "0.2">
8   <!ENTITY date "September 2012">
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>2009</year>
28       <holder>Guilhem Bonnefille</holder>
29     </copyright>
30
31     <!-- An address can be added to the publisher information. -->
32     <publisher role="maintainer">
33       <publishername>GNOME Documentation Project</publishername>
34     </publisher>
35
36     <xi:include href="legal.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
37     <!-- The file legal.xml contains link to license for the documentation,
38         and other legal stuff such as "NO WARRANTY" statement.
39         Please do not change any of this. -->
40
41     <authorgroup>
42       <author>
43         <firstname>Guilhem</firstname>
44         <surname>Bonnefille</surname>
45       </author>
46       <author>
47         <firstname>Rob</firstname>
48         <surname>Norris</surname>
49       </author>
50       <!-- Contributors from the Wiki history -->
51       <author>
52         <firstname>username:</firstname>
53         <surname>Alexxy</surname>
54       </author>
55       <author>
56         <firstname>username:</firstname>
57         <surname>Vikingis</surname>
58       </author>
59       <author>
60         <firstname>username:</firstname>
61         <surname>Tallguy</surname>
62       </author>
63       <author>
64         <firstname>username:</firstname>
65         <surname>EliotB</surname>
66       </author>
67       <author>
68         <firstname>Alex</firstname>
69         <surname>Foobarian</surname>
70       </author>
71       <!-- END -->
72     </authorgroup>
73
74     <revhistory>
75       <revision>
76         <revnumber>&appname; Manual V&manrevision;</revnumber>
77         <date>&date;</date>
78         <revdescription>
79           <para role="author">Guilhem Bonnefille <email>guilhem.bonnefille@gmail.com</email></para>
80           <para role="publisher">GNOME Documentation Project</para>
81         </revdescription>
82       </revision>
83     </revhistory>
84
85     <releaseinfo>This manual describes version &appversion; of &appname;.</releaseinfo>
86
87     <legalnotice>
88       <title>Feedback</title>
89       <para>To report a bug or make a suggestion regarding the &app; application or
90       this manual, follow the directions in the
91       <ulink url="ghelp:user-guide?feedback-bugs" type="help">Feedback section of the GNOME User Guide</ulink>.
92       </para>
93     </legalnotice>
94   </articleinfo>
95
96   <indexterm zone="index">
97     <primary>&app;</primary>
98   </indexterm>
99 <!-- ============= Document Body ============================= -->
100 <section id="introduction">
101   <title>Introduction</title>
102 <para>
103 &appname; aims to be easy to use, yet powerful in accomplishing a wide
104 variety of tasks. Some of the things you can use &appname; for are:
105 </para>
106 <itemizedlist mark="opencircle"><listitem>
107 <para>
108 Uploading and downloading waypoints, tracks to/from GPS.
109 </para>
110 </listitem>
111 <listitem>
112 <para>Preparing tracks and waypoints for trips using maps from services
113 such as OpenStreetMap (OSM) and/or Terrasever. The data is only needed to be uploaded to
114 your GPS before you leave. The maps together with your tracks and
115 waypoints can also be printed and used during the trip.
116 </para>
117 </listitem>
118 <listitem>
119 <para>
120 After trips, tracks and waypoints from GPS can be downloaded, stored, managed and reused in your (or your friends') later trips.
121 </para>
122 </listitem>
123 <listitem>
124 <para>
125 Analyzing Off Highway Vehicle (OHV) and hiking trips, understanding where you went and how far you were from something.
126 </para>
127 </listitem>
128 <listitem>
129 <para>Making waypoints and tracks to follow to easily get someplace
130 you've never been before or don't have GPS data for but online
131 maps exist for it.
132 </para>
133 </listitem>
134 <listitem>
135 <para>
136 Making maps with coordinate lines.
137 </para>
138 </listitem>
139 <listitem>
140 <para>
141 Grouping data from multiple trips using a hierarchical data manager.
142 </para>
143 </listitem>
144 <listitem>
145 <para>
146 Analyzing speed at different places (to some degree), adding waypoints where you forgot to mark one but did slow down or stop.
147 </para>
148 </listitem>
149 <listitem>
150 <para>
151 Downloading and storing OpenStreetMap and/or Terraserver maps on your hard drive and looking at them later.
152 </para>
153 </listitem>
154 <listitem>
155 <para>
156 Editing tracks and trackpoints, joining and splitting up tracks 
157 </para>
158 </listitem>
159 <listitem>
160 <para>
161 Show the live GPS position on the map (for use on a mobile device - e.g. a laptop)
162 </para>
163 </listitem>
164 <listitem>
165 <para>
166 Import track+waypoint files of various types via GPSBabel
167 </para>
168 </listitem>
169 <listitem>
170 <para>
171 View, create and update Geotagged Images (using EXIF data).
172 </para>
173 </listitem>
174 </itemizedlist>
175 <note>
176 <para>
177 &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>:
178 </para>
179 </note>
180 </section>
181
182 <section><title>General Concepts</title>
183 <section><title>Layers</title>
184 <para>
185 'Layers' is concept one may know from powerful graphics editors such as Photoshop or GIMP.
186 Instead of putting all the data on the same level, it is stacked (i.e. layered) with different data over one another.
187 This can make useful for analysis and general handling of various sets of data.
188 </para>
189 <para>
190 Unfortunately the downside of this complexity is remembering how differing layers of data can obscure other data.
191 </para>
192 <para>
193 The Map layers have <ulink url="http://en.wikipedia.org/wiki/Alpha_compositing"><citetitle>Alpha Compositing</citetitle></ulink>,
194 to create the appearance of partial transparency.
195 By controlling this value one can see data below it in the layer heirarchy for interesting effects.
196 </para>
197 </section>
198 <section><title>Layers Panel</title>
199 <para>
200 The panel on the left is called the <emphasis role="bold">layers panel</emphasis>.
201 It determines which layers and sublayers (such as tracks and waypoints)
202 are shown, and the order in which they are drawn. Layers list on the
203 top of the layers panel are drawn last. You can change the order by
204 drag and drop, or by selecting a layer and using the up and down
205 buttons at the bottom of the layers panel.
206 </para>
207 </section>
208 <section><title>Viewport</title>
209 <para>
210 The main &appname; area where the layer data is drawn, is called the <emphasis role="bold">viewport</emphasis>.
211 </para>
212 </section>
213 <section><title>Statusbar</title>
214 <para>This provides a readout of various information:</para>
215 <itemizedlist>
216 <listitem><para>The currently selected (mouse pointer) tool</para></listitem>
217 <listitem><para>The number of items to process in the background - normally this the number in the map tile download queue</para></listitem>
218 <listitem><para>The zoom factor</para></listitem>
219 <listitem><para>The location of the mouse pointer (and potentially height information if DEM data is available)</para></listitem>
220 </itemizedlist>
221 </section>
222
223 <section><title>Projections</title>
224 <para>
225 &appname; supports differents projections:
226 <itemizedlist>
227 <listitem>
228 <para>UTM</para>
229 </listitem>
230 <listitem>
231 <para>LatLon (also called EPSG:4326)</para>
232 </listitem>
233 <listitem>
234 <para>Mercator (also called Spherical Mercator)</para>
235 </listitem>
236 </itemizedlist>
237 </para>
238 </section>
239
240 <section><title>Shortcut Keys</title>
241 <para>
242 &appname; has several shortcut keys or key combinations for commands as listed in the main window along side the command.
243 </para>
244 <para>
245 Some function keys follow standard GUI behaviour:
246 </para>
247 <itemizedlist>
248 <listitem><para><keycap>F1</keycap> Help (view this manual)</para></listitem>
249 <listitem><para><keycap>F10</keycap> Select the Menubar (in built behaviour)</para></listitem>
250 <listitem><para><keycap>F11</keycap> Full Screen</para></listitem>
251 </itemizedlist>
252 <para>
253 Other function keys control turn on/off visibility of various elements:
254 </para>
255 <itemizedlist>
256 <listitem><para><keycap>F3</keycap> Toggle visibility of the Toolbar</para></listitem>
257 <listitem><para><keycap>F4</keycap> Toggle visibility of the Menubar</para></listitem>
258 <listitem><para><keycap>F5</keycap> Toggle visibility of the Scale indicator on the viewport</para></listitem>
259 <listitem><para><keycap>F6</keycap> Toggle visibility of the Center Crosshairs on the viewport</para></listitem>
260 <listitem><para><keycap>F7</keycap> Toggle showing selected items (e.g. tracks or waypoints) in the highlight colour in the viewport</para></listitem>
261 <listitem><para><keycap>F9</keycap> Toggle visibility of the Layers Panel</para></listitem>
262 <listitem><para><keycap>F12</keycap> Toggle visibility of the Statusbar</para></listitem>
263 </itemizedlist>
264 <para>
265 Standard shortcuts are provided for normal GUI operations: such as creating new files, opening, saving and exitting.
266 Then there are shortcuts specific to &appname; to switch projection modes, zoom in/out, create layers and switch the active tool mode.
267 For these combinations see the menu entry themselves.
268 </para>
269 </section>
270
271 </section><!--General Concepts End-->
272
273 <section><title>Layers</title>
274
275 <para>
276 Layers supported by &appname; are:
277 </para>
278 <itemizedlist>
279 <listitem><para>Aggregate</para></listitem>
280 <listitem><para>TrackWaypoint</para></listitem>
281 <listitem><para>GPS</para></listitem>
282 <listitem><para>DEM</para></listitem>
283 <listitem><para>Coord</para></listitem>
284 <listitem><para>Map</para></listitem>
285 <listitem><para>GeoRef</para></listitem>
286 </itemizedlist>
287 <para>
288 For each layer there are a few standard options:
289 </para>
290 <itemizedlist>
291 <listitem><para>Properties - Layer setup / configuration settings</para></listitem>
292 <listitem><para>Cut</para></listitem>
293 <listitem><para>Copy</para></listitem>
294 <listitem><para>Paste</para></listitem>
295 <listitem><para>Delete</para></listitem>
296 <listitem><para>Visibility - This checkbox on the Layers Panel controls whether the layer is shown in the viewport or not</para></listitem>
297 </itemizedlist>
298 <para>
299 The cut/copy/paste options can be accessed in a variety of ways once the layer has been selected:
300 </para>
301 <itemizedlist>
302 <listitem><para>Standard keys: <keycap>Ctrl+x|c|v</keycap></para></listitem>
303 <listitem><para>Main menu <guimenuitem>Edit</guimenuitem></para></listitem>
304 <listitem><para>From the right click menu</para></listitem>
305 <listitem><para>Buttons at the bottom of the Layers Panel</para></listitem>
306 </itemizedlist>
307 <para>
308 See the individual section for detail about each layer.
309 </para>
310
311 <section><title>TrackWaypoint Layer</title>
312 <para>
313 TrackWaypoint layers display GPS data (tracks and waypoints).
314 </para>
315 <para>One way to create new waypoints is to copy a
316 latitude/longitude coordinate pair, such as the one shown on most
317 geocaches, and paste it into an active TrackWaypoint layer. &appname; can
318 automatically recognize several variations of the lat/lon format.
319 </para>
320 <para>
321 By right-clicking tracks and waypoints in the layers panel, you can do
322 many things with tracks and waypoints. You can easily find a specific
323 track or waypoint by expanding the Tracks or Waypoints sublayers in the
324 layers panel to show all tracks or waypoints, and typing the name of
325 the track/waypoint.
326 </para>
327
328 <section><title>Layer Operations</title>
329 <para>
330 The layer has a context menu with several operations.
331 </para>
332
333 <section><title>View Layer</title>
334 <para>
335 Version1.1+: This will automatically move the viewport and select the best zoom level to see the whole layer (i.e. tracks and waypoints).
336 </para>
337 </section>
338
339 <section><title>View All Tracks</title>
340 <para>
341 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 waypoints).
342 </para>
343 </section>
344
345 <section><title>View All Waypoints</title>
346 <para>
347 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).
348 </para>
349 </section>
350
351 <section><title>Goto Center of Layer</title>
352 <para>
353 This will automatically move the viewport to see the whole layer (i.e. tracks and waypoints). It does not adjust the zoom level.
354 </para>
355 </section>
356
357 <section><title>Goto Waypoint</title>
358 <para>
359 This opens a dialog box to enter a name of waypoint to search for. If it is found the viewport is centred on it.
360 </para>
361 <note>
362 <para>
363 Note this search is not very clever and only finds exact matches.
364 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.
365 </para>
366 </note>
367 </section>
368
369 <section><title>Export Layer</title>
370 <para>
371 The layer (all tracks and waypoints) can be exported to a file GPX, GPSPoint, GPSMapper or Google's KML format.
372 </para>
373 <para>
374 Version1.1+: An individual track can be exported to a GPX file via the track menu.
375 </para>
376 </section>
377
378 <section id="new_wp"><title>New Waypoint</title>
379 <para>
380 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.
381 </para>
382 </section>
383
384 <section><title>Add Wikipedia Waypoints</title>
385 <para>
386 This gets 'interesting' points from Wikipedia for the specified view: either within the extent of layer bounds or within the current viewport boundary.
387 </para>
388 </section>
389
390 <section><title>Geotag Images</title>
391 <para>
392 This starts the Geotagging Images dialog against all tracks in the layer.
393 See <link linkend="geotagging">Geotagging</link> for further detail.
394 </para>
395 </section>
396
397 <section id="osm_upload"><title>Upload To OSM</title>
398 <para>
399 This opens a dialog to upload all tracks and waypoints to <ulink url="http://openstreetmap.org/">OpenStreetMap</ulink> traces.
400 Useful if you are an OpenStreetMap contributor (you will need an OpenStreetMap account), these details can be stored in &appname; <link linkend="prefs_osm">preferences.</link>
401 </para>
402 <para>
403  &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.
404 </para>
405 <note>
406 <para>
407  <emphasis role="bold">Warning!</emphasis>
408 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.
409 </para>
410 <para>Currently &appname; does not support the <ulink url="http://oauth.net/">OAuth</ulink> mechanism.</para>
411 </note>
412 </section>
413
414 <section><title>Filter</title>
415 <section><title>Simplify All Tracks</title>
416 <para>
417 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.
418 </para>
419 </section>
420 <section><title>Remove Duplicate Waypoints</title>
421 <para>
422 Remove Duplicate Waypoints - fairly self explainatory, with the results created in a new layer.
423 </para>
424 <note>
425 <para>
426 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.
427 </para>
428 </note>
429 </section>
430 </section>
431
432 <section id="filter_with_track"><title>Filter With <emphasis>Trackname</emphasis></title>
433 <para>
434 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:
435 </para>
436 <itemizedlist>
437 <listitem><para>Waypoints Inside This</para></listitem>
438 <listitem><para>Waypoints Outside This</para></listitem>
439 </itemizedlist>
440 <para>
441 The result is generated in a new Track/Waypoint layer.
442 </para>
443 </section>
444
445 <section><title>Geotag Images</title>
446 <para>
447 This starts the Geotagging Images dialog using the specific track.
448 See <link linkend="geotagging">Geotagging</link> for further detail.
449 </para>
450 </section>
451
452 </section><!-- End TRW Layer Options -->
453
454 <section><title>Track Properties</title>
455 <para>
456 Show many useful statistics about a track, including a
457 elevation-distance graph and a speed-time graph (if data is available).
458 You can click these graphs to jump to the point in the track. You can
459 also reverse a track, delete duplicates, and split a track from its
460 component segments (discontinuous breaks in a track) into separate
461 tracks.
462 </para>
463 <para>
464 The following colors are used in the elevation-distance graph:
465 </para>
466 <variablelist>
467 <varlistentry>
468 <term>'Main' colour - this is dependent on your Desktop theme - often blue by default</term>
469 <listitem><para>elevation data in graph</para></listitem>
470 </varlistentry>
471 <varlistentry>
472 <term>Yellow</term>
473 <listitem>
474 <para>no elevation data</para>
475 </listitem>
476 </varlistentry>
477 <varlistentry>
478 <term>Green</term>
479 <listitem>
480 <para>elevation data from DEM</para>
481 </listitem>
482 </varlistentry>
483 <varlistentry>
484 <term>Red</term>
485 <listitem>
486 <para>speed</para>
487 </listitem>
488 </varlistentry>
489 </variablelist>
490
491 </section>
492
493 <section><title>Track Operations</title>
494
495 <section><title>Goto</title>
496 <para>
497 This centers the viewport on the selected position on the track:
498 </para>
499 <itemizedlist>
500 <listitem><para>Startpoint</para></listitem>
501 <listitem><para>"Center" - the notional center from the bounds of the track</para></listitem>
502 <listitem><para>Endpoint</para></listitem>
503 <listitem><para>Version1.1+: Highest Altitude</para></listitem>
504 <listitem><para>Version1.1+: Lowest Altitude</para></listitem>
505 <listitem><para>Version1.1+: Maximum Speed</para></listitem>
506 </itemizedlist>
507 </section>
508
509 <section><title>View</title>
510 <para>
511 Version1.1+: This centers the viewport on the track and selects the best zoom level to see it.
512 </para>
513 </section>
514
515 <section><title>Combine</title>
516 <section><title>Merge By Time</title>
517 <para>
518 This operation repeatedly tries to merge the right-clicked track
519 with tracks in the same TrackWaypoint layer. The tracks which are
520 merged are those which have at least one trackpoint less than some
521 threshold time away. This way, if you somehow end up with lots of small
522 segments (say, caused by turning the GPS on and off) you can merge them
523 easily into one track.
524 </para>
525 </section>
526
527 <section><title>Merge With Other Tracks</title>
528 <para>
529 This opens a dialog listing the other tracks in the same TrackWaypoint layer, from which one can select the other tracks to merge with.
530 </para>
531 </section>
532
533 <section><title>Merge Segments</title>
534 <para>
535 Combines track segments. Effectively removing track segment markers to leave one segment for the whole track.
536 </para>
537 </section>
538
539 <section><title>Append Track</title>
540 <para>
541 Enable joining of a single track to the end of the current track.
542 This opens a dialog listing the other tracks in the same TrackWaypoint layer from which one can make the selection.
543 </para>
544 </section>
545 </section>
546
547 <section><title>Split</title>
548 <section><title>Split By Time</title>
549 <para>
550 This operation will split a single track into segments wherever the
551 time interval between successive trackpoints is larger than some
552 threshold. This is useful when processing raw NMEA GPS data, especially
553 taken over a long time.
554 </para>
555 </section>
556
557 <section><title>Split By Number of Points</title>
558 <para>
559 Version1.2+: This operation will split a single track into segments by the number of points specified.
560 This can be useful with devices which may have limits on the number of points it supports.
561 </para>
562 </section>
563
564 <section><title>Split Segments</title>
565 <para>
566 Splits track segments into new tracks.
567 </para>
568 </section>
569
570 <section><title>Split at Trackpoint</title>
571 <para>
572 Splits the track at the currently selected trackpoint. This is only enabled when a trackpoint is selected.
573 </para>
574 </section>
575 </section>
576
577 <section><title>Delete Points</title>
578 <section><title>Delete Points With the Same Position</title>
579 <para>
580 Deletes subsequent points that have the same position (but have different timestamps).
581 </para>
582 </section>
583 <section><title>Delete Points With the Same Time</title>
584 <para>
585 Deletes subsequent points that have the same time stamp (but may have different positions).
586 </para>
587 </section>
588
589 </section>
590
591 <section><title>Apply DEM data</title>
592 <para>
593 If any DEM data is loaded, this will apply the DEM data to give the track elevation data.
594 </para>
595 </section>
596
597 <section><title>Export Track as GPX</title>
598 <para>
599 Version1.1+: This allows exporting the track as a GPX file by opening a file save dialog.
600 </para>
601 </section>
602
603 <section><title>Extend Track End</title>
604 <para>
605 Changes the current tool to add trackpoints to the end of the track.
606 </para>
607 </section>
608
609 <!--
610 <section><title>Extend Using Route Finder</title>
611 <para>
612 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 Google's route service and applied to the track.
613 </para>
614 </section>
615 -->
616
617 <section><title>Upload to OSM</title>
618 <para>
619 Same as the layer <link linkend="osm_upload">Upload to OSM</link>, but only applies to the track.
620 </para>
621 </section>
622
623 <section><title>Use With Filter</title>
624 <para>
625 This selects the track to be used in the <link linkend="filter_with_track">Filter With <emphasis>Trackname</emphasis></link> feature.
626 </para>
627 </section>
628
629 <!--
630 <section><title>View Google Directions</title>
631 <para>
632 This option is only available on a track created using the Route Finder tool.
633 </para>
634 <para>
635 Launch a web browser to see the Google directions page which yielded the route.
636 </para>
637 <note>
638 <para>
639 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.
640 </para>
641 </note>
642 </section>
643 -->
644 </section><!-- End Track Options -->
645
646 <section><title>Waypoint Properties</title>
647
648 <para>
649 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).
650 </para>
651 <para>
652 If the waypoint has an associated image, then the Geotag information may be updated, either with updating the file's modification timestamp or not.
653 This can be useful when the waypoint has been moved.
654 </para>
655
656 </section><!-- WP Prop END -->
657
658 <section><title>Waypoint Operations</title>
659
660 <section><title>Goto</title>
661 <para>
662 This centers the viewport on the selected waypoint.
663 </para>
664 </section>
665
666 <section><title>Visit Geocache Webpage</title>
667 <para>
668 If the waypoint's name is in Geocache form (GCXXXXX) you can launch a web browser to go to the Geocache page.
669 </para>
670 </section>
671
672 <section><title>New Waypoint</title>
673 <para>
674 Same as the layer <link linkend="new_wp">New Waypoint</link>.
675 </para>
676 </section>
677
678 </section><!-- WP END -->
679
680 <section id="geotagging"><title>Version1.3+: Geotag Images</title>
681 <para>
682 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.
683 </para>
684 <para>
685 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.
686 </para>
687 <note>
688 <para>
689 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.
690 </para>
691 </note>
692 <para>
693 Various options allow control of how the geotagging process is performed:
694 </para>
695 <itemizedlist>
696 <listitem><para>Images - Add the images used for geotagging</para></listitem>
697 <listitem><para>Create Waypoints</para></listitem>
698 <listitem><para>Write EXIF</para></listitem>
699 <listitem><para>Overwrite Existing GPS Information</para></listitem>
700 <listitem><para>Interpolate Between Track Segments</para></listitem>
701 <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>
702 <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>
703 </itemizedlist>
704 </section>
705
706 </section><!-- TRW Layer END -->
707
708 <section><title>GPS Layer</title>
709 <para>
710 The GPS layer is responsible for uploading and downloading GPS data
711 from a GPS device. It also is responsible for realtime GPS tracking.
712 Expand the GPS layer in the layers panel to see the two TrackWaypoint layers it
713 uses for uploading and downloading. To upload, download, or use
714 realtime tracking, right-click the GPS layer and click the appropiate
715 menu item.
716 </para>
717
718 <section><title>Download</title>
719 <para>
720 To download data from the GPS, right-click the GPS layer and click <guimenuitem>Download from GPS</guimenuitem>.
721 </para>
722 </section>
723
724 <section><title>Upload</title>
725 <para>
726 To upload data to the GPS, first populate the GPS Upload child
727 layer of the GPS layer (either by creating waypoints/tracks in it, or
728 copying and pasting or dragging waypoints/tracks from another layer).
729 Then right-click the GPS layer and click <guimenuitem>Upload to GPS</guimenuitem>.
730 </para>
731 </section>
732
733 <section><title>Realtime Tracking</title>
734 <para>
735 You must set up gpsd correctly or use a GPSD server and put the
736 correct information in the GPS layer properties dialog. Then right-click
737 the layer and select <guimenuitem>Start Realtime Tracking</guimenuitem>.
738 </para>
739 </section>
740
741 <section><title>Empty <emphasis>Item</emphasis></title>
742 <para>
743 There are several options to quickly delete a subsection of data:
744 </para>
745 <itemizedlist>
746 <listitem><para>Empty Realtime</para></listitem>
747 <listitem><para>Empty Upload</para></listitem>
748 <listitem><para>Empty Download</para></listitem>
749 <listitem><para>Empty All</para></listitem>
750 </itemizedlist>
751 </section>
752
753 </section><!-- End GPS -->
754
755 <section><title>DEM (Digital Elevation Model) Layer</title>
756 <para>
757 This layer provides elevation data from the <ulink url="http://www2.jpl.nasa.gov/srtm/">Shuttle Radar Topography Mission (SRTM)</ulink>
758 </para>
759 <para>
760 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]
761 </para>
762 <para>
763 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.
764 </para>
765 <para>
766 The current data server is: <ulink url="http://dds.cr.usgs.gov/srtm/version2_1/">NASA STRM 2.1</ulink>.
767 </para>
768 <para>
769 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.
770 </para>
771 <note>
772 <para>
773 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"
774 </para>
775 </note>
776
777 </section><!-- End DEM -->
778
779
780 <section><title>Maps Layer</title>
781 <para>
782 This layer provides a single map resource, you may have multiple map layers but only top one (if enabled) will be visible.
783 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.
784 </para>
785 <para>
786 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 - 'Tile Age' 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.
787 </para>
788 <para>
789 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:
790 </para>
791 <itemizedlist>
792 <listitem><para>Bing Bird's Eye (Aerial) Maps (&appname; Version1.2+)</para></listitem>
793 <listitem><para>Terraserver Topos</para></listitem>
794 <listitem><para>Terraserver Aerials</para></listitem>
795 <listitem><para>Terraserver Urban Areas</para></listitem>
796 <listitem><para>OpenStreetMap (Mapquest) - This is the default (&appname; Version1.3+)</para></listitem>
797 <listitem><para>OpenStreetMap (Mapnik)</para></listitem>
798 <listitem><para>OpenStreetMap (Cycle)</para></listitem>
799 <listitem><para>OpenStreetMap (Transport) (&appname; Version1.3+)</para></listitem>
800 <listitem><para>NASA BlueMarble</para></listitem>
801 <listitem><para>SpotMap (&appname; Version1.1+)</para></listitem>
802 </itemizedlist>
803
804 <para>
805 &appname; can be configured to handle additional maps. See <link linkend="extend_viking">Extending &appname;</link> for further detail.
806 </para>
807
808 <section><title>Layer Operations</title>
809 <section><title>Download Missing Onscreen Maps</title>
810 <para>
811 This requests map tiles for areas of the viewport that do not currently have one.
812 </para>
813 </section>
814
815 <section><title>Download New Onscreen Maps</title>
816 <para>
817 This requests map tiles only if the maps are older than the Tile Age preference.
818 </para>
819 </section>
820
821 <section><title>Reload All Onscreen Maps</title>
822 <para>
823 Force a refresh of all visible map tiles.
824 </para>
825 </section>
826 </section>
827
828
829 </section><!-- End Maps -->
830
831 <section><title>Aggregrate Layer</title>
832 <para>
833 This layer is a container layer to hold other layers. There is always an initial and controlling 'Top Layer' that can not be removed, although it can be renamed.
834 </para>
835 <para>
836 This layer type is useful for grouping other layers, especially TrackWaypoint layers, in whatever categories are relevant to you: such as by activity, location or date.
837 Here are some suggestions:
838 <itemizedlist>
839 <listitem><para>Hiking</para></listitem>
840 <listitem><para>Mountain Biking</para></listitem>
841 <listitem><para>Road Cycling</para></listitem>
842 <listitem><para>Car Trips</para></listitem>
843 <listitem><para>Sailing</para></listitem>
844 <listitem><para>Holidays</para></listitem>
845 <listitem><para>UK Points of Interest</para></listitem>
846 <listitem><para>USA Points of Interest</para></listitem>
847 <listitem><para>etc...</para></listitem>
848 </itemizedlist>
849 </para>
850 <para>
851 Thus one can have a list of all your tracks, but groups can be shown or not using the relevant layers visibility checkbox.
852 </para>
853
854 <para>
855 This layer only has one operation: <guilabel>New Layer</guilabel>
856 </para>
857
858 <section><title>New Layer</title>
859 <para>
860 Add a new layer of the selected type.
861 </para>
862 </section>
863
864 </section><!-- End Agg -->
865
866 <section><title>GeoRef Layer</title>
867 <para>
868 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.
869 </para>
870 <section><title>Layer Operations</title>
871 <section><title>Zoom to Fit Map</title>
872 <para>
873 Automatically set a zoom level to see the entire map coverage.
874 </para>
875 </section>
876
877 <section><title>Goto Map Center</title>
878 <para>
879 Center the viewport on this map.
880 </para>
881
882 </section>
883 <section><title>Export to World File</title>
884 <para>
885 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>.
886 </para>
887 </section>
888 </section>
889
890 </section><!-- End GeoRef -->
891
892 <section><title>Coord Layer</title>
893 <para>
894 This layer is allows drawing of grid lines on the viewport.
895 </para>
896 </section><!-- End Coord -->
897
898 </section>
899
900 <section><title>Tools</title>
901 <para>
902 You can use the scroll wheel and the right-click to zoom and pan no matter what tool you are using.
903 </para>
904 <para>
905 Scroll: zoom in and out keeping the mouse over same location
906 </para>
907 <para>
908 Ctrl-scroll: pan north-south (also Ctrl-up, Ctrl-down)
909 </para>
910 <para>
911 Shift-scroll: pan east-west (also Ctrl-left, Ctrl-right)
912 </para>
913 <para>
914 Ctrl-shift-scroll: zoom in and out, without changing the center (also Ctrl+, Ctrl- [*not* KeyPad +/-])
915 </para>
916 <para>
917 Left or Middle-click: make the clicked point on the map the center
918 </para>
919 <para>
920 Middle-click and drag: pan
921 </para>
922
923 <section><title>Pan</title>
924 <para>
925 Pan moves the viewpoint. A single click centers the viewport at that point, whereas click and drag dynamically moves the view around.
926 This is the default tool.
927 </para>
928 <para>
929 This mode can also be entered by the keyboard shortcut <keycap>Ctrl+Shift+P</keycap>
930 </para>
931 </section>
932
933 <section><title>Zoom</title>
934 <para>
935 Zooms in and out on the clicked part of the map or by the selected area.
936 </para>
937 <para>
938 This mode can also be entered by the keyboard shortcut <keycap>Ctrl+Shift+Z</keycap>
939 </para>
940 <para>
941 Ctrl + left or right click: Zoom in/out and center the map on the clicked location
942 </para>
943 <para>
944 Shift (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.
945 </para>
946 </section>
947
948 <section><title>Ruler</title>
949 <para>
950 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.
951 A second click will 'freeze' the ruler at that point.
952 </para>
953 <para>
954 This mode can also be entered by the keyboard shortcut <keycap>Ctrl+Shift+R</keycap>
955 </para>
956 </section>
957
958 <section><title>Version1.1+: Select</title>
959 <para>
960 The select tool allows one to choose any waypoint or track by clicking on it (or reasonably near) in the viewpoint.
961 </para>
962 <para>
963 ATM to select a track one must actually click on a trackpoint, which is also selected.
964 </para>
965 <para>
966 This mode can also be entered by the keyboard shortcut <keycap>Ctrl+Shift+S</keycap>
967 </para>
968 </section>
969
970 <section><title>TrackWaypoint Layer Tools</title>
971 <para>
972 You must have a TrackWaypoint Layer selected to use these tools.
973 </para>
974 <section><title>Create Waypoint</title>
975 <para>
976 Left click will open the new waypoint dialog using the specified position.
977 </para>
978 </section>
979
980 <section><title>Create/Begin Track</title>
981 <para>
982 Left click to create a new trackpoint. If it's the initial trackpoint you will be asked to enter a name for the track.
983 If <keycap>Ctrl</keycap> is held at the same time, it will jump the new trackpoint position to a nearby existing trackpoint.
984 Right click or <keycap>Backspace</keycap>: undo one point.
985 </para>
986 <para>
987 Double click or <keycap>Escape</keycap>: finish track creation.
988 </para>
989 </section>
990
991 <section><title>Edit Waypoint</title>
992 <para>
993 Left Click/drag: select/move a waypoint.
994 If <keycap>Ctrl</keycap> is held at the same time, it will jump the waypoint position to a nearby existing trackpoint.
995 If <keycap>Shift</keycap> is held at the same time, it will jump the waypoint position to a nearby existing waypoint.
996 </para>
997 <para>Right-click on waypoint: opens a menu with waypoint actions (the
998 same menu accessed by right-clicking the waypoint in the layers panel)
999 </para>
1000 </section>
1001
1002 <section><title>Edit Trackpoint</title>
1003 <para>
1004 Left click near a trackpoint (in screen pixel terms) to bring up the Track Point Edit dialog on that trackpoint.
1005 Whilst the edit dialog is already open, left click again and drag enables moving of the trackpoint.
1006 If <keycap>Ctrl</keycap> is held at the same time, it will jump the new trackpoint position to a nearby existing trackpoint.
1007 </para>
1008 <para>
1009 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.
1010 </para>
1011 </section>
1012
1013 <section><title>Show Picture</title>
1014 <para>
1015 Opens an image viewer with the picture associated with the waypoint.
1016 On Linux this uses <application>eog</application>.
1017 On Windows this uses the default system image viewer.
1018 </para>
1019 </section>
1020
1021 <!--
1022 <section><title>Route Finder</title>
1023 <para>Creates a track using Google maps routing between two points.
1024 Requires an internet connection. Click one point, then click another to
1025 create a track.
1026 </para>
1027 <para>
1028 Right-click: undo last routing (only track removed - not any waypoints)
1029 </para>
1030 <para>
1031 <keycap>Ctrl</keycap>: continue previous track
1032 </para>
1033 </section>
1034 -->
1035 </section>
1036
1037 <section><title>Georef Map Layer Tools</title>
1038 <para>
1039 You must have a Georef Map Layer selected to use these tools.
1040 </para>
1041 <section><title>Georef zoom</title>
1042 <para>Changes the zoom level of the georeferenced map and changes the
1043 &appname; zoom level accordingly. Useful if you are trying to match GPS
1044 data to a georeferenced map.
1045 </para>
1046 </section>
1047
1048 <section><title>Georef move</title>
1049 <para>
1050 Drag to move the georeferenced map.
1051 </para>
1052 </section>
1053 </section>
1054
1055 <section><title>Map Download</title>
1056 <para>
1057 You must have a Map Layer selected to use this.
1058 </para>
1059 <para>
1060 Click to download a single tile. Drag to download tiles in the dragged rectangle area.
1061 </para>
1062 <para>
1063 Right-click to redownload bad/all tiles. Right-click and drag to redownload bad/all tiles in the dragged rectangle area.
1064 </para>
1065 </section>
1066
1067 <section><title>DEM Download</title>
1068 <para>
1069 You must have a DEM Layer selected to use this.
1070 </para>
1071 <para>
1072 Click to download and import a DEM file.
1073 </para>
1074 </section>
1075
1076 <section><title>Webtools</title>
1077 <para>
1078 Many services are available only via a web browser (Google Maps, OpenStreetMap Potlach editor, etc.).
1079 </para>
1080 <para>
1081 Jumping from &app; to such service can become annoying.
1082 </para>
1083 <para>
1084 &appname; allows you to open such service directly at the position currently viewed in &app;.
1085 </para>
1086 <para>
1087 This feature is called <guilabel>Webtools</guilabel>. It is also known as External Tools.
1088 </para>
1089 </section>
1090
1091 </section>
1092
1093 <!-- Preferences -->
1094 <section id="prefs"><title>Preferences</title>
1095 <section><title>General</title>
1096 <section><title>Localisation</title>
1097 <para>You can select units displayed by &appname; to best fit your usage.</para>
1098 <figure>
1099 <title>Properties dialog: units part</title>
1100 <screenshot>
1101   <graphic format="PNG" fileref="figures/properties_units.png"/>
1102 </screenshot>
1103 </figure>
1104 <para>Concerning degrees, you can select the way to display them:
1105 <variablelist>
1106 <varlistentry>
1107 <term>DDD</term><listitem><para>decimal degree</para></listitem>
1108 </varlistentry>
1109 <varlistentry>
1110 <term>DDD</term><listitem><para>partial sexagesimal display: degrees, minutes and décimal part of minutes</para></listitem>
1111 </varlistentry>
1112 <varlistentry>
1113 <term>DMS</term><listitem><para>sexagesimal display: degrees, minutes and seconds</para></listitem>
1114 </varlistentry>
1115 </variablelist>
1116 </para>
1117 <figure>
1118 <title>Properties dialog: degree display options</title>
1119 <screenshot>
1120   <graphic format="PNG" fileref="figures/properties_degree.png"/>
1121 </screenshot>
1122 </figure>
1123 </section>
1124 <section><title>Waypoint Icon Size</title>
1125 <para>An option exists to control the icon (symbol) size used for waypoints
1126 </para>
1127 </section>
1128 <section><title>'Home' Default Location: Latitude and Longitude</title>
1129 <para>You can set the 'Home' location directly by inputting the latitude and longitude in decimal degrees.
1130 </para>
1131 </section>
1132 <section><title>Tile's age</title>
1133 <para>This age is used to decided wether or not a new request to tile server must be done.
1134 </para>
1135 <para>Changing this value, you will increase or decrese the network load.</para>
1136 </section>
1137 <section><title>Default maplayer directory</title>
1138 <para>This property sets the default directory of the tiles cache.
1139 This value is used when you create a new map layer.
1140 </para>
1141 <para>You are still able to change this value in each map layer properties.</para>
1142 </section>
1143 <section><title>Map Cache Memory Size</title>
1144 <para>This controls the amount of maps that are stored in memory, rather than having to reread from disk.
1145 Generally if you have a system with lots of memory it's recommended to increase this value.
1146 </para>
1147 </section>
1148 </section>
1149
1150 <section><title>Export/External</title>
1151 <section><title>KML Export Units</title>
1152 <para>Allows setting the units used when saved as the KML file type, such as Metric or Statue units</para>
1153 </section>
1154 <section><title>Image Viewer (Not Windows)</title>
1155 <para>Allows setting the program used to view images associated with Waypoints.</para>
1156 <para>By default this is set to 'xdg-open' which should open the system's default image viewer, however this can be overridden with this setting.</para>
1157 <para>Note: for Windows systems, viewing images associated with Waypoints always uses the system's default image viewer.</para>
1158 </section>
1159 <section><title>External GPX programs</title>
1160 <para>Allows setting the programs invoked via the TrackWaypoint Layer -> Export Layer -> Open With 'program'</para>
1161 <para>Two options are given so that it can be configured for various uses such as:</para>
1162 <itemizedlist>
1163 <listitem><para>An OSM editor (default)</para></listitem>
1164 <listitem><para>Some other user defined program</para></listitem>
1165 </itemizedlist>
1166 </section>
1167 </section>
1168
1169 <section id="prefs_osm"><title>OpenStreetMap Traces</title>
1170 <section><title>OSM Username + Password</title>
1171 <para>Store your OSM details here, so that you don't need to enter it in every time in the <link linkend="osm_upload">Upload to OSM</link> procedure.</para>
1172 <warning>
1173 <para>
1174 Your OSM password will be stored in plain text.
1175 </para>
1176 </warning>
1177 </section>
1178 </section>
1179
1180 </section>
1181
1182 <!-- HOWTOS-->
1183 <section><title>Mini-Howto's</title>
1184 <section><title>Getting Started</title>
1185 <para>
1186 To quickly get started using &appname;, follow these instructions.
1187 </para>
1188 <section><title>Go to an area of interest</title>
1189 <para>
1190 &appname;'s default location is a Manhatten, New York, USA, so you may need to pick another place that interests you.
1191 </para>
1192 <procedure>
1193 <title>Method A</title>
1194 <step>
1195 <para>
1196 Use View - Go to to move to a coordinate of interest. 
1197 </para>
1198 </step>
1199 </procedure>
1200 <procedure>
1201 <title>Method B</title>
1202 <step>
1203 <para>Use the GPS Layer or <menuchoice><guimenu>File</guimenu><guimenuitem>Acquire</guimenuitem><guimenuitem>From GPS</guimenuitem></menuchoice>
1204 to load data directly from your GPS into &appname;.
1205 Currently Garmin, Magellan, DeLorme and Navilink protocols are supported.
1206 </para>
1207 <note>
1208 <para>You must have write permission to the port used. For Unix like OS:</para>
1209 <para>/dev/ttyS0 is the first serial port</para>
1210 <para>/dev/ttyUSB0 is the first USB port</para>
1211 </note>
1212 <note><para>For DeLorme device support you will need GPSBabel v1.4.0+ installed</para></note>
1213 </step>
1214 </procedure>
1215 <procedure>
1216 <title>Method C</title>
1217 <step>
1218 <para>
1219 Get data from files in GPX or KML format, which can be opened directly.
1220 Use <menuchoice><guimenu>File</guimenu><guimenuitem>Open</guimenuitem></menuchoice>
1221 </para>
1222 <para>
1223 Other formats can be imported that are supported by GPSBabel.
1224 <menuchoice><guimenu>File</guimenu><guimenuitem>Acquire</guimenuitem><guimenuitem>Import File With GPSBabel...</guimenuitem></menuchoice>
1225 </para>
1226 </step>
1227 <step>
1228 <para>
1229 Expand Tracks or Waypoints. Right-click on the
1230 track or waypoint of interest and select <guimenuitem>Goto "Center"</guimenuitem>.
1231 </para>
1232 </step>
1233 </procedure>
1234 </section>
1235 <section><title>Add a map layer</title>
1236 <para>
1237 1. Use Layers - New Map Layer, and choose a suitable cache directory
1238 where you would like to store your tracks and click <guilabel>OK</guilabel>. Zoom to a
1239 comfortable level (I suggest 4 mpp) by clicking the left and right
1240 mouse buttons on the gray area where your tracks are. Now from the menu
1241 choose Tools - Map Download, Click where you would like to download a
1242 map. Regardless of what tool you are using, the middle mouse button
1243 always pans. </para>
1244 <note>
1245 <para>
1246 You need an open internet connection when you are downloading maps.
1247 </para>
1248 </note>
1249 <para>
1250 1. You will notice the maps are being drawn on top of the tracks, which
1251 is probably not what you want. Look at the Layers Panel to the left.
1252 Notice how the layer named Map is ABOVE your TrackWaypoint layer that
1253 your GPS data is in. This means that it will be drawn last, or on top
1254 of the other layers. Select the Map layer from the list and click the
1255 down arrow button beneath the list. Your tracks will now be drawn over
1256 the map. </para>
1257
1258 </section>
1259
1260 </section>
1261 <section><title>From 1st startup to GPS track (including offline maps)</title>
1262 <para>
1263 The first you'll see is an empty map, because &appname; in its default configuration will download maps only on demand.
1264 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 'Stuttgart'.
1265 </para>
1266
1267 <section><title>Fetching the maps</title>
1268 <para>
1269 <emphasis role="bold">Map</emphasis>
1270 </para>
1271 <procedure>
1272 <step><para><menuchoice><guimenu>Layers</guimenu><guimenuitem>New Map Layer</guimenuitem></menuchoice></para></step>
1273 <step><para>in the layer properties dialogue choose e.g. <guilabel>OpenStreetMap (Mapnik)</guilabel>.</para></step>
1274 <step>
1275 <para>For the moment, we keep the default <guilabel>Maps Directory</guilabel> (the directory in
1276 which the maps will be stored and can be used for offline usage).</para>
1277 </step>
1278 <step>
1279 <para>Check <guilabel>Autodownload maps</guilabel> and keep the zoom level as <guilabel>Use Viking
1280 Zoom Level</guilabel>.</para>
1281 <note>
1282 <para>
1283 however, that these settings will play an important
1284 role in the pre-fetch for offline usage discussed later
1285 </para>
1286 </note>
1287 </step>
1288 </procedure>
1289 <para>You'll see a map of Stuttgart. Using the mouse wheel, you can
1290 zoom in and out. The maps for the choosen resoltion will be downloaded
1291 automatically.
1292 </para>
1293 <para>
1294 <emphasis role="bold">DEM Layer (Height Map)</emphasis>
1295 </para>
1296 <procedure>
1297 <step><para>Zoom out to 512.</para></step>
1298 <step><para><menuchoice><guimenu>Layers</guimenu><guimenuitem>New DEM Layer</guimenuitem></menuchoice></para></step>
1299 <step><para>Keep the download source as is (SRTM Global 90m), hit <guilabel>OK</guilabel>.</para></step>
1300 </procedure>
1301
1302 <para>In the layer listing on the left, the DEM layer should reside
1303 above the map layer. If this is not the case, highlight the DEM layer
1304 an shift it one up (using the arrow up button).
1305 </para>
1306 <procedure>
1307 <step><para>highlight the DEM layer in the layer listing on the left</para></step>
1308 <step><para>in the toolbar, check DEM layer download/import (the last symbol)</para></step>
1309 <step><para>a left-click in the map window should then fetch the DEM data</para></step>
1310 </procedure>
1311 <para>
1312 This might take some time.
1313 </para>
1314 <para>
1315 Sometimes, a tile does not show up correctly (you might see only a
1316 black frame in the map window) because it got corrupted during
1317 transfer. In order to correct this, you can delete the corresponding
1318 datafile in the cache. <programlisting> right-click the DEM layer properties</programlisting>
1319 </para>
1320 <para>
1321 The <guilabel>DEM Files</guilabel> listing allows you to delete the specific tiles (alternatively do this from the command line).
1322 </para>
1323 <para>
1324 You can also alter the Min. and Max. elevation in this dialogue.
1325 </para>
1326
1327 </section>
1328 <section><title>GPS Track with Height Profile</title>
1329 <procedure>
1330 <step><para>uncheck the DEM layer (the map show up again)</para></step>
1331 <step><para><menuchoice><guimenu>Layers</guimenu><guimenuitem>New TrackWaypoint Layer</guimenuitem></menuchoice></para></step>
1332 </procedure>
1333 <para>
1334 Ensure the new track layer is above the map layer.
1335 </para>
1336 <procedure>
1337 <step><para>expand trackwaypointlayer, select <guimenuitem>Tracks</guimenuitem></para></step>
1338 <step>
1339 <para>
1340 in the tools menu choose <guimenuitem>Begin Track</guimenuitem> which looks like this:
1341 <figure>
1342 <title>Begin Track Icon</title>
1343 <screenshot>
1344   <graphic format="PNG" fileref="figures/begintr_18.png"/>
1345 </screenshot>
1346 </figure>
1347 </para></step>
1348 <step><para>leftclick in the map window, enter a name</para></step>
1349 <step><para>click several times to generate a track (a right-click removes the last point)</para></step>
1350 <step><para>expand tracks in the layer menu, your track should show up, select it</para></step>
1351 <step><para>right click your track, select <guimenuitem>Apply DEM data</guimenuitem></para></step>
1352 <step><para>right click your track again, select <guimenuitem>Properies</guimenuitem></para></step>
1353 <step><para>click the tab <guilabel>Elevation-distance</guilabel> - enjoy the plot</para></step>
1354 </procedure>
1355 <para>
1356 In order to save this setting for later usage
1357 </para>
1358 <procedure>
1359 <step><para>click <guilabel>OK</guilabel> in the <guilabel>Track Properties</guilabel> dialog</para></step>
1360 <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>
1361 </procedure>
1362
1363 </section>
1364 <section><title>Usecase: offline data for holiday</title>
1365 <para>
1366 Suppose you want to have the map and DEM data offline for your holiday in Italy near Bologna.
1367 </para>
1368 <procedure>
1369 <step><para>Start a new &appname; session.</para></step>
1370 <step><para><menuchoice><guimenu>View</guimenu><guimenuitem>Go to Location</guimenuitem></menuchoice>, enter Bologna</para></step>
1371 <step><para><menuchoice><guimenu>Layers</guimenu><guimenuitem>New Map Layer</guimenuitem></menuchoice></para></step>
1372 <step><para>Choose e.g. <guilabel>OpenStreetMap (mapnik)</guilabel>.</para></step>
1373 <step><para>adapt the <guilabel>maps directory</guilabel> e.g. to <filename>/home/user/.viking-map-holiday/</filename>.
1374 This allows you to delete the map stuff after holiday without purging the rest of your maps.
1375 </para></step>
1376 <step><para>check <guilabel>autodownload map</guilabel></para></step>
1377 <step><para>keep <guilabel>viking zoom level</guilabel></para></step>
1378 <step><para>zoom out to 1024</para></step>
1379 <step><para>add a DEM layer (as discussed above)</para></step>
1380 <step><para>download the DEM data</para></step>
1381 </procedure>
1382 <para>In the &app; version discussed here, the DEM data automatically
1383 are stored in <filename>/home/user/.viking-maps/</filename>. You can move the corresponding
1384 tiles into <filename>.viking-map-holiday/</filename> if you like.
1385 </para>
1386 <para>
1387 <emphasis role="bold">Download map data for all zoom levels</emphasis>
1388 </para>
1389 <procedure>
1390 <step><para>uncheck the DEM layer for the map to show up</para></step>
1391 <step><para>navigate the map to be centered at Bologna</para></step>
1392 <step><para>choose the zoom such, that all regions of interest are displayed in the map window (e.g. 1024)</para></step>
1393 <step>
1394 <para>follow this sequence until you have all tiles for all zoom levels you need</para>
1395 <substeps>
1396 <step><para>right-click the map layer properties</para></step>
1397 <step><para>set the zoomlevel explicitely one below the last (in the first cycle 512), hit OK</para></step>
1398 <step><para>right click the map layer  <guimenuitem>Download Missing Onscreen Maps</guimenuitem></para></step>
1399 <step><para>wait until all tiles for that resolution have been downloaded</para></step>
1400 </substeps>
1401 </step>
1402 </procedure>
1403 <para>This may take some time and hd capacity. Lixus wrote a set of
1404 scripts which allow to download the map tiles for several zoom-level in
1405 parallel from the command line.
1406 </para>
1407 <para>
1408 Do not forget to save your configuration (as discussed above).
1409 </para>
1410
1411 </section>
1412
1413 </section>
1414 <section><title>OpenStreetMap project</title>
1415 <para>
1416 <ulink url="http://openstreetmap.org/">OpenStreetMap (OSM)</ulink> is a collaborative project to create a free editable map of the world.
1417 One of sources of data for this project is GPS tracks.
1418 &appname; supports this project via the GPS Traces methods, both uploading and downloading such data.
1419 </para>
1420 <section><title>Uploading data to OpenStreetMap</title>
1421 <para>
1422 It is possible to upload data directly from &appname; to OpenStreetMap.
1423 </para>
1424 <formalpara>
1425 <title>Upload a layer</title>
1426 <para>
1427 One solution is to upload whole a TrackWaypoint layer. To do this,
1428 simply select the layer and right click on it. Then, select <guimenuitem>Upload to
1429 OSM</guimenuitem>.
1430 </para>
1431 </formalpara>
1432 <formalpara>
1433 <title>Upload a single track</title>
1434 <para>One solution is to upload whole a TrackWaypoint layer. To do
1435 this, simply select the layer and right click on it. Then, select
1436 <guimenuitem>Upload to OSM</guimenuitem>.
1437 </para>
1438 </formalpara>
1439 <formalpara>
1440 <title>Fill in the form</title>
1441 <para>
1442 In both cases, &appname; will retain some information.
1443 The email field is the email you used to subscribed into OpenStreetMap.
1444 The password field is the password you used with this account.
1445 The filename is the name you want your upload has on the server. This information is displayed by the osm server.
1446 The description is some descriptive information.
1447 The tags field is a white separated list of tag.
1448 </para> 
1449 </formalpara>
1450 </section>
1451 <section><title>Downloading traces from OpenStreetMap</title>
1452 <para>
1453 It is possible to download GPS traces directly from OpenStreetMap into &appname;.
1454 This feature can be really useful for checking existing data before uploading new ones.
1455 </para>
1456 <formalpara>
1457 <title>Download all visible tracks</title>
1458 <para>One solution is to select
1459 <menuchoice>
1460 <guimenu>File</guimenu>
1461 <guisubmenu>Acquire</guisubmenu>
1462 <guimenuitem>OSM traces...</guimenuitem>
1463 </menuchoice>.
1464 Each request can get up to 5,000 points.
1465 The dialog box allows setting which group of 5,000 points to get. These groups are known as 'Page Numbers' which start at 0.
1466 Increasing the page number parameter allows one to request the subsequent sets of point groups.
1467 See <ulink url="http://wiki.openstreetmap.org/wiki/API_v0.6#GPS_Traces"/> for further detail.
1468 </para>
1469 </formalpara>
1470 </section>
1471 </section>
1472
1473 <section id="extend_viking">
1474     <title>Extending Viking</title>
1475
1476       <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>
1477       <para>Here is an example:
1478 <programlisting><![CDATA[
1479 <objects>
1480   <object class="ClassName">
1481     <property name="property_name1">Property value</property>
1482     <property name="property_name2">Property value</property>
1483   </object>
1484   ...
1485 <objects>
1486 ]]>
1487 </programlisting>
1488 </para>
1489       <para>You can find more examples in the documentation part of the distribution.</para>
1490       <section>
1491         <title>Map Source</title>
1492         <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>
1493         <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>
1494
1495         <para>The VikSlippyMapSource allows to declare any map's source working like OpenStreetMap. It supports the following properties:
1496           <variablelist>
1497             <varlistentry>
1498               <term>id</term>
1499               <listitem><para>this is an integer and should be unique as it used to identify the map source</para></listitem>
1500             </varlistentry>
1501             <varlistentry>
1502               <term>label</term>
1503               <listitem><para>the text displayed in the map's source selection dialog</para></listitem>
1504             </varlistentry>
1505             <varlistentry>
1506               <term>hostname</term>
1507               <listitem><para>the server's hostname (eg. "tile.openstreetmap.org")</para></listitem>
1508             </varlistentry>
1509             <varlistentry>
1510               <term>url</term>
1511               <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>
1512             </varlistentry>
1513           </variablelist>
1514         </para>
1515         <para>The VikTmsMapSource allows to declare any TMS service. It supports the following properties:
1516           <variablelist>
1517             <varlistentry>
1518               <term>id</term>
1519               <listitem><para>this is an integer and should be unique as it used to identify the map source</para></listitem>
1520             </varlistentry>
1521             <varlistentry>
1522               <term>label</term>
1523               <listitem><para>the text displayed in the map's source selection dialog</para></listitem>
1524             </varlistentry>
1525             <varlistentry>
1526               <term>hostname</term>
1527               <listitem><para>the server's hostname (eg. "tile.openstreetmap.org")</para></listitem>
1528             </varlistentry>
1529             <varlistentry>
1530               <term>url</term>
1531               <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>
1532             </varlistentry>
1533           </variablelist>
1534         </para>
1535         <para>The VikWmscMapSource allows to declare any WMS or WMS-C service. It supports the following properties:
1536           <variablelist>
1537             <varlistentry>
1538               <term>id</term>
1539               <listitem><para>this is an integer and should be unique as it used to identify the map source</para></listitem>
1540             </varlistentry>
1541             <varlistentry>
1542               <term>label</term>
1543               <listitem><para>the text displayed in the map's source selection dialog</para></listitem>
1544             </varlistentry>
1545             <varlistentry>
1546               <term>hostname</term>
1547               <listitem><para>the server's hostname (eg. "tile.openstreetmap.org")</para></listitem>
1548             </varlistentry>
1549             <varlistentry>
1550               <term>url</term>
1551               <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>
1552             </varlistentry>
1553           </variablelist>
1554         </para>
1555       </section>
1556
1557       <section>
1558         <title>Go-to search engines</title>
1559         <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>
1560         <para>An example of the file in the distribution <filename>doc/examples/goto_tools.xml</filename>.</para>
1561         <para>Currently, there is a single object class available: VikGotoXmlTool. Such feature allows to declare any search engine using a XML format as result.</para>
1562         <para>The related properties are:
1563           <variablelist>
1564             <varlistentry>
1565               <term>label</term>
1566               <listitem><para>the text displayed in the <guilabel>Go-To</guilabel> dialog</para></listitem>
1567             </varlistentry>
1568             <varlistentry>
1569               <term>url-format</term>
1570               <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>
1571             </varlistentry>
1572             <varlistentry>
1573               <term>lat-path</term>
1574               <listitem><para>XML path of the latitude (eg. <literal>/root/parent/elem</literal>)</para></listitem>
1575             </varlistentry>
1576             <varlistentry>
1577               <term>lat-attr (optional)</term>
1578               <listitem><para>name of the attribute (of previous element) containing the latitude</para></listitem>
1579             </varlistentry>
1580             <varlistentry>
1581               <term>lon-path</term>
1582               <listitem><para>XML path of the longitude (eg. <literal>/root/parent/elem</literal>)</para></listitem>
1583             </varlistentry>
1584             <varlistentry>
1585               <term>lon-attr (optional)</term>
1586               <listitem><para>name of the attribute (of previous element) containing the longiude</para></listitem>
1587             </varlistentry>
1588           </variablelist>
1589         </para>
1590         <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>
1591       </section>
1592
1593       <section>
1594         <title>External tools</title>
1595         <para>It is possible to add new external tools. The file is <filename>~/.viking/external_tools.xml</filename>.</para>
1596         <para>An example of the file in the distribution <filename>doc/examples/external_tools.xml</filename>.</para>
1597         <para>The VikWebtoolCenter allows to declare any Webtool using a logic based on center coordinates and zoom level value.</para>
1598         <para>The related properties are:
1599           <variablelist>
1600             <varlistentry>
1601               <term>id</term>
1602               <listitem><para>this is an integer and should be unique as it used to identify the tool</para></listitem>
1603             </varlistentry>
1604             <varlistentry>
1605               <term>label</term>
1606               <listitem><para>the text displayed in the menu entry</para></listitem>
1607             </varlistentry>
1608             <varlistentry>
1609               <term>url</term>
1610               <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>
1611             </varlistentry>
1612           </variablelist>
1613         </para>
1614         <para>The VikWebtoolBounds allows to declare any Webtool using a logic based on bounds coordinates.</para>
1615         <para>The related properties are:
1616           <variablelist>
1617             <varlistentry>
1618               <term>id</term>
1619               <listitem><para>this is an integer and should be unique as it used to identify the tool</para></listitem>
1620             </varlistentry>
1621             <varlistentry>
1622               <term>label</term>
1623               <listitem><para>the text displayed in the menu entry</para></listitem>
1624             </varlistentry>
1625             <varlistentry>
1626               <term>url</term>
1627               <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>
1628             </varlistentry>
1629           </variablelist>
1630         </para>
1631       </section>
1632       
1633       <section>
1634         <title>More</title>
1635         <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>) are also searched in <filename>/etc/viking</filename> and <filename>/usr/share/viking</filename> directories (or related in your system).</para>
1636         <para>The <envar>XDG_DATA_DIRS</envar> environment variable can be used to change these directories.</para>
1637         <para>The <envar>XDG_DATA_HOME</envar> environment variable s also used (if set) to look for these extension files.</para>
1638       </section>
1639
1640 </section>
1641
1642 <section><title>What to Do if &appname; Does Not Seem to Work</title>
1643 <para>
1644 In order to get some information about what &appname; is doing, start it in verbose debug mode via the command line:
1645 <programlisting>viking -dV</programlisting>
1646 </para>
1647 <para>
1648 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.
1649 E.g. Something like this for DEMs:
1650 <screen>
1651 ** (viking:28778): DEBUG: curl_download_uri: uri=http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/Eurasia/N48E008.hgt.zip
1652 * About to connect() to dds.cr.usgs.gov port 80 (#0)
1653 * Trying 152.61.128.95... * connected
1654 * Connected to dds.cr.usgs.gov (152.61.128.95) port 80 (#0)
1655  GET /srtm/version2_1/SRTM3/Eurasia/N48E008.hgt.zip HTTP/1.1
1656 User-Agent: viking/0.9.8 libcurl/7.18.2 GnuTLS/2.4.2 zlib/1.2.3.3 libidn/1.8
1657 Host: dds.cr.usgs.gov
1658 Accept: */*
1659  HTTP/1.1 200 OK
1660  Date: Sun, 26 Jul 2009 18:13:38 GMT
1661  Server: Apache
1662  Last-Modified: Tue, 21 Jul 2009 19:57:35 GMT
1663  ETag: eac3f8-1828f5-46f3caa76070a
1664  Accept-Ranges: bytes
1665  Content-Length: 1583349
1666  Content-Type: application/zip
1667
1668 * Connection #0 to host dds.cr.usgs.gov left intact
1669 * Closing connection #0
1670 ** (viking:28778): DEBUG: dem_layer_add_file: /home/username/.viking-maps/srtm3-Eurasia/N48E008.hgt.zip
1671 </screen>
1672 Or for OSM Mapnik tile server:
1673 <screen>
1674 * About to connect() to tile.openstreetmap.org port 80 (#0)
1675 *   Trying 193.63.75.28... * connected
1676 * Connected to tile.openstreetmap.org (193.63.75.28) port 80 (#0)
1677  GET /13/4065/2748.png HTTP/1.1
1678 User-Agent: viking/0.9.96 libcurl/7.20.1 GnuTLS/2.8.6 zlib/1.2.3.4 libidn/1.18
1679 Host: tile.openstreetmap.org
1680 Accept: */*
1681
1682 * HTTP 1.0, assume close after body
1683  HTTP/1.0 200 OK
1684  Date: Thu, 14 Oct 2010 22:18:42 GMT
1685  Server: Apache/2.2.8 (Ubuntu)
1686  ETag: "b66ff9d46474bab68262a3483428a232"
1687 ** (viking:16704): DEBUG: curl_get_etag_func: ETAG found: "b66ff9d46474bab68262a3483428a232"
1688  Content-Length: 17194
1689  Cache-Control: max-age=94805
1690  Expires: Sat, 16 Oct 2010 00:38:47 GMT
1691  Content-Type: image/png
1692  Age: 5153
1693  X-Cache: HIT from konqi.openstreetmap.org
1694  X-Cache-Lookup: HIT from konqi.openstreetmap.org:3128
1695  Via: 1.1 konqi.openstreetmap.org:3128 (squid/2.7.STABLE7)
1696  Connection: close
1697  
1698 * Closing connection #0
1699 * About to connect() to a.andy.sandbox.cloudmade.com port 80 (#0)
1700 *   Trying 178.63.75.195... ** (viking:16704): DEBUG: curl_download_uri: uri=http://tile.openstreetmap.org/13/4065/2749.png
1701 * About to connect() to tile.openstreetmap.org port 80 (#0)
1702 *   Trying 193.63.75.28... * connected
1703 * Connected to a.andy.sandbox.cloudmade.com (178.63.75.195) port 80 (#0)
1704  GET /tiles/cycle/13/4065/2747.png HTTP/1.1
1705 User-Agent: viking/0.9.96 libcurl/7.20.1 GnuTLS/2.8.6 zlib/1.2.3.4 libidn/1.18
1706 Host: a.andy.sandbox.cloudmade.com
1707 Accept: */*
1708
1709 * connected
1710 * Connected to tile.openstreetmap.org (193.63.75.28) port 80 (#0)
1711  GET /13/4065/2749.png HTTP/1.1
1712 User-Agent: viking/0.9.96 libcurl/7.20.1 GnuTLS/2.8.6 zlib/1.2.3.4 libidn/1.18
1713 Host: tile.openstreetmap.org
1714 Accept: */*
1715
1716 * HTTP 1.0, assume close after body
1717  HTTP/1.0 200 OK
1718  Date: Thu, 14 Oct 2010 23:44:35 GMT
1719  Server: Apache/2.2.8 (Ubuntu)
1720  ETag: "8e520ad47ce9c1b63430554886eb5fab"
1721 ** (viking:16704): DEBUG: curl_get_etag_func: ETAG found: "8e520ad47ce9c1b63430554886eb5fab"
1722  Content-Length: 18094
1723  Cache-Control: max-age=87742
1724  Expires: Sat, 16 Oct 2010 00:06:57 GMT
1725  Content-Type: image/png
1726  X-Cache: MISS from konqi.openstreetmap.org
1727  X-Cache-Lookup: MISS from konqi.openstreetmap.org:3128
1728  Via: 1.1 konqi.openstreetmap.org:3128 (squid/2.7.STABLE7)
1729  Connection: close
1730 </screen>
1731 </para>
1732 </section>
1733
1734 </section>
1735
1736 <section><title>Dependencies</title>
1737 <formalpara><title>gpsbabel</title>
1738 <para>&appname; uses <ulink url="http://gpsbabel.org/">GPSBabel</ulink> to convert data.</para>
1739 </formalpara>
1740 <formalpara><title>unbuffer (optional)</title>
1741 <para>&appname; uses unbuffer command to optimize conversion calls.</para>
1742 </formalpara>
1743 </section>
1744
1745 </article>