Subversion Repositories public

Rev

Rev 273 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
311 andreas 1
<?xml version="1.0" encoding="UTF-8"?>
2
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
273 andreas 3
  <!ENTITY sportwatcher "<application>SportWatcher 0.6</application>">
88 andreas 4
  <!ENTITY kappname "&sportwatcher;"><!-- Do *not* replace kappname-->
5
  <!ENTITY package "kde-module"><!-- kdebase, kdeadmin, etc -->
6
  <!ENTITY % addindex "IGNORE">
7
  <!ENTITY % English "INCLUDE"><!-- change language only here -->
8
 
273 andreas 9
 ]>
88 andreas 10
 
273 andreas 11
<!-- XML file was created by LyX 1.6.3
12
  See http://www.lyx.org/ for more information -->
88 andreas 13
<book lang="&language;">
14
<bookinfo>
273 andreas 15
<title>The user manual for &sportwatcher;</title>
88 andreas 16
 
17
<authorgroup>
18
<author>
155 andreas 19
<firstname>Andreas</firstname>
88 andreas 20
<othername></othername>
155 andreas 21
<surname>Theofilu</surname>
88 andreas 22
<affiliation>
23
<address><email>andreas@theosys.at</email></address>
24
</affiliation>
25
</author>
26
</authorgroup>
27
 
28
<copyright>
29
<year>2007</year>
155 andreas 30
<year>2008</year>
273 andreas 31
<year>2009</year>
88 andreas 32
<holder>Andreas Theofilu</holder>
33
</copyright>
34
<!-- Translators: put here the copyright notice of the translation -->
35
<!-- Put here the FDL notice.  Read the explanation in fdl-notice.docbook
36
     and in the FDL itself on how to use it. -->
37
<legalnotice>&FDLNotice;</legalnotice>
38
 
273 andreas 39
<date>2009-07-30</date>
40
<releaseinfo>0.6</releaseinfo>
88 andreas 41
 
42
<abstract>
273 andreas 43
<para>&sportwatcher; is program to read out aktivities from a Garmin Forerunner. It support all sport watches connected over the USB port, like Garmin Forerunner305.</para>
88 andreas 44
</abstract>
45
 
46
<keywordset>
47
<keyword>KDE</keyword>
212 andreas 48
<keyword>SportWatcher</keyword>
155 andreas 49
<keyword>Garmin</keyword>
50
<keyword>GDAL</keyword>
88 andreas 51
</keywordset>
52
 
