#!/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 1542.0 2166.11974789916 28 56.25 -gcp 16129.5 2231.49243697479 28.5 56.25 -gcp 16188.75 15685.619327731092 28.5 56 -gcp 1476.75 15646.665546218486 28 56 Latvijas_dalas_Lietuvas_dalas_un_I_vMfmQGD.kartes_Poliscina_6828_A1_L25_101_02.JPG Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Poliscina_6828_A1_L25_101_02.vrt # Add cutline to VRT gdalwarp -r $GDAL_SAMPLING_WARP -tps -dstalpha -cutline_srs EPSG:4326 \ -cutline "POLYGON(($(echo -e \"1443.0 14658.168067226892\n1650.0 14526.36974789916\n1911.0 13934.87394957983\n1752.0 13790.994957983194\n1680.0 13409.988235294117\n1524.0 13070.979831932771\n1542.0 2166.11974789916\n16129.5 2231.49243697479\n16188.75 15685.619327731092\n1476.75 15646.665546218486\" | \ gdaltransform -tps -output_xy Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Poliscina_6828_A1_L25_101_02.vrt | \ awk 'NR==1{first=$0} {printf "%s %s,", $1,$2} END{print " " first}'))))" \ Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Poliscina_6828_A1_L25_101_02.vrt Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Poliscina_6828_A1_L25_101_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_Poliscina_6828_A1_L25_101_02.cut.vrt Latvijas_dalas_Lietuvas_dalas_un_Igaunijas_top.kartes_Poliscina_6828_A1_L25_101_02.xyz