Jeg prøver å generere fliser med gdal2tiles.py, og de resulterende flisene lagres som 18/132639/164219
. Hvis jeg gjør det samme med MapTiler (GUI-varianten av gdal2tiles) er fliseresultatet 18/132639/97923
. Jeg vil ha resultatene fra MapTiler (97923 ), men bare med gdal2tiles, ettersom jeg vil gjøre dette i en batchprosess og ikke med et GUI.
Jeg prøvde mange ting allerede, vridning, oversettelse, hva som helst, og det blir veldig irriterende, spesielt da det står at MapTiler bare er et grafisk grensesnitt for gdal2tiles og i utgangspunktet gjør det samme.
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 fleste av dem resulterer i en ERROR 5 Access window out of range in RasterIO()
eller ERROR 5: Illegal values for buffer size
.
Denne fungerer, men resulterer i feil Y-verdier:
gdal2tiles.py -s EPSG:4326 -z 16-19 -w none overlay-level1.png
Noen ideer om hva som er galt der?
Kommentarer
- Jeg prøvde å lage fliser for å publisere kartet mitt på nettet. Ønsker å få samme struktur som den siste versjonen 0.5.2 av maptiler, men vil gjøre det ved hjelp av gdal script. Jeg har testet – siste maptiler for å sammenligne hvordan skal det se ut – gammel versjon av maptiler – gdal2tiles.py 25611 07-02-2013 10: 24: 56Z biskop $ (fra qgis valmiera-pakke) – gdal2tiles.py 19288 2010-04- 02 18: 36: 17Z rouault $ + din (Andre Joost) modifisering http://gis.stackexchange.com/questions/63024/gdal2tiles-maptiles-from-bsb-kap-are-switched
Svar
Løsningen er mye enklere enn forventet. Bare vri TMS-innstillinger til true
i brosjyren.
L.tileLayer("http://{s}.somedomain.com/{foo}/{z}/{x}/{y}.png", {tms: true});
Kommentarer
- Merk at gdal2 gdal2tiles.py (
GDAL 2.1.3, released 2017/20/01
) bruker " riktig " eller Google / OSM-konvensjon forx
vsy
, så genererte fliser trenger kanskje ikke slike rettelser. - @AhmedFasih, Det fungerer fortsatt ikke. testet fra GDAL 2.3.1
Svar
gdal2tiles bruker TMS-spesifikasjonen for navn på fliser (nederst til topp) , mens Maptiler lar deg bruke Google / Openstreetmap-flisens navngivningssystem (topp til bunn).
Se svaret mitt på dette emnet om hvordan du endrer gdal2tiles.py for Google / OSM-fliseravn:
GDAL2Tiles: MapTiles fra BSB / KAP er byttet
Kommentarer
- Jeg gjorde endringene, men Y-tallene forblir de samme? Jeg ' jobber med CRC EPSG: 4326, noe som sannsynligvis også er et problem, ettersom brosjyren krever EPSG: 3857.
- Du burde ha erstattet ty og y med ty2 og y2 i de siterte eksisterende linjene også. Min kilde og fliser var alle i EPSG: 3857.
- Å ok. Vel, siden jeg ikke ' ikke vil endre gdal2tiles.py på alle involverte maskiner, er tms: true variant den bedre løsningen. Takk!
Svar
Et sent bidrag, men kanskje det hjelper …
Som et alternativ til å endre koden i gdal2tiles.py eller legge til det spesielle flagget i brosjyren, kan filnavnene på flisene endres. Dette var en enkel løsning for å lage fliser som skal brukes med ArcGIS online. Her er et grovt bash-skript som vil veksle z / x / y-konvensjonen frem og tilbake mellom OSM / Google-Maps (gdal2tiles standard) og TMS (brukes 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 laste ned den oppdaterte gdal2tiles.py for Google / OSM fliser etter lenke
http://gisfile.com/user/admin/gdal2tiles.py
Kommentarer
- Velkommen til GIS @SE, takk for svaret, men du bør forklare i svaret hva som er forskjellen i den anbefalte nedlastingskoblingen din sammenlignet med det opprinnelige spørsmålet, slik at fremtidige brukere også vil forstå. hilsen