#!/bin/bash GDAL_TILE_PROCESSES=16 GDAL_TILE_ZOOMS=8-14 GDAL_SAMPLING_WARP=cubic GDAL_SAMPLING_TILE=antialias # Create virtual dataset with coordinates gdal_translate -of VRT -a_srs EPSG:4326 -outsize 300% 300% -gcp 1278.0 2670.3495798319327 20.966666666666665 56.25 -gcp 16852.427627230667 2721.783193277311 21.5 56.25 -gcp 16878.765366820884 16210.035294117646 21.5 56 -gcp 1227.0 16153.86974789916 20.966666666666665 56 Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Rucava_6828_A1_L25_6_02.JPG Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Rucava_6828_A1_L25_6_02.vrt # Add cutline to VRT gdalwarp -r $GDAL_SAMPLING_WARP -tps -dstalpha -cutline_srs EPSG:4326 \ -cutline "POLYGON(($(echo -e \"1278.0 2670.3495798319327\n16852.427627230667 2721.783193277311\n16878.765366820884 16210.035294117646\n1227.0 16153.86974789916\" | \ gdaltransform -tps -output_xy Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Rucava_6828_A1_L25_6_02.vrt | \ awk 'NR==1{first=$0} {printf "%s %s,", $1,$2} END{print " " first}'))))" \ Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Rucava_6828_A1_L25_6_02.vrt Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Rucava_6828_A1_L25_6_02.cut.vrt # Generate tiles gdal2tiles.py -r $GDAL_SAMPLING_TILE --xyz -z $GDAL_TILE_ZOOMS -x --processes=$GDAL_TILE_PROCESSES Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Rucava_6828_A1_L25_6_02.cut.vrt Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Rucava_6828_A1_L25_6_02.xyz