53
</bookinfo>
273 andreas 54
<chapter id='cha.Introduction-1' >
55
<title>Introduction<!-- anchor id="cha.Introduction-1" --></title>
56
<para>In the first place, SportWatcher is a program to get out some GPS data from a GPS receiver. I started developing this program when I realized, that there was no support for my new Garmin Forerunner305 under Linux. Because I use Linux only, I was not able to use the software who came with the watch, because it was for Windows only. So I looked closer to this GPS receiver, made for sport and training. Like most GPS receivers from Garmin, this one uses also the NMEA protocol to transfer data. By accident I found the garmintools, written by "Dave Bailey" (&lt;dave &lt;at&gt; daveb &lt;dot&gt; net&gt;). This tools contain a library to read out the data over the USB port. I used the source by courtesy of Dave as the basic of SportWatcher and used it to get out everything of my Forerunner 305 and hopefully every compatible GPS receiver.</para><sect1 id='sec:Supported-GPS-receiver' >
57
<title>Supported GPS receiver<!-- anchor id="sec:Supported-GPS-receiver" --></title>
58
<para>Basically every GPS receiver, who uses the NMEA protocol and has an USB port, should be supported. However. Only the following receivers are tested:</para><itemizedlist>
59
<listitem><para>Garmin Forerunner305</para></listitem><listitem><para>Garmin Forerunner205</para></listitem></itemizedlist><para>If you own another type of GPS receiver and when it works with SportWatcher, please send an e−mail to <emphasis>andreas &lt;at&gt; theosys &lt;dot&gt; at</emphasis>.</para></sect1></chapter><chapter id='cha.Installation' >
60
<title>Installation<!-- anchor id="cha.Installation" --></title>
61
<para>&sportwatcher; was written in C++ and is made for the desktop <ulink url="http://www.kde.org">KDE</ulink>. The program was developed exclusive under Linux. SportWatcher is open source! This means, that the whole source is available to you and you are allowed to use it for your own. The source code, and with it the whole program, is licensed under the <ulink url="http://www.gnu.org/licenses/gpl.html">GNU General Public License version 3</ulink>.</para><sect1 id='sec.Download' >
62
<title>Download<!-- anchor id="sec.Download" --></title>
63
<para>SportWatcher is available as a binary package for some Linux distributions. Of course, ther is also the source code available. Get the stable source code or the package for your distribution from one of the following sources:</para><itemizedlist>
64
<listitem><para>Sourceforge: <ulink url="http://sourceforge.net/projects/sportwatcher/">Sourceforge</ulink></para></listitem><listitem><para>TheoSys: <ulink url="http://www.theosys.at/download">TheoSys</ulink></para></listitem></itemizedlist><para>If you like to help develop SportWatcher, or simply want to have the latest, untested code, with all available bells and whistles, then you can get the code out of one of the subversion archives. The source code in the subversion archives, is for developers and is not tested! There is no garanty, that this code will even compile!</para>
65
<para>Type on the command line (shell), one of the following commands, dependig from what archive you want to download the code:</para><screen>
66
<![CDATA[# svn checkout https://sportwatcher.svn.sourceforge.net/svnroot/sportwatcher
67
]]></screen><para>or</para><screen>
68
<![CDATA[# svn checkout svn://www.theosys.at/sportwatcher/trunk
69
]]></screen><para>It is possible to access the <ulink url="http://www.theosys.at/websvn/listing.php?repname=repos+1&amp;path=/sportwatcher/trunk/&amp;rev=0&amp;sc=0">Repository</ulink>, containing the latest code, with your WEB browser too.</para><sect2 id='sec.Necessary-components' >
70
<title>Necessary components<!-- anchor id="sec.Necessary-components" --></title>
71
<para>To be able to compile SportWatcher you need the following components:</para><itemizedlist>
72
<listitem><para><ulink url="http://www.kde.org">KDE 4.1.x</ulink></para></listitem><listitem><para><ulink url="http://www.gdal.org">GDAL 1.5.x</ulink> (optional)</para></listitem></itemizedlist><sect3 id='sec.KDE-4.1.x' >
73
<title>KDE 4.1.x<!-- anchor id="sec.KDE-4.1.x" --></title>
74
<para>Since version 0.6 SportWatcher needs at least version 4.1.0 of KDE. It will not compile with older versions of it!</para></sect3><sect3 id='sec.GDAL-1.5.x' >
75
<title>GDAL 1.5.x<!-- anchor id="sec.GDAL-1.5.x" --></title>
76
<para>SportWatcher is able to display a map underneath a track. This is made with the help of the GDAL library. But this library is optional. It is possible, to compile SportWatcher even without GDAL installed. Though the ability to display maps is missing then.</para>
77
<para>Debian testing (Squeeze) supports currently version 1.5.4 of GDAL. Up to version 8.04 TLS of Ubuntu (Hardy Heron), only version 1.4.x of GDAL is supported. This version of GDAL is not appropriate for SportWatcher. It is no problem to use the newer version 1.6.0 of GDAL. SportWatcher will compile and function very well with the newest version.</para>
78
<para>openSUSE 11.0 doesn't support GDAL out of the box. There are some easy to find places, where you can download GDAL for openSUSE, but it's not easy to satisfy the dependencies, GDAL needs. Therefore I've forgone to include GDAL. This means, that version 0.5 of SportWatcher does not support maps on openSUSE 11.0.</para>
79
<para>Also openSUSE 11.1 does not support GDAL. I decided to compile the binary version with it. To make it simple to compile SprortWatcher yourself, you can download GDAL for openSUSE 11.1 from here:</para><itemizedlist>
80
<listitem><para><ulink url="http://www.theosys.at/download/gdal-1.6.1-0.pm.1.i586.rpm">gdal-1.6.1-0.pm.1.i586.rpm</ulink></para></listitem><listitem><para><ulink url="http://www.theosys.at/download/geotiff-1.2.5-0.pm.1.i586.rpm">geotiff-1.2.5-0.pm.1.i586.rpm</ulink></para></listitem><listitem><para><ulink url="http://www.theosys.at/download/libgdal1-1.6.1-0.pm.1.i586.rpm">libgdal1-1.6.1-0.pm.1.i586.rpm</ulink></para></listitem><listitem><para><ulink url="http://www.theosys.at/download/libgdal-devel-1.6.1-0.pm.1.i586.rpm">libgdal-devel-1.6.1-0.pm.1.i586.rpm</ulink></para></listitem><listitem><para><ulink url="http://www.theosys.at/download/libgeos1-3.1.0-0.pm.1.i586.rpm">libgeos1-3.1.0-0.pm.1.i586.rpm</ulink></para></listitem><listitem><para><ulink url="http://www.theosys.at/download/libgeos-devel-3.1.0-0.pm.1.i586.rpm">libgeos-devel-3.1.0-0.pm.1.i586.rpm</ulink></para></listitem><listitem><para><ulink url="http://www.theosys.at/download/libgeotiff1-1.2.5-0.pm.1.i586.rpm">libgeotiff1-1.2.5-0.pm.1.i586.rpm</ulink></para></listitem><listitem><para><ulink url="http://www.theosys.at/download/libgeotiff-devel-1.2.5-0.pm.1.i586.rpm">libgeotiff-devel-1.2.5-0.pm.1.i586.rpm</ulink></para></listitem></itemizedlist></sect3></sect2></sect1><sect1 id='sec.Compile-Install' >
81
<title>Compile / Install<!-- anchor id="sec.Compile-Install" --></title>
82
<sect2 id='sec.Install-the-binary' >
83
<title>Install the binary pakage<!-- anchor id="sec.Install-the-binary" --></title>
84
<para>After downloading the pakage, open a shell and become root. Then type in the following command:</para><screen>
85
<![CDATA[]]># dpkg -i sportwatcher_<emphasis>X.X-x</emphasis>.i386.deb
86
<![CDATA[]]></screen><para>or</para><screen>
87
<![CDATA[]]># dpkg -i sportwatcher_<emphasis>X.X-x</emphasis>.amd64.deb 
88
<![CDATA[]]></screen><para>or </para><screen>
89
<![CDATA[]]># dpkg -i sportwatcher_<emphasis>X.X-x</emphasis>_ubuntu_i386.deb 
90
<![CDATA[]]></screen><para>or </para><screen>
91
<![CDATA[]]># rpm -ivh sportwatcher-<emphasis>X.X-x</emphasis>.i586.rpm 
92
<![CDATA[]]></screen><para>Where X.X-x represents the version and may look like 0.6-1, or the like. After successfull installation you can use the program immediately.</para></sect2><sect2 id='sec.Compile' >
93
<title>Compile<!-- anchor id="sec.Compile" --></title>
94
<para>After downloading the source, and after it was uncompressed into a directory, change to this new directory. On a command line, type the following commands:</para><screen>
95
<![CDATA[$ mkdir build 
96
$ cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local
97
]]></screen><para>This program checks now for all necessary components. In case something is missing, the script stops and displays an error message. Common reason for errors are, that something is not installed. In most cases, this is the developer version of a package. With Debian, the name of the developer packages ends with <emphasis>dev</emphasis>. Install the missing packages, if necessary.</para>
98
<para>With the following command, you start the compiler:</para><screen>
99
<![CDATA[$ make 
100
]]></screen><para>In case it stops and display an error message, it is mostly because something is not installed, or there is a wrong version installed. Check out what version Debian supports, and install it.</para><sect3 id='sec.Installation' >
101
<title>Installation<!-- anchor id="sec.Installation" --></title>
102
<para>To install &sportwatcher; for all users on your system, you need root priviledges. Otherwise you can install the program into your home directory too. With SportWatcher you got a file called INSTALL. It contains a detailed description of how to install the program. If you've troubles installing SportWatcher, read this file first! To install SportWatcher for all users on your system, become root and type in the following command:</para><screen>
103
<![CDATA[# make install
104
]]></screen><para>After successfull installation of the program, you can start it with the command sportwatcher directly from the command line, or you can open the menu "<guimenu>Utilities</guimenu>--&gt;<guimenuitem>Sportwatcher</guimenuitem>" and start it from there (this is for KDE only!).</para></sect3></sect2></sect1><sect1 id='sec.Settings-for-Linux' >
105
<title>Settings for Linux<!-- anchor id="sec.Settings-for-Linux" --></title>
106
<para>SportWatcher tries to find out the USB port, where you've connected your GPS device itself and then it accesses this port directly. Unfortunately this is often forbidden for normal users. To grant access to the USB port for SportWatcher, you've to tell the UDEV system, that it should set the access rights of the USB port in a way, that a normal user is allowed to read and write. While it's possible to run SportWatcher with root priviledges, what is not recomended, you can add some lines to a configuration file of UDEV.</para>
107
<para>&sportwatcher;greift direkt auf das USB-Port zu, an dem Sie Ihren <hardware>Forerunner 305</hardware> angeschlossen haben. Allerdings fehlen einem normalen Anwender daf&uuml;r in der Regel die Berechtigungen, so das beim Versuch die Daten aus der Uhr auszulesen, eine Fehlermeldung erscheint. Startet man das Programm jedoch als Benutzer root, funktioniert das Auslesen von Daten einwandfrei. Diesem Problem kann man nun auf zwei Arten begegnen. Man kann SportWatcher immer als <emphasis>root</emphasis> ausf&uuml;hren, wovon ich jedoch dringend abrate, oder man manipuliert einmal die Einstellungen von <emphasis>udev</emphasis> und vergibt die notwendigen Berechtigungen. Im Folgenden wird Schritt f&uuml;r Schritt erkl&auml;rt, wie man die ben&ouml;tigten Berechtigungen einstellt. </para><sect2 id='sec.For-Debian-and' >
108
<title>For Debian and (K)Ubuntu<!-- anchor id="sec.For-Debian-and" --></title>
109
<para>Open a shell and become root. Then type in the following commands:</para><screen>
110
<![CDATA[# cd /etc/udev/rules.d
111
# vi z60-garmin.rules
112
]]></screen><para>Instead of <command>vi</command> you can use any other text editor, of course. Enter the following lines into the new created file:</para><screen>
113
<![CDATA[SYSFS{idVendor}=="091e", SYSFS{idProduct}=="0003", MODE="0666"
114
ATTRS{idVendor}=="091e", ATTRS{idProduct}=="0003", MODE="0666"
115
]]></screen><para>Save the file and restart UDEV by typing the following command on the command line:</para><screen>
116
<![CDATA[# /etc/init.d/udev restart
117
]]></screen><para>From now on, the access to the USB port - only for your Garmin Forerunner, regardless on which of the connectors you conected it - should be granted.</para></sect2><sect2 id='sec.Other-distributions' >
118
<title>Other distributions<!-- anchor id="sec.Other-distributions" --></title>
119
<para>As long as your Linux distribution uses UDEV, the description above should work. In case your distribution uses something else, ask your system administrator, or read the documentation of your system. Especialy the chapter about setting rights on USB ports.</para></sect2><sect2 id='sec.It-still-doesn' >
120
<title>It still doesn't work<!-- anchor id="sec.It-still-doesn" --></title>
121
<para>In case of troubles, if the above instruction doesn't work, you should check the vendor and product number of your GPS device. If they differ from the ones above, type in the correct ones. You can find out this numbers with the command:</para><screen>
122
<![CDATA[$ lsusb
123
]]></screen></sect2></sect1></chapter><chapter id='cha.Working-with' >
124
<title>Working with &sportwatcher;<!-- anchor id="cha.Working-with" --></title>
125
<sect1 id='sec.The-menu-File' >
126
<title>The menu <guimenu>File</guimenu><!-- anchor id="sec.The-menu-File" --></title>
127
<sect2 id='sec.Read-in-aktivities' >
128
<title>Read in aktivities<!-- anchor id="sec.Read-in-aktivities" --></title>
129
<para>To visualize anything, SportWatcher must read some informations from a GPS receiver. To do this, SportWatcher offers a menu point:</para>
88 andreas 130
<screenshot>
273 andreas 131
<screeninfo>The menu "File"</screeninfo>
132
   <mediaobject>
