Ik probeer tegels te genereren met gdal2tiles.py en de resulterende tegels worden opgeslagen als 18/132639/164219. Als ik hetzelfde doe met MapTiler (de GUI-variant van gdal2tiles), is het tegelresultaat 18/132639/97923. Ik wil de resultaten van MapTiler (97923 ), maar alleen met gdal2tiles, omdat ik dit in een batchproces wil doen en niet met een GUI.

Ik heb al veel dingen geprobeerd, warping, vertalen, wat dan ook, en het wordt erg vervelend, vooral omdat het zegt dat MapTiler slechts een grafische interface is voor gdal2tiles en in wezen hetzelfde doet.

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 meeste hiervan resulteren in een ERROR 5 Access window out of range in RasterIO() of ERROR 5: Illegal values for buffer size.

Deze werkt, maar resulteert in de verkeerde Y-waarden:

gdal2tiles.py -s EPSG:4326 -z 16-19 -w none overlay-level1.png 

Enig idee wat is daar mis?

Reacties

  • Ik heb geprobeerd tegels te maken om te publiceren mijn kaart online. Wil dezelfde structuur krijgen als de laatste versie 0.5.2 van maptiler produceren, maar wil dat doen met het gdal-script. Ik heb getest – laatste maptiler om te vergelijken hoe het eruit moet zien – oude versie van maptiler – gdal2tiles.py 25611 2013-02-07 10:24: 56Z bishop $ (van qgis valmiera pakket) – gdal2tiles.py 19288 2010-04- 02 18: 36: 17Z rouault $ + jouw (Andre Joost) wijziging http://gis.stackexchange.com/questions/63024/gdal2tiles-maptiles-from-bsb-kap-are-switched

Answer

De oplossing is veel eenvoudiger dan verwacht. Zet de TMS-instellingen gewoon op true in Leaflet.

L.tileLayer("http://{s}.somedomain.com/{foo}/{z}/{x}/{y}.png", {tms: true}); 

Reacties

  • Merk op dat gdal2 gdal2tiles.py (GDAL 2.1.3, released 2017/20/01) de " juiste " of Google / OSM-conventie voor x vs y, dus voor gegenereerde tegels zijn dergelijke correcties wellicht niet nodig.
  • @AhmedFasih, het werkt nog steeds niet. getest vanuit GDAL 2.3.1

Answer

gdal2tiles gebruikt de TMS-specificatie voor tegelnaamgeving (van onder naar boven) , terwijl Maptiler je toestaat om het Google / Openstreetmap tegel naamgevingssysteem te gebruiken (van boven naar beneden).

Zie mijn antwoord op dit onderwerp over het aanpassen van gdal2tiles.py voor Google / OSM tegel naamgeving:

GDAL2Tiles: MapTiles van BSB / KAP worden omgewisseld

Reacties

  • Ik heb de wijzigingen aangebracht, maar de Y-nummers blijven hetzelfde? Ik ' m aan het werk met CRC EPSG: 4326, wat waarschijnlijk ook een probleem is, aangezien de folder EPSG: 3857 vereist.
  • Je had ty en y moeten vervangen door ty2 en y2 in de geciteerde bestaande regels ook. Mijn bron en tegels waren allemaal in EPSG: 3857.
  • Oh ok. Welnu, aangezien ik ' t gdal2tiles.py niet op alle betrokken machines wil veranderen, is de tms: true variant de betere oplossing. Bedankt!

Antwoord

Een late bijdrage, maar misschien helpt het …

Als alternatief voor het wijzigen van de code in gdal2tiles.py of het toevoegen van de speciale vlag aan de folder, kunnen de bestandsnamen van de tegels worden gewijzigd. Dit was een gemakkelijke oplossing voor het maken van tegels voor gebruik met ArcGIS online. Hier is een ruw bash-script dat de z / x / y-conventie heen en weer schakelt tussen OSM / Google-Maps (standaard gdal2tiles) en TMS (gebruikt in 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 

Answer

U kunt de bijgewerkte gdal2tiles.py voor Google / OSM tegels per link

http://gisfile.com/user/admin/gdal2tiles.py

Reacties

  • Welkom bij GIS @SE, bedankt voor je antwoord, maar je moet in je antwoord uitleggen wat het verschil is in je aanbevolen downloadlink in vergelijking met de oorspronkelijke vraag, zodat toekomstige gebruikers het ook zullen begrijpen. Met vriendelijke groet

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *