0

We can download OpenTopoMap bulk export from https://garmin.opentopomap.org/. Vector or bitmap files? I'm not sure and I need PNG files.

This is useful for GPS devices, but this can be also useful when you want to use OpenTopoMap offline, or with a slow internet connexion (because instead of download tiles from opentopomap.org, tiles are retrieved from bulk export).

How can I get a PNG tile from the previous files?

Is there a very simple (python) program to read theses data?
For example $ the_magic_program 16_32752_21788 returns an image data.

3
  • Which GIS software are you using?
    – BERA
    Sep 17, 2022 at 17:25
  • I use leafletjs with my browser.
    – luigifab
    Sep 17, 2022 at 18:57
  • Simplest way to download tiles for opentopomap.org map to local machine and then use tiles from there would probably be SAS.Planet app, here is one possible download link learngeom.com/2021/08/…. If the latest version of the app does not work, try an older one. I'm using one from 2019.
    – TomazicM
    Sep 23, 2022 at 20:48

1 Answer 1

2

You could use your own local tile server. Here is a complete walk-through how to set up a OpenTopoMap tile server:


You could also set up a local proxy server (with content caching). The initial access for a map area will still be slow but recurring requests will be faster since the proxy is local:


This answer to another question suggest:

You could mass-download their tiles with any suitable tool or script, but please ask them before for permission and rate-limits, see https://opentopomap.org/credits

https://gis.stackexchange.com/a/278212/21355

You could write a simple Python script downloading all tiles for your desired map area. However, as mentioned in bugmenot123's answer, please ask them before for permission and rate-limits.


Note: I missed the part about the slow internet connection in your question at first. Sorry. Just ignore the next part of this answer. I leave it in case it's helpful for someone else.

If you want to use it in Leaflet, you may be able to use one of their tile server:

  • https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png

Additional information and terms of use on their About page.

Here is an example using Leaflet with https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png:

<!DOCTYPE html>
<html lang="en">
<head>
    
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>OpenTopoMap Leaflet Example</title>
    
  <!-- test code / integrity attribute removed for readability -->
  <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/leaflet.css" />
  <script src="https://unpkg.com/[email protected]/dist/leaflet.js"></script>

</head>
<body>
    
  <div id="map" style="height: calc(100vh - 1rem);"></div>

  <script>

      const map = L.map('map')
          .setView([44.6475, -63.580278], 11);

      L.tileLayer('https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png', {
          attribution: `Kartendaten: © OpenStreetMap-Mitwirkende, SRTM 
                                  | Kartendarstellung: © OpenTopoMap (CC-BY-SA)`
      }).addTo(map);

  </script>

</body>
</html>

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.