133
      <imageobject>
134
         <imagedata fileref="menuFile.png" format="PNG"></imagedata>
135
      </imageobject>
136
      <textobject>
137
         <phrase>Menu File</phrase>
138
      </textobject>
139
   </mediaobject>
140
</screenshot><sect3 id='sec.Der-Menu-Read' >
141
<title>Der Menu item <guimenuitem>Read data</guimenuitem><!-- anchor id="sec.Der-Menu-Read" --></title>
142
<para>With the menu item <guimenuitem>Read data</guimenuitem>, it reads out all aktivities currently stored on the watch. After clicking on this menu point, a window appears, showing the progress of the read process.</para>
143
<screenshot>
144
<screeninfo>Progress dialog</screeninfo>
145
   <mediaobject>
146
      <imageobject>
147
         <imagedata fileref="Progress.png" format="PNG"></imagedata>
148
      </imageobject>
149
      <textobject>
150
         <phrase>Progress dialog</phrase>
151
      </textobject>
152
   </mediaobject>
88 andreas 153
</screenshot>
273 andreas 154
<para>Depending on the set of data in the watch, this may take up to several minutes. As soon as everything was read successful, the progress dialog disappears, and one or more new entries appear at the left of the program window. Everything is saved in files on your disk at this time. SportWatcher allways reads the complete memory of the watch, but it saves only new aktivities. Existent activities are never overwritten.</para>
155
<para>At least the Garmin Forerunner305 reorganizes the aktivities, if memory is nearly full. It deletes messure points and leaves only the laps. If SportWatcher would overwrite already saved activities, the meassure point would be lost.</para>
156
<para>In case you've trouble getting the activities out of the watch, read the section <xref linkend="sec.Settings-for-Linux" />.</para></sect3><sect3 id='sec.The-menu-Open' >
157
<title>The menu item <guimenu>Open</guimenu><!-- anchor id="sec.The-menu-Open" --></title>
158
<para>After clicking on this item, a dialog window appears. There is a filter installed, showing only files with the extension <literal role="extension">.gmn</literal>. This files are in the format, &sportwatcher; uses internal. In case you've files in this format, you can read them in here. If you selected a valid file, &sportwatcher; reads the file and saves it in it own directory structure. Then the activity appear in the list of activities on the left side of the main window.</para></sect3><sect3 id='sec.The-Menu-Import' >
159
<title>The Menu item <guimenuitem>Import</guimenuitem><!-- anchor id="sec.The-Menu-Import" --></title>
160
<para>&sportwatcher; is able to read files created from Garmin <command>Trainingcenter</command>. This files have usually the file extension <literal role="extension">.tcx</literal> and are simple XML files. There is also other software who can output activities in this format.</para>
161
<para>After clicking on this item, a file dialog box appears. The filter is set to files with the extension <literal role="extension">.tcx</literal>. Select the wanted file and click on button <guibutton>Open</guibutton>. &sportwatcher; reads the file, evaluates it and parses it. If it's valid, it will be stored as a new activity.</para></sect3></sect2><sect2 id='sec.Export-activities' >
162
<title>Export activities<!-- anchor id="sec.Export-activities" --></title>
163
<para>&sportwatcher; can save the activities in several formats. Not every format can contain all informations of an activity. Most of them can hold only the GPS informations. The export features of SportWatcher allows other programs to visualize a track, for example, in special ways. &sportwatcher; currently supports the following formats:</para><itemizedlist>
164
<listitem><para>TCX - Garmin Trainig Center</para></listitem><listitem><para>GPX - GPS Exchange Format</para></listitem><listitem><para>OSM - Open Street Map Format</para></listitem><listitem><para>HRM - Polar Heart Rate Monitor Format</para></listitem></itemizedlist><sect3 id='sec.The-menu-HR' >
165
<title>The menu item <guimenuitem>Save heart rate</guimenuitem><!-- anchor id="sec.The-menu-HR" --></title>
166
<para>The software comming with the sport watches of Polar support the proprietary format <acronym>HRM</acronym> (Heart Rate Monitor). &sportwatcher; can export an activity in this format. Unfortunately this format can hold only the heart rate information, the laps, and the total time of the activity.</para>
167
<para>After clicking the item <guimenuitem>Save heart rate</guimenuitem> a file dialog box appears. Choose the directory where you wand to save the file and type in the wanted file name. There is allready a filename ther in the notation Polar uses. If you like, you can change it. Click on the button <guibutton>Save</guibutton> to save the file.</para>
168
<note><para>Allthough &sportwatcher; can save to the <acronym>HRM</acronym> format, it can't import it.</para></note></sect3><sect3 id='sec.The-menu-Save' >
169
<title>The menu <guimenuitem>Save as</guimenuitem><!-- anchor id="sec.The-menu-Save" --></title>
170
<para>After clicking to this item, a file dialog box appears. It allows to save the activity in one of the formats <acronym>TCX</acronym>, <acronym>GPX</acronym> and <acronym>OSM</acronym>.</para>
171
<screenshot>
172
<screeninfo>Save as</screeninfo>
173
   <mediaobject>
