PolylinesUsing GPSMan in graphical modeRoutesTracks


A track has a datum for all its points, a colour and a width (in pixels) used in displaying it on the map. The colour will be sent to the GPS receivers supporting it, in which process a colour matching algorithm will be applied if the original colour is not in the set of colours accepted by the receiver. Any colour matching algorithm may give unexpected results and the one used in GPSMan is no exception.

A map background image name can be given for each track, so that when the track is displayed on the map window the named image is automatically loaded if the map is empty. See below for the details.

Each track point has the following information: time stamp, position (always shown in the DMS format), altitude and depth in either metres or feet, depending on the existing option for this.

A track can be subdivided into segments by some receivers at points in which the GPS fix was lost. The first track point always starts a segment, and any other track point can be marked as a segment starter from the track edit window by using the mouse right-button on the last column of the points list. When displaying a track with segments on the map, the segments will not be connected.

The edit window for tracks allows some operations on tracks that may be useful to clean uninteresting start or end parts of a track, or to compose a single track from several others. They are:

The computation results are the following

An elevation graph for a track can be plotted, as a side-view or a perspective, from the track computation window if there are at least 3 track points with a valid altitude field. They are similar to the elevation graphs for routes, although the side-view graph can be plotted against time instead of total distance if there is valid time information. Another difference is that gaps between segments are shown as interrupted lines.

Elevation graphs by gnuplot can also be obtained from the same window if gnuplot is available and there are at least 3 track points with a valid altitude field. In Linux/Unix systems the perspective (3D) graph also needs that the user option giving the operating system command to open a terminal (command-line) window is defined (not empty).

Parameters are first selected and if waypoints are to be displayed in the graph, a group with waypoints must be selected; cancelling this selection means no waypoints are required. The graph images are written to a file in the current directory whose name is one of the parameters; if the file exists it will be silently overwritten.

For the side-view (2D) graph the parameters define how some values (total values, rest periods, time, speed) should appear, the output file, the maximum/minimum distance from the track that a waypoint should be to be displayed in the graph, and the graph dimensions in pixels. For efficiency, distances of waypoints to the track are computed in a inaccurate way. If the Img Tcl/Tk library is available the graph will be displayed in a GPSMan window. Otherwise if the user option giving the operating system command to display an image file is defined (not empty) this command is executed to display the graph.

The perspective (3D) graph has parameters for the direction in which to take the track, the output file and the graph dimensions in pixels. Selecting a group with waypoints makes all of them to be displayed irrespective of their distance to the track. After these steps gnuplot is run to display the graph allowing for it to be changed: the mouse left-button rotates it and the middle-button changes the altitude scale. Exiting normally from gnuplot will make it write the image to the output file and finish. In Linux/Unix systems a terminal window is used to run gnuplot; a Return (or Enter) key on it makes gnuplot exit normally while an interrupt (usually Control-c) or destroying the window will abort the operation.

A speed graph for a track can be plotted from the track computation window if there are at least 3 track points with valid time information. It is similar to the side-view elevation graph and can also be plotted against time instead of total distance, but does not answer to Control key plus mouse left-button.

A climb rate graph for a track can be plotted from the track computation window if there are at least 3 track points with valid time information. The graph is plotted against time, the vertical units being (user selected) altitude unit per second. If there is enough points a noise-reducing filter, kindly provided by Paul Scorer, is applied to the data.

Creating a waypoint from a track point can be done by double clicking with the mouse left-button on a track point listed in a track window. This will open, for edition, a new waypoint having the same coordinates unless there is already a waypoint being edited. If the track is currently on the map the number of each track point together with the track name will appear in the help balloon when the cursor is over the point.

A waypoint with average coordinates can be created from a track window. Its latitude, longitude and altitude will be computed as the averages of the latitudes, longitudes and altitudes of the track points. This will be useful for obtaining more precise coordinates for a waypoint by recording a track with the receiver standing still.

A track can be splitted by taking either each selected track point or segment starter as the first point of a new track extending up to and excluding the next such point. Tracks with at least two points obtained in this way are created, as well as a group with all of them. These new tracks inherit the datum, segments (unless when splitting by segment starters), width, colour and map background of the original track but hidden information is discarded. They and the new group get names generated automatically. The original track is not affected by this operation.

A track can be converted into other sorts of line items by a simplifying algorithm that keeps a certain number of the track points as points of the new line, which can be a route, another track, or a polyline. When converting to a polyline information on segments is only used if all the points are kept.

The algorithm that was developed for this may be seen as a variant of the Douglas-Peucker algorithm for finding critical points in polylines (see, e.g., [Heckbert and Garland, 1997] or [Li, 1995]). It starts from a straight line between the first and the last track points; if the number of points to keep is greater than 2, any point that stands furthest from the line will be retained, and the line is replaced by two new lines, those from the first to the new point and from it to the last one. This procedure is repeated always replacing one of the lines for which the distance to an intermediate point is maximum. The review of [Heckbert and Garland, 1997] describes an algorithm by Ballard and Brown (published in 1982) that seems to be very close to this one.

The sequence available here shows examples of routes with 3, 6, 11, 15 and 31 waypoints obtained from a track having 739 track points.

Although GPSMan lets the user fix the number of points to keep between 2 and the number of track points, there is a maximum number of points per route depending on the GPS receiver. It should also be noted that the time needed to find the simplified line will increase significantly with the number of points (although keeping all the track points will take only the time to create the new item).

So that a choice may be made between different numbers of points, GPSMan may be asked to display the simplified line and also the original track on the map on the fly. When the user clicks the Ok button, the map will be restored, the simplified line is used in forming a new item (in the case of a route, with new waypoints having names of the form ZTn, with n a 4-digit integer), and an edit window will be opened for editing the new item. If the edit window for the item type was already in use, then the item is created under an automatically generated name. For a route GPSMan will create a new group with all the new waypoints for easier access.

An animation of the movement corresponding to a track can be viewed in the map window (Animation button in the track edit/show window). A control window will appear that allows for (re-)starting, pausing, or aborting the animation, for skipping to the next track point, for setting the speed (the scale changes are exponential), and for choosing whether the last point shown will be centred on the map window. The default speed is that in the track: the delay between the presentation of two consecutive points is the difference between their time stamps. If a time stamp is not defined the default delay is 30 seconds. The state of the animation, the total (real) time since the beginning (if defined), the time stamp (if defined) and total distance along the track are displayed.

A track can be created from a route or a polyline from the route window or the polyline window.

GPSMan User Manual
Copyright 1998-2013 Miguel Filgueiras,

Creative Commons License
GPSMan User Manual and the GPSMan logo images by Miguel Filgueiras are licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License.

Get gpsman at SourceForge.net. Fast,
secure and Free Open Source software downloads

PolylinesUsing GPSMan in graphical modeRoutesTracks