Instructions

PyGPSClient offers the facility for users to import their own custom offline imagery for use as background maps in the Map View and GPX Track View panels. To create custom geo-referenced imagery, we use and recommend the free, open-source QGIS software, which is available for most platforms including Windows, MacOS and Linux.

ⓘ This illustration uses OpenStreetMap (OSM) as a basemap, but any other geo-referenceable map layer could be used instead, including your own imagery. Note that OpenStreetMap is open data, licensed under the Open Data Commons Open Database License (ODbL) by the OpenStreetMap Foundation (OSMF). Please acknowledge this license if you distribute any map images based on an OSM source.

  1. Download and install QGIS. The latest LTR version at time of writing is 3.34. It's a relatively large package (≈ 3 GB) and the install may take a couple of minutes or so.

    ⚠ If you're installing on MacOS Sequoia or newer, note the "Tips for first launch".

    ⓘ Installing QGIS using the default settings also installs the GDAL (Geospatial Data Abstraction Library) package, which is a dependency for the rasterio library (though it can also be installed separately).

  2. Open QGIS and select from the top menu bar Project..Properties..CRS (Coordinate Reference System). Search for, select and apply CRS "EPSG:4326 WGS84". This will display map extent as latitude and longitude rather than the default meters (other suitable CRSs are available but this is the de facto standard used by PyGPSClient).

    QGIS CRS Selection

  3. Navigate to the left hand browser and select XYZ Tiles..OpenStreetMap (OpenStreetMap is available as standard in recent versions of QGIS - previously it was available as an optional plugin).

  4. Shift and zoom into the area of interest. Toggle the 'Coordinate/Extents' display in the bottommost status bar to show the current map extent.

    QGIS Screenshot

  5. When you reach the desired extent, select from the top menu bar Project..Import/Export..Export Map to Image....

  6. Accept all the defaults in the "Save Map as Image" pop-up box. Ensure the "Append Georeference Information" option is ticked. If necessary, make a note of the map extent.

    QGIS Save Map Popup

  7. Save the map as a geoTIFF (*.tif) file.

  8. You can now import the saved image into PyGPSClient using Options..Import Custom Map. If the Python rasterio library is installed, the map extent will be extracted automatically - otherwise, it must be entered manually.

    PyGPSClient Import Map Panel

  9. If a Map Type of "custom" is selected, PyGPSClient will automatically display the imported map whenever the current location lies entirely within the map extent:

    PyGPSClient Map View with Track

>