174
      <imageobject>
175
         <imagedata fileref="SaveAs.png" format="PNG"></imagedata>
176
      </imageobject>
177
      <textobject>
178
         <phrase>Save as</phrase>
179
      </textobject>
180
   </mediaobject>
181
</screenshot>
182
<para>Select the wanted directory and type in the file name. Select the wanted format at the filter line and click on the button <guibutton>Save</guibutton>. If the file allready exists, SportWatcher ask you to overwrite the file. Decide what you want to do and click the appropriate button.</para><sect4>
183
<title>The format TCX</title>
184
<para>This is the format Garmins <command>Trainingcenter</command> uses. It contains the complete information of an activity and can be used by several programs. It is also used by the TheoSys sport logger you'll find at</para><screen>
185
<![CDATA[]]><ulink url="https://www.theosys.at/splog/index.php?lang=eng"></ulink>
186
<![CDATA[]]></screen><para>This WEB application completes the records of your activities. Try it out. It's free!</para></sect4><sect4>
187
<title>The format GPX</title>
188
<para>This format is for transporting routes, based on GPS coordinates. It holds the GPS coordinates of every meassure point. Together this is a route representing the track.</para></sect4><sect4>
189
<title>The format OSM</title>
190
<para>This format describes a complete map. It is used by the <ulink url="http://www.openstreetmap.org">Open Street Map</ulink> project to hold maps. Because the maps are free, they are available for everybody and everybody can add parts to the map. If the way you was running or byking, is currently not part of Open Street Map and you want it be part of the map, you can use this format to add the way to the map. There is more information on there WEB site.</para></sect4></sect3></sect2><sect2 id='sec.The-menu-Print' >
191
<title>The menu item <guimenuitem>Print</guimenuitem><!-- anchor id="sec.The-menu-Print" --></title>
192
<para>After clicking on this item, the currently loaded activity will be printed. If possible, everything is printed on one page.</para>
193
<note><para>This function is not implemented with &sportwatcher;!</para></note></sect2></sect1><sect1 id='sec.The-menu-Edit' >
194
<title>The menu <guimenu>Edit</guimenu><!-- anchor id="sec.The-menu-Edit" --></title>
195
<screenshot>
196
<screeninfo>Menu Edit</screeninfo>
197
   <mediaobject>
198
      <imageobject>
199
         <imagedata fileref="menuEdit.png" format="PNG"></imagedata>
200
      </imageobject>
201
      <textobject>
202
         <phrase>Menu Edit</phrase>
203
      </textobject>
204
   </mediaobject>
205
</screenshot><sect2 id='sec.The-menu-Rename' >
206
<title>The menu item <guimenuitem>Rename</guimenuitem><!-- anchor id="sec.The-menu-Rename" --></title>
207
<para>This menu item allows to rename an activity. After clicking on this item, a small dialog box, with an edit line in it, appears. The line contails the actual name of the activity. In case this is the default name, consisting of the date and time, the time may be somewhat shortened. This is because there are only 15 characters allowed. Type in the name you want and them click on the button <guibutton>Ok</guibutton>. This saves the new name and it shows up in the list of activities on the left side of the main window.</para></sect2></sect1><sect1 id='sec.The-menu-Settings' >
208
<title>The menu <guimenu>Settings</guimenu><!-- anchor id="sec.The-menu-Settings" --></title>
209
<para>You must not setup SportWatcher to make use of it. After successful installation, it should work out of the box. But as allways, there are some settings available. The following items show step by step the possible settings and their meaning.</para>
210
<screenshot>
211
<screeninfo>Menu Settings</screeninfo>
212
   <mediaobject>
213
      <imageobject>
214
         <imagedata fileref="menuSettings.png" format="PNG"></imagedata>
215
      </imageobject>
216
      <textobject>
217
         <phrase>Menu Settings</phrase>
218
      </textobject>
219
   </mediaobject>
220
</screenshot><sect2 id='sec.The-menu-ConfSPW' >
221
<title>The menu item <guimenuitem>Configure SportWatcher</guimenuitem><!-- anchor id="sec.The-menu-ConfSPW" --></title>
222
<para>This item opens a dialog box, where you can set sevaral things.</para>
223
<screenshot>
224
<screeninfo>Configure SportWatcher</screeninfo>
225
   <mediaobject>
226
      <imageobject>
