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