Próbuję wygenerować kafelki za pomocą gdal2tiles.py i wynikowe kafelki są przechowywane jako 18/132639/164219
. Jeśli zrobię to samo z MapTiler (wariant GUI gdal2tiles), wynik kafelka to 18/132639/97923
. Chcę wyniki z MapTiler (97923 ), ale tylko z gdal2tiles, ponieważ chcę to zrobić w procesie wsadowym, a nie za pomocą GUI.
Próbowałem już wielu rzeczy, wypaczania, tłumaczenia, cokolwiek, i robi się bardzo irytujące, zwłaszcza, że mówi, że MapTiler jest tylko graficznym interfejsem dla gdal2tiles i robi w zasadzie to samo.
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
Większość z nich skutkuje ERROR 5 Access window out of range in RasterIO()
lub ERROR 5: Illegal values for buffer size
.
Ten działa, ale skutkuje nieprawidłowymi wartościami Y:
gdal2tiles.py -s EPSG:4326 -z 16-19 -w none overlay-level1.png
Jakieś pomysły, co tam jest nie tak?
Komentarze
- Próbowałem utworzyć kafelki do opublikowania moja mapa online. Chcesz uzyskać taką samą strukturę, jak w przypadku ostatniej wersji 0.5.2 maptilera, ale chcesz to zrobić za pomocą skryptu gdal. Testowałem – ostatni maptiler do porównania, jak powinien wyglądać – stara wersja maptilera – gdal2tiles.py 25611 2013-02-07 10: 24: 56Z bishop $ (z pakietu qgis valmiera) – gdal2tiles.py 19288 2010-04- 02 18: 36: 17Z rouault $ + Twoja (Andre Joost) modyfikacja http://gis.stackexchange.com/questions/63024/gdal2tiles-maptiles-from-bsb-kap-are-switched
Odpowiedź
Rozwiązanie jest znacznie prostsze niż oczekiwano. Po prostu zmień ustawienia TMS na true
w ulotce.
L.tileLayer("http://{s}.somedomain.com/{foo}/{z}/{x}/{y}.png", {tms: true});
Komentarze
- Zwróć uwagę, że gdal2 gdal2tiles.py (
GDAL 2.1.3, released 2017/20/01
) używa " prawidłowego " lub Google / OSM dlax
vsy
, więc wygenerowane kafelki mogą nie wymagać takich poprawek. - @AhmedFasih, to nadal nie działa. testowane z GDAL 2.3.1
Odpowiedź
gdal2tiles używa specyfikacji TMS do nazewnictwa kafelków (od dołu do góry) , podczas gdy Maptiler umożliwia korzystanie z systemu nazewnictwa kafelków Google / Openstreetmap (od góry do dołu).
Zobacz moją odpowiedź na ten temat, jak zmodyfikować plik gdal2tiles.py pod kątem nazewnictwa kafelków Google / OSM:
GDAL2Tiles: Płytki mapy z BSB / KAP są przełączane
Komentarze
- Wprowadziłem zmiany, ale liczby Y pozostają takie same? Ja ' pracuję z CRC EPSG: 4326, co jest prawdopodobnie również problemem, ponieważ ulotka wymaga EPSG: 3857.
- Powinieneś był zastąpić ty i y przez ty2 i y2 również w cytowanych istniejących wierszach. Moje źródło i kafelki były w formacie EPSG: 3857.
- OK. Ponieważ nie ' nie chcę zmieniać gdal2tiles.py na wszystkich zaangażowanych komputerach, wariant tms: true jest lepszym rozwiązaniem. Dzięki!
Odpowiedź
Spóźniony wkład, ale może to pomoże …
Alternatywnie do zmiany kodu w gdal2tiles.py lub dodania specjalnej flagi do ulotki, można zmienić nazwy plików kafelków. To była łatwa poprawka do tworzenia kafelków do użycia z ArcGIS online. Oto przybliżony skrypt bash, który będzie przełączał konwencję z / x / y tam iz powrotem między OSM / Google-Maps (domyślnie gdal2tiles) i TMS (używany w 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
Odpowiedź
Możesz pobrać zaktualizowaną gdal2tiles.py dla Google / OSM kafelki według linku
http://gisfile.com/user/admin/gdal2tiles.py
Komentarze
- Witamy w GIS @SE, dziękuję za odpowiedź, jednak w odpowiedzi należy wyjaśnić, jaka jest różnica w zalecanym linku do pobrania w porównaniu z pierwotnym pytaniem, aby przyszli użytkownicy również zrozumieli. pozdrawiam