227
         <imagedata fileref="ConfigureSportWatcher.png" format="PNG"></imagedata>
228
      </imageobject>
229
      <textobject>
230
         <phrase>Configure SportWatcher</phrase>
231
      </textobject>
232
   </mediaobject>
233
</screenshot><sect3 id='sec.Heart-rate-limits' >
234
<title>Heart rate limits<!-- anchor id="sec.Heart-rate-limits" --></title>
235
<para>This part contains the limits of your personal heart rate range. You can find out this ranges with an expensive lactat test, where you have to repeat this test several times to get the real limits. If you want to do that, ask the doctor of trust.</para>
236
<para>A simpler method is the following formular:</para><screen>
237
<![CDATA[<Max. HR> = 220 - <age>
238
]]></screen><para>From the maximum heart rate you can calculate the levels (or zones). The following table shows how:</para>
239
<informaltable><tgroup cols="4" colsep="1" rowsep="1">
240
<colspec colname="col0" align="left"/>
241
<colspec colname="col1" align="left"/>
242
<colspec colname="col2" align="left"/>
243
<colspec colname="col3" align="left"/>
244
<tbody>
245
<row>
246
<entry align="left" valign="top">Level</entry>
247
<entry align="left" valign="top">Intensity</entry>
248
<entry align="left" valign="top">Running</entry>
249
<entry align="left" valign="top">Bike</entry>
250
</row>
251
<row>
252
<entry align="left" valign="top">0 (&lt;1)</entry>
253
<entry align="left" valign="top">very low</entry>
254
<entry align="left" valign="top">&lt; 65% (Regular run)</entry>
255
<entry align="left" valign="top">&lt; 52% (CO --&gt; Compensation)</entry>
256
</row>
257
<row>
258
<entry align="left" valign="top">1</entry>
259
<entry align="left" valign="top">low</entry>
260
<entry align="left" valign="top">65% - 80% (Ext run --&gt; extensive run)</entry>
261
<entry align="left" valign="top">52% - 65% (SP1 --&gt; Basic staying power 1)</entry>
262
</row>
263
<row>
264
<entry align="left" valign="top">2</entry>
265
<entry align="left" valign="top">middle</entry>
266
<entry align="left" valign="top">80% - 85% (Int run --&gt; intensive run)</entry>
267
<entry align="left" valign="top">65% - 77% (SP2 --&gt; Basic staying power 2)</entry>
268
</row>
269
<row>
270
<entry align="left" valign="top">3</entry>
271
<entry align="left" valign="top">high</entry>
272
<entry align="left" valign="top">85% - 90% (SPR --&gt; speed run)</entry>
273
<entry align="left" valign="top">77% - 90% (PO--&gt; Power)</entry>
274
</row>
275
<row>
276
<entry align="left" valign="top">4 (&gt;3)</entry>
277
<entry align="left" valign="top">very high</entry>
278
<entry align="left" valign="top">&gt; 90% (R --&gt; Race)</entry>
279
<entry align="left" valign="top">&gt; 90% (HP --&gt; High power)</entry>
280
</row>
281
</tbody>
282
</tgroup></informaltable></sect3><sect3 id='sec.Other-limits' >
283
<title>Other limits<!-- anchor id="sec.Other-limits" --></title>
284
<para>The <guilabel>VO2max</guilabel> gives the maximum oxygen saturation in percent. This indicator is also found during a lactat test. Unfortunately there is no simple formula to calculate this, as far as I know. The second value <guilabel>weight</guilabel> is the the weight of your body in <emphasis>kilogramm</emphasis>.</para></sect3><sect3 id='sec.Device-and-file' >
285
<title>Device and file settings<!-- anchor id="sec.Device-and-file" --></title>
286
<para>The settings in this block defines the path and files, where SportWatcher stores it data.</para><sect4 id='sec.Even-surface-contour' >
287
<title>Even surface contour line<!-- anchor id="sec.Even-surface-contour" --></title>
288
<para>If the meassure of height is not very exact, and you get big fluctuations especially when there are only small differences in height, you can check this. It will slightly even the contour line.</para></sect4><sect4 id='sec.Use-serial-port' >
289
<title>Use serial port instead of USB port<!-- anchor id="sec.Use-serial-port" --></title>
290
<para>If your GPS receiver has only a serial port, you can set this here. You can set the name of the device as described under <xref linkend="sec.Serial-device" />.</para>
291
<note><para>This function is not tested and it's very likely that it will not work!</para></note></sect4><sect4 id='sec.Serial-device' >
292
<title>Serial device<!-- anchor id="sec.Serial-device" --></title>
293
<para>The name of the serial device your GPS receiver is connected to. This is only enabled, if you've checked <guilabel>Use serial port instead of USB port</guilabel> (look at <xref linkend="sec.Use-serial-port" />).</para></sect4><sect4 id='sec.Data-files' >
294
<title>Data files<!-- anchor id="sec.Data-files" --></title>
295
<para>&sportwatcher; save the data files, containing the activities in the directory, you specify here. Standard is <literal role="extension">.sportwatcher</literal> in your home directory. After the first start, and after you've downloaded your first activity, &sportwatcher; creates this directory, in case it does not already exist, and saves the activities there.</para></sect4><sect4 id='sec.HRM-files' >
296
<title>HRM files<!-- anchor id="sec.HRM-files" --></title>
297
<para>SportWatcher is able to save the heart rate data of an activity into Polars <acronym>HRM</acronym> format. If you do that (look at <xref linkend="sec.The-menu-HR" />), the file dialog box opens with the directory you set here. In case you use the software from Polar, than you can set this directory to the one your Polar software uses. SportWatcher sets the file name to the same notation Polar uses. This makes the files from SportWatcher fit seamlessly into the ones of Polar.</para>
298
<note><para>Because the format from Polar can only hold heard rate data with a fixed sample rate (5, 15, 30 or 60 seconds) the meassure points are averaged to fit the sample rate (look at <xref linkend="sec.Other-limits" />)</para></note></sect4><sect4 id='sec.Map-file' >
299
<title>Map file<!-- anchor id="sec.Map-file" --></title>
300
<para>Enter in this line the path and name of a file that is a raster image of a map or a control file. It depends on the type of map (look at <xref linkend="sec.Map-type" />) you've set.</para><sect5>
301
<title>Raster images</title>
302
<para>A raster image is a simple picture file. You can view such files with nearly every graphic program (<command>GIMP</command>, <command>Gwenview</command>, etc.). These files have extensions like <literal role="extension">.gif</literal>, <literal role="extension">.png</literal>, <literal role="extension">.tiff</literal> and the like. To make use of such images, you've to know the geo coordinates of the upper left and the lower right corner. Only the format <acronym>TIFF</acronym> allows to save the geo coordinates directly in the file header. But this is an optional information and you can't be sure that it's there. These raster images have the drawback, that they have a fixed resolution. They also show only a particular area and if your training session is partly or completely off this area, you get only a part or even no map. The advantage of a raster image is, that you need no external server or network connection to get them. Because they are local on your disc, they are allways available.</para></sect5><sect5>
303
<title>Other sources of maps</title>
304
<para>To not have the dawback of a raster image, you can use a <acronym>WMS</acronym> server as a source of maps. Unless this server isn't running on your local machine, you need an internet connection to access it. If you've set a <acronym>WMS</acronym> server, you must enter here the path and the name of the control file. SportWatcher creates this control file itself, so you don't have to bother with it. Entering the name here makes sure, it will be created in a directory, where SportWatcher have read and write access to.</para>
305
<para>Allthoug you can select <acronym>Shape</acronym> files as a source too, this is currently not supported. In case of a <acronym>Shape</acronym> file you've to enter here only the path where the <acronym>Shape</acronym> files are. In future SportWatcher will be able to read them and draw a map out of them. This will combine the advantages of vector maps with the advantages of local raster images, because a <acronym>Shape</acronym> file is a local file, containing a map, or a part of it, in vector coordinates.</para></sect5></sect4><sect4 id='sec.Map-type' >
306
<title>Map type<!-- anchor id="sec.Map-type" --></title>
307
<para>This sets the type of map. Basicly you can distinguish between raster images and vector based maps. Most vector based maps (<acronym>WMS</acronym> servers, <acronym>Shape</acronym> files) need the name and location where SportWatcher can create a control file (look at <xref linkend="sec.Map-file" />). For raster images you've to set the path and name of the file containing the raster image.</para>
308
<para>The setting here is necessary to allow SportWatcher to decide which settings dialog to show (look at <xref linkend="sec.The-menu-ConfMap" />).</para></sect4></sect3><sect3 id='sec.Units' >
309
<title>Units<!-- anchor id="sec.Units" --></title>
310
<para>Here you can set metric units or U.S. statute.</para>
311
<para>In case of metric units, SportWatcher shows meters, kilometers, kilometer per hour. If you still used to the old U.S. statute units, SportWatcher shows feets, miles and miles per hour.</para></sect3></sect2><sect2 id='sec.The-menu-ConfMap' >
312
<title>The menu item <guimenuitem>Configure map</guimenuitem><!-- anchor id="sec.The-menu-ConfMap" --></title>
313
<para>Dependend on the set map type (look at <xref linkend="sec.Map-type" />), SportWatcher displays an individual dialog to set the necessary settings for the selected map. Currently there are two dialog boxes. One to set everything for a <acronym>WMS</acronym> server and one to define the corners of a map in geo coordinates.</para><sect3 id='sec.WMS' >
314
<title>WMS<!-- anchor id="sec.WMS" --></title>
315
<screenshot>
316
<screeninfo>Configure WMS</screeninfo>
317
   <mediaobject>
