Yritän luoda ruutuja gdal2tiles.py-ohjelmalla ja tuloksena olevat laatat tallennetaan nimellä 18/132639/164219. Jos teen saman asian MapTilerin kanssa (gdal2tilesin GUI-muunnos), laatan tulos on 18/132639/97923. Haluan tulokset MapTilerista (97923) ), mutta vain gdal2tiles-sovelluksen kanssa, koska haluan tehdä tämän eräprosessissa eikä graafisella käyttöliittymällä.

Yritin jo monia asioita, vääntämällä, kääntämällä mitä tahansa, ja se on tulossa hyvin ärsyttävää, varsinkin kun siinä sanotaan, että MapTiler on vain graafinen käyttöliittymä gdal2tilesille ja tekee periaatteessa saman.

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 

Suurin osa näistä johtaa ERROR 5 Access window out of range in RasterIO() tai ERROR 5: Illegal values for buffer size.

Tämä toimii, mutta johtaa vääriin Y-arvoihin:

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

Onko sinulla ideoita, mikä siellä vikaa on?

Kommentit

  • Yritin tuottaa ruutuja julkaistavaksi karttani verkossa. Haluatko saada saman rakenteen kuin tuottaa maptilerin viimeisin versio 0.5.2, mutta haluat tehdä sen käyttämällä gdal-komentosarjaa. Olen testannut – viimeinen maptiler verrataksesi miltä se näyttää – vanha versio maptileristä – gdal2tiles.py 25611 2013-02-07 10: 24: 56Z bishop $ (qgis valmiera -paketista) – gdal2tiles.py 19288 2010-04- 02 18: 36: 17Z rouault $ + (Andre Joost) muokkauksesi http://gis.stackexchange.com/questions/63024/gdal2tiles-maptiles-from-bsb-kap-are-switched

Vastaus

Ratkaisu on paljon odotettua yksinkertaisempi. Käännä TMS-asetukseksi true esitteessä.

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

Kommentit

  • Huomaa, että gdal2 gdal2tiles.py (GDAL 2.1.3, released 2017/20/01) käyttää " oikeaa " tai Google / OSM -käytäntö x vs y -tilalle, joten luodut laatat eivät välttämättä tarvitse tällaisia korjauksia.
  • @AhmedFasih, se ei vieläkään toimi. testattu GDAL 2.3.1: stä

Answer

gdal2tiles käyttää TMS-määritystä laattojen nimeämiseen (alhaalta ylös) , kun taas Maptilerin avulla voit käyttää Google / Openstreetmap-ruutujen nimeämisjärjestelmää (ylhäältä alas).

Katso vastaukseni tähän aiheeseen, kuinka muokata gdal2tiles.py Google / OSM-ruutujen nimeämistä varten:

GDAL2Tiles: BSB / KAP: n MapTiles vaihdetaan

Kommentit

  • Tein muutokset, mutta Y-luvut pysyvät samoina? Olen ' m, joka työskentelee CRC EPSG: 4326: n kanssa, mikä on todennäköisesti myös ongelma, koska esite vaatii EPSG: 3857: n.
  • Sinun olisi pitänyt korvata ty ja y ty2 ja y2 myös lainatuissa olemassa olevissa linjoissa. Lähteeni ja laatat olivat kaikki EPSG: ssä 3857.
  • Voi ok. No, koska en halua ' halua muuttaa gdal2tiles.py-tiedostoa kaikissa mukana olevissa koneissa, tms: true -vaihtoehto on parempi ratkaisu. Kiitos!

Vastaa

Myöhäinen kommentti, mutta ehkä se auttaa …

Vaihtoehtona koodin muuttamiselle gdal2tiles.py-ohjelmassa tai erityisen lipun lisäämiseen esitteeseen ruutujen tiedostonimiä voidaan muuttaa. Tämä oli helppo korjaus ArcGIS-verkossa käytettävien laattojen luomiseen. Tässä on karkea bash-komentosarja, joka vaihtaa z / x / y-käytäntöä edestakaisin OSM / Google-Maps (gdal2tiles-oletus) ja TMS (käytetään ArcGIS Online -palvelussa)

 # 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 

vastaus

Voit ladata päivitetyn gdal2tiles.py Google / OSM -laatat linkin avulla

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

kommentit

  • Tervetuloa GIS: ään @SE, kiitos vastauksestasi, mutta sinun tulisi kuitenkin selittää vastauksessasi, mikä ero on suositellussa latauslinkissäsi alkuperäiseen kysymykseen verrattuna, jotta myös tulevat käyttäjät ymmärtäisivät sen. Ystävällisin terveisin

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *