#!/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 1681.5 2569.670588235294 26 56.5 -gcp 16180.5 2590.8848739495797 26.5 56.5 -gcp 16256.25 16037.417226890757 26.5 56.25 -gcp 1647.75 16025.432352941178 26 56.25 Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Livani_6828_A1_L25_72_02.JPG Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Livani_6828_A1_L25_72_02.vrt # Add cutline to VRT gdalwarp -r $GDAL_SAMPLING_WARP -tps -dstalpha -cutline_srs EPSG:4326 \ -cutline "POLYGON(($(echo -e \"1681.5 2569.670588235294\n16180.5 2590.8848739495797\n16256.25 16037.417226890757\n1647.75 16025.432352941178\" | \ gdaltransform -tps -output_xy Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Livani_6828_A1_L25_72_02.vrt | \ awk 'NR==1{first=$0} {printf "%s %s,", $1,$2} END{print " " first}'))))" \ Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Livani_6828_A1_L25_72_02.vrt Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Livani_6828_A1_L25_72_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_Livani_6828_A1_L25_72_02.cut.vrt Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Livani_6828_A1_L25_72_02.xyz