318
      <imageobject>
319
         <imagedata fileref="ConfigureWMS.png" format="PNG"></imagedata>
320
      </imageobject>
321
      <textobject>
322
         <phrase>Configure WMS</phrase>
323
      </textobject>
324
   </mediaobject>
325
</screenshot>
326
<para>This dialog contains all necessary controls to set up the <acronym>WMS</acronym> client. You can access a WMS server over the <acronym>HTTP</acronym> protocol. To get a map, you can use a simple <acronym>URL</acronym>. You can use your internet browser to try that out. Type in the following URL:</para><screen>
327
<![CDATA[http://onearth.jpl.nasa.gov/wms.cgi?VERSION=1.1.1&REQUEST=GetMap&SRS=EPSG:4326&LAYERS=modis,global_mosaic&STYLES=&FORMAT=image/png&WIDTH=800&HEIGHT=600&BBOX=14.200104,46.612177,14.307995,46.633730
328
]]></screen><para>You should get a satelite picture of a part of <emphasis>Klagenfurt</emphasis>, a city in austria, and a piece of the <emphasis>W&ouml;rtersee</emphasis>, a lake. <emphasis>Klagenfurt</emphasis> is on the bank of this lake. This example shows how easy it is to access a WMS server. SportWatcher sets all necessary parameters, including the wanted boundaries for you, so you don't have to bother with that. Beside the WMS server in our example, there are many others available. Look at</para><screen>
329
<![CDATA[]]><ulink url="http://www.skylab-mobilesystems.com/ger/wms_serverlist.html">http://www.skylab-mobilesystems.com/ger/wms_serverlist.html</ulink>
330
<![CDATA[]]></screen><para>for a large list of free WMS servers.</para><sect4 id='sec.Server-URL' >
331
<title>Server URL<!-- anchor id="sec.Server-URL" --></title>
332
<para>Enter the <acronym>URL</acronym> of the WMS server. Related to our example above, this would be:</para><screen>
333
<![CDATA[http://onearth.jpl.nasa.gov/wms.cgi
334
]]></screen><para>You can omit the extra parameters, as shown in the above example, because SportWatcher will set them for you.</para></sect4><sect4 id='sec.Layer-name' >
335
<title>Layer name<!-- anchor id="sec.Layer-name" --></title>
336
<para>A WMS server can provide several <emphasis>layers</emphasis> to distinguish between parts of a map. Imagine a street map, for example. There one layer could contain the streets, another contains the rivers and another the rail ways. Putting this three layer together results in a complete street map. If you enter some layer names, you have to separate them with commas. Thing about the order of the maps! For example: Should the streets be drawn over the rivers or the other way?</para></sect4><sect4 id='sec.SRS' >
337
<title>SRS<!-- anchor id="sec.SRS" --></title>
338
<para>To get a map with correct dimensions, the WMS server have to know the wanted geodetic date. If you want to learn more about geoids and projections, look at:</para><screen>
339
<![CDATA[]]><ulink url="http://en.wikipedia.org/wiki/Geoid">http://en.wikipedia.org/wiki/Geoid</ulink>
340
<![CDATA[]]></screen><para>SportWatcher provides several geodetic dates. You must choose one, that is supported by the WMS server. Otherwise the map will not exactly fit under the tracks. In doubt take <emphasis>EPSG:4326</emphasis>, also known as <emphasis>WGS84</emphasis>.</para></sect4><sect4 id='sec.CRS' >
341
<title>CRS<!-- anchor id="sec.CRS" --></title>
342
<para>CRS is mostly the same as SRS (look at <xref linkend="sec.SRS" />). But this parameter is optional. In doubt, take <emphasis>WGS84</emphasis>.</para></sect4><sect4>
343
<title>Bands</title>
344
<para>A WMS server returns a raster image, representing the requested map. Every digital picture consist of informations for every of the three color channels red, green and blue. Such a channel is also called a band (because of the method the information of the picture is managed internally). In case of a color picture, there are at least three bands. However. Such a picture could contain a fourth band, called the alpha channel. The alpha channels defines the transparency of every pixel of the picture. It is important to set the correct number of bands, because you'll get an error if this is set wrong!</para>
345
<note><para>If you get an error stating wrong band count, start &sportwatcher; from the command line and try to get the map again. &sportwatcher; puts out some error messages where you can find out the needed band count.</para></note></sect4><sect4 id='sec.Version' >
346
<title>Version<!-- anchor id="sec.Version" --></title>
347
<para>There are more than one version of communication protocol for WMS servers. A WMS server should be backward compatible and should support version 1.1.0 at least. Today most of the WMS server support version 1.1.1. Only newer servers also support protocol version 1.3.0. In doubt set this to 1.1.1.</para></sect4><sect4 id='sec.Stile' >
348
<title>Stile<!-- anchor id="sec.Stile" --></title>
349
<para>Beside the above mentioned layers (look at <xref linkend="sec.Layer-name" />), styles are also supported. For most WMS servers styles are optional. A style is a variant or part of a layer. One layer could consist, for example, of the styles country road, interstate road and highway. Every kind of street can be a style. This allows you to filter particular types of roads. But it's only allowed to give the name of one style per layer. Be carefull to define exactly the same number of styles, as you've defined layers and pay attention of the order of the styles. They must apperar in the same order like the layers (one style per layer).</para></sect4><sect4 id='sec.Tile-size' >
350
<title>Tile size<!-- anchor id="sec.Tile-size" --></title>
351
<para>To save band width, SportWatcher groups the map into several quadrats with equal size. This tiles are stored on the disk in a temporary cache. If some parts can be reused later, SportWatcher will take them out of the cache rather than downloading them again.</para>
352
<para>This setting allows to set the size of such a tile. The optimal size depends on the WMS server. You may test this to find out what works fastest.</para></sect4><sect4 id='sec.Depth' >
353
<title>Depth<!-- anchor id="sec.Depth" --></title>
354
<para>Number of directory layers. 2 will result in files being written as &lt;cache_path&gt;/A/B/ABCDEF... (defaults to 2).</para></sect4><sect4 id='sec.Overview-count' >
355
<title>Overview count<!-- anchor id="sec.Overview-count" --></title>
356
<para>Count of reduced resolution layers each having 2 times lower resolution. In doubt set to 10.</para></sect4><sect4 id='sec.WMS-squarepixel' >
357
<title>WMS Server uses square pixels<!-- anchor id="sec.WMS-squarepixel" --></title>
358
<para>In case you find a WMS server that is not able to calculate the projection correct, you can try to set this option.</para></sect4><sect4 id='sec.Offline-mode' >
359
<title>Offline mode<!-- anchor id="sec.Offline-mode" --></title>
360
<para>If you set this option, SportWatcher will not try to get a map from a WMS server. It only looks into the local cache and if it finds a map there, it displays ist. Otherwise the track appears with a black background.</para></sect4><sect4 id='sec.Advice-read' >
361
<title>Advice read<!-- anchor id="sec.Advice-read" --></title>
362
<para>Download images into cache. This saves time and brings a map faster to screen.</para></sect4><sect4 id='sec.Verify-advice-read' >
363
<title>Verify advice read<!-- anchor id="sec.Verify-advice-read" --></title>
364
<para>Open each downloaded image and do some basic checks before writing into cache. Disabling can save some CPU cycles if server is trusted to always return correct images.</para></sect4><sect4 id='sec.Add-meters-longitude' >
365
<title>Add meters to longitude<!-- anchor id="sec.Add-meters-longitude" --></title>
366
<para>In case the map is moved a little in x direction, you can correct it here. Type in the number of meters, the map is moved.</para></sect4><sect4 id='sec.Add-meters-latitude' >
367
<title>Add meters to latitude<!-- anchor id="sec.Add-meters-latitude" --></title>
368
<para>In case the map is moved a little in y direction, you can correct it here. Type in the number of meters, the map is moved.</para></sect4></sect3><sect3 id='sec.Image-coordinates' >
369
<title>Image coordinates<!-- anchor id="sec.Image-coordinates" --></title>
370
<screenshot>
371
<screeninfo>SportWatcher coordinates</screeninfo>
372
   <mediaobject>
