Jag försöker skapa brickor med gdal2tiles.py och de resulterande brickorna lagras som 18/132639/164219
. Om jag gör samma sak med MapTiler (GUI-varianten av gdal2tiles) är resultatet på brickan 18/132639/97923
. Jag vill ha resultaten från MapTiler (97923 ), men bara med gdal2tiles, eftersom jag vill göra detta i en batchprocess och inte med ett GUI.
Jag har redan provat många saker, snedvridning, översättning, vad som helst, och det blir väldigt mycket irriterande, särskilt eftersom det står att MapTiler bara är ett grafiskt gränssnitt för gdal2tiles och gör i princip samma.
gdal2tiles.py -z 17-19 -s EPSG:900913 -p raster overlay-level1.png gdal2tiles.py -z 17-20 -s EPSG:3785 overlay-level1.png gdal2tiles.py -p geodetic -s EPSG:4326 -z 18-21 -w none overlay-level1.png
De flesta av dem resulterar i en ERROR 5 Access window out of range in RasterIO()
eller ERROR 5: Illegal values for buffer size
.
Den här fungerar, men resulterar i fel Y-värden:
gdal2tiles.py -s EPSG:4326 -z 16-19 -w none overlay-level1.png
Några idéer vad är fel där?
Kommentarer
- Jag försökte producera brickor för att publicera min karta online. Vill du få samma struktur som producera senaste version 0.5.2 av maptiler men vill göra det med gdal script. Jag har testat – senaste maptiler för att jämföra hur ska det se ut – gammal version av maptiler – gdal2tiles.py 25611 07-02-2013 10: 24: 56Z biskop $ (från qgis valmiera-paket) – gdal2tiles.py 19288 2010-04- 02 18: 36: 17Z rouault $ + din (Andre Joost) ändring http://gis.stackexchange.com/questions/63024/gdal2tiles-maptiles-from-bsb-kap-are-switched
Svar
Lösningen är mycket enklare än förväntat. Vrid bara TMS-inställningarna till true
i broschyren.
L.tileLayer("http://{s}.somedomain.com/{foo}/{z}/{x}/{y}.png", {tms: true});
Kommentarer
- Observera att gdal2 gdal2tiles.py (
GDAL 2.1.3, released 2017/20/01
) använder " rätt " eller Google / OSM-konvention förx
vsy
, så att brickor som genereras kanske inte behöver sådana korrigeringar. - @AhmedFasih, det fungerar fortfarande inte. testad från GDAL 2.3.1
Svar
gdal2tiles använder TMS-specifikationen för namngivning av brickor (nedifrån och upp) , medan Maptiler låter dig använda Google / Openstreetmap-namngivningssystemet (uppifrån och ned).
Se mitt svar på det här ämnet om hur man ändrar gdal2tiles.py för Google / OSM-bricknamn:
GDAL2Tiles: MapTiles från BSB / KAP är växlade
Kommentarer
- Jag gjorde ändringarna, men Y-numren förblir desamma? Jag ' arbetar med CRC EPSG: 4326, vilket antagligen också är ett problem, eftersom broschyren kräver EPSG: 3857.
- Du borde ha ersatt ty och y med ty2 och y2 i de citerade befintliga raderna. Min källa och brickor var alla i EPSG: 3857.
- Okej. Eftersom jag inte vill ' inte ändra gdal2tiles.py på alla inblandade maskiner är tms: true-varianten den bättre lösningen. Tack!
Svar
Ett sent bidrag, men kanske hjälper det …
Som ett alternativ till att ändra koden i gdal2tiles.py eller lägga till den speciella flaggan i broschyren kan filnamnen på brickorna ändras. Detta var en enkel lösning för att skapa brickor att använda med ArcGIS online. Här är ett grovt bash-skript som växlar z / x / y-konventionen fram och tillbaka mellan OSM / Google-Maps (gdal2tiles standard) och TMS (används i ArcGIS Online)
# Each time it runs it will toggle the convention between OSM/Google-Maps and TMS tiledir=$1 for x in $(find $tiledir -name "*.png") do #echo $x # isolate where tile folders begin tiles="${x#$tiledir/}" #echo $tiles # separate each z,x,y value zdir=$(echo $tiles | cut -d"/" -f1-1) xdir=$(echo $tiles | cut -d"/" -f2-2) ypng=$(echo $tiles | cut -d"/" -f3-3) # remove extension from y.png files y="${ypng%.*}" # calculate new y using formula referenced here: # http://osgeo-org.1560.x6.nabble.com/gdal2tiles-tiles-in-wrong-hemisphere-and-or-Openlayers-problem-td3742809.html (( newy=(2**zdir - 1)-y )) #echo $zdir,$xdir,$y $newy is newy # rename the files mv -v $x $tiledir/$zdir/$xdir/$newy.png done
Svar
Du kan ladda ner den uppdaterade gdal2tiles.py för Google / OSM brickor med länk
http://gisfile.com/user/admin/gdal2tiles.py
Kommentarer
- Välkommen till GIS @SE, tack för ditt svar, men du bör förklara i ditt svar vad som är skillnaden i din rekommenderade nedladdningslänk jämfört med den ursprungliga frågan, så att framtida användare också kommer att förstå. bästa hälsningar