Pubblicare mappe a Tiles XYZ su GitHub

Oggi ho avuto l’esigenza di condividere, con il mondo, una mappa georeferenziata (una geotiff) in modo da poterla usare, per esempio, in QGIS tramite i Tiles XYZ e ho chiesto a T’ansignari.

La mappa non georeferenziata è questa:

che rappresenta la Index map della collezione di mappe storiche (di dominio pubblico) presenti qui: https://legacy.lib.utexas.edu/maps/ams/italy_50k/

Georeferenziazione

Questo lo script usato:

# scarica la mappa
curl -L "http://legacy.lib.utexas.edu/maps/ams/italy_50k/index_map.jpg" >./output.jpg
# aggiunge i punti di controllo
gdal_translate -of GTiff -gcp 3089.03 2204.96 14 37 -gcp 3270.39 745.796 19 40 -gcp 1391.07 140.891 15 46 -gcp 371.406 1851.43 6 44 -gcp 245.288 403.987 10 48 -gcp 1611.71 1963.66 10 41 -gcp 2015.5 772.647 15 43 ./output.jpg ./output_mm.tif
# riproietta la mappa
gdalwarp -dstnodata "0 0 0" -overwrite -r near -order 2 -co COMPRESS=PACKBITS  -t_srs "+proj=longlat +ellps=bessel +towgs84=656.5,138.2,506.5,5.187,-2.540,5.256,-12.61 +units=m +no_defs" ./output_mm.tif ./index50kP2.tif

Generazione dei tasselli

Si possono generare con gdal2tiles. Con la geotiff:

gdal2tiles.py --zoom=6-11 ./index50kP2.tif

In output verrà creata la cartella index50kP2 che contiene i tasselli e livelli di zoom compresi tra 6 e 11.(Per definire i livelli utilizzare questa mappa https://www.openstreetmap.org/#map=8/37.508/14.310 il primo numero rappresenta il livello)

URL dei tasselli

Una volta pubblicata la cartella che contiene i tasselli su un repository github, attivare le github pages: dal settings del repository

L’URL del repository è evidenziato nella striscia verde. In questo caso la cartella dei tasselli è https://pigreco.github.io/gdal2tiles_su_github/index50kP2/

Per utilizzare questa sorgente in QGIS, dal Browser Panel:

nuova Connessione XYZ Tiles con questo URL:

IndexMap50k:
https://pigreco.github.io/gdal2tiles_su_github/index50kP2/{z}/{x}/{-y}.png

IndexMap25k:
https://pigreco.github.io/gdal2tiles_su_github/index25kP2/{z}/{x}/{-y}.png

Ecco il risultato index50k:

index25k


NOTE FINALI: per visualizzare il layer XYZ, caricare prima una qualsiasi mappa di sfondo (io ho usato OpenStreetMap), zoomare in Italia e poi caricare il layer.


Riferimenti

Ringraziamenti


Se il blog post vi è piaciuto cliccate su ‘Mi piace’, grazie!!!
if you liked the blog post click on ‘Like’, thank you !!!

SE IL POST VI È STATO UTILE CONTRIBUITE A MANTENERLO AGGIORNATO PAYPAL

Pubblicità

2 pensieri su “Pubblicare mappe a Tiles XYZ su GitHub

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.