373
      <imageobject>
374
         <imagedata fileref="ConfigureCoordinates.png" format="PNG"></imagedata>
375
      </imageobject>
376
      <textobject>
377
         <phrase>SportWatcher coordinates</phrase>
378
      </textobject>
379
   </mediaobject>
380
</screenshot>
381
<para>In case you've choosen a kind of raster image as your map, this dialog appears. Here you can set the corners in geographical format. One drawback of raster formats is, that they contain no geographical information. To allow SportWatcher to use such raster images, it must know the dimensions of the map. An even bigger drawback is the fixed resolution of the map. Depending of the magnifier, the map may look blurred or it looks coarse-grained. One benefit of such maps is, that they are available offline and they are faster than every vector format.</para><sect4 id='sec.Upper-left-corner' >
382
<title>Upper left corner<!-- anchor id="sec.Upper-left-corner" --></title>
383
<para>This defines the upper left corner. Define this values in the format of the set <link linkend="sec.Projection">projection</link>.</para></sect4><sect4 id='sec.Lower-right-corner' >
384
<title>Lower right corner<!-- anchor id="sec.Lower-right-corner" --></title>
385
<para>his defines the lower right corner. Define this values in the format of the set <link linkend="sec.Projection">projection</link>.</para></sect4><sect4 id='sec.Projection' >
386
<title>Projection<!-- anchor id="sec.Projection" --></title>
387
<para>This setting defines the <ulink url="http://en.wikipedia.org/wiki/Graphical_projection">graphical projection</ulink> of the map. Graphical projection is a protocol by which an image of an imaginary three-dimensional object is projected onto a planar surface without the aid of mathematical calculation. The projection is achieved by the use of imaginary "projectors". The projected, mental image becomes the technician's vision of the desired, finished picture. By following the protocol the technician may produce the envisioned picture on a planar surface such as drawing paper. The protocols provide a uniform imaging procedure among people trained in technical graphics (mechanical drawing, computer aided design, etc.).</para>
388
<para>SportWatcher allows to set some of the possible projections. Choose the one, used for your map.</para></sect4></sect3></sect2></sect1><sect1 id='sec.The-menu-Help' >
389
<title>The menu <guimenu>Help</guimenu><!-- anchor id="sec.The-menu-Help" --></title>
390
&help.menu.documentation;</sect1></chapter><chapter id='cha.Display-a-map' >
391
<title>Display a map underneath a track<!-- anchor id="cha.Display-a-map" --></title>
392
<para>SportWatcher is able to display a map underneath a track. A track consists of several messure points who are connected with a line. It represents the path you were running or biking. SportWatcher supports differnt sources for maps. Setting the map source (look at <xref linkend="sec.The-menu-ConfSPW" />) is the precondition to get a map. Another precondition is the availability of GPS coordinates. If you train in the open, the Garmin Forerunner will record the GPS coordinates.</para>
393
<para>SportWatcher paints in a first step the map and then draws the track over it. If you've set everything correct, the track should fit perfect on the map.</para><sect1 id='sec.WMS-Server' >
394
<title>WMS Server<!-- anchor id="sec.WMS-Server" --></title>
395
<para>The <ulink url="http://en.wikipedia.org/wiki/Web_Map_Service">Web Map Service</ulink> (WMS) is an interface to request parts of a map. Such an interface could also be called a WEB service. The specification was designed by the <ulink url="http://en.wikipedia.org/wiki/Open_Geospatial_Consortium">Open Geospatial Consortium</ulink> (OGC). It describes the parameters needed for a request. It also defines, how a WMS server should generate a map out of the request.</para>
396
<para>SportWatcher supports the access to any WMS server out of the box. Just choose WMS server as the source for maps and set everything necessary as described at <xref linkend="sec.WMS" />.</para></sect1><sect1 id='sec.Map-out-of' >
397
<title>Map out of a raster image<!-- anchor id="sec.Map-out-of" --></title>
398
<para>In case you have a picture representing a map, SportWatcher needs geographical reference points. Formats like PNG (Portable Network Graphics), BMP (Bitmap), GIF (Graphics Image Format), and so on, are called raster images. First, you have to find a map of the wanted area in the wanted resolution. Once this is done, you must find out the geodetic date of th map. This may be difficult, but is absolutely needed! Once this is also done, you should know the upper left and the lower right corner in geographical coordinates. With all this informations, you can start to enter the needed parameters. Part <xref linkend="sec.Map-file" /> let you define the path to the map and the file name of the map. With <xref linkend="sec.Map-type" /> you can define the type of the map. Now most of the work is done. Now only the definations of the corners is left. Look at <xref linkend="sec.Image-coordinates" /> for an explanation of how to do that. Once this is done, SportWatcher should display a map underneath the track. The map must not have exactly the size of the track. In fact it should be bigger (maybe a lot bigger). I recomend to find a map about your whole training area. SportWatcher will cut the needed piece and stretch and push it to fit into the given drawing space.</para></sect1><sect1 id='sec.Shape-files' >
399
<title>Shape files<!-- anchor id="sec.Shape-files" --></title>
400
<para>The ESRI Shapefile or simply a shapefile is a popular geospatial vector data format for geographic information systems software. It is developed and regulated by <ulink url="http://en.wikipedia.org/wiki/ESRI">ESRI</ulink> as a (mostly) open specification for data interoperability among ESRI and other software products. A "shapefile" commonly refers to a collection of files with extensions of <literal role="extension">.shp</literal>, <literal role="extension">.shx</literal>, <literal role="extension">.dbf</literal>, and other extensions on a common prefix name (e.g., "lakes.*"). The actual shapefile relates specifically to files with the <literal role="extension">.shp</literal> extension, however this file alone is incomplete for distribution, as the other supporting files are required.</para>
401
<note><para>This format is currently not implemented!</para></note></sect1><sect1 id='sec.PostGIS-database' >
402
<title>PostGIS database<!-- anchor id="sec.PostGIS-database" --></title>
403
<para>PostGIS (<emphasis>/post'-jis/</emphasis>) is an open source software program that adds support for geographic objects to the PostgreSQL object-relational database. PostGIS follows the Simple Features for SQL specification from the Open Geospatial Consortium. As such, PostGIS includes:</para><itemizedlist>
404
<listitem><para>Geometry types for points, linestrings, polygons, multipoints, multilinestrings, multipolygons and geometry collections.</para></listitem><listitem><para>Spatial predicates for determining the interactions of geometries using the 3x3 Egenhofer matrix (provided by GEOS).</para></listitem><listitem><para>Spatial operators for determining geospatial measurements like area, distance, length and perimeter.</para></listitem><listitem><para>Spatial operators for determining geospatial set operations, like union, difference, symmetric difference and buffers (provided by GEOS).</para></listitem><listitem><para>R−tree spatial indexes for high speed spatial querying.</para></listitem><listitem><para>Index selectivity support, to provide high performance query plans for mixed spatial/non-spatial queries.</para></listitem></itemizedlist><para>The PostGIS implementation is based on "light-weight" geometries and indexes optimized to reduce disk and memory footprint. Using light-weight geometries helps servers increase the amount of data migrated up from physical disk storage into RAM, improving query performance substantially.</para>
405
<note><para>This function is currently not implemented!</para></note></sect1></chapter><chapter id='cha.Credits' >
406
<title>Credits<!-- anchor id="cha.Credits" --></title>
407
<sect1 id='sec.Danksagung-und-Lizenz' >
408
<title>Credits and License<!-- anchor id="sec.Danksagung-und-Lizenz" --></title>
409
<para>&sportwatcher;</para>
410
<para>Program <trademark class="copyright">Copyright </trademark> 2007 - 2009 by Andreas Theofilu <email>andreas@theosys.at</email></para>
411
<para>Based on <command>garmin-tools</command> from Dave Bailey <email>dave@daveb.net</email></para>
412
<para>Based on <command>GANT</command> from Paul <email>paul@ant.sbrk.co.uk</email></para>
88 andreas 413
<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
414
&underFDL;               <!-- FDL: do not remove -->
273 andreas 415
&underGPL;               <!-- GPL License --></sect1></chapter></book>