2013-06-06 5 views
2

예를 들어 NOAA의 BSB 파일이 탐색 맵입니다. 지도에는 WGS84의 SRS와 Mercator 투영법이 있습니다.BSB/KAP 파일에서 MapTiles 생성 GDAL2Tiles를 사용하여

나는 처음에 다음 명령을 사용하여 GTiff 형식으로 BSB 형식에서 파일을 변환 :

gdal_translate -of GTiff 18554_1.kap noaa.tif 

나는 페인트 샵 프로가 매우 미세하여이 GTiff 파일을 볼 수 있습니다. 나는 다음 명령을 사용하여 VRT 형식으로 GTiff 형식에서 파일을 변환 :

gdal_translate -of vrt –expand rgba noaa.tif noaa.vrt 

내가 다음 명령을 사용하여 타일 매트릭스 세트를 생성하려고 :

gdal2tiles.py noaa.vrt tiles_folder 

지도 타일이있는 in tiles_folder. openmaps.html 또는 google.html을 열려고하면지도가 확대/축소됩니다. 그러나 MBTiles와 같은 타일 생성기에서는 타일이 바뀌는 것을 볼 수 있습니다. 아래 이미지를 참조하십시오. 타일을 줄 이도록 내 머리카락을 당겨요. 나는 그것이 투영 오류라고 짐작하고있다. 나는 그 투영 형식을 이해하지 못한다. 오류를 찾는 동안 누군가가 설명 할 수 있으면 좋을 것입니다. 나는 이것 같이 tiling maps/charts app에 사용할 것을 계획하고있다. 그런데 GDAL에서는 KAP (데이터) 파일과 연결된 BSB (참조) 파일을 어떻게 지정합니까? 여러 개의 KAP 파일로 참조되는 BSB 파일이 하나 뿐인 경우를 보았습니다.

Gdal2tiles swapped tiles

답변

3

지도 투영에 문제가 없지만, 타일 GDAL2Tiles에서 (왼쪽 바닥 타일 [0,0] 포함) TMS 표기법을 따라 절단된다. 일부 도구는 Google XYZ 표기법 (왼쪽 상단 모서리에 타일 [0,0] 사용)이 필요합니다. 타일이 다른 경우 타일은 파일 이름에 Y 좌표를 뒤집습니다.

Google XYZ vs TMS - the flipped Y coordinates in map tiles

내가 시각적 차이를 보여주고 또한 문제를 설명하는 웹 사이트를 준비 :

이에서보세요. 타일 ​​및 모든 좌표를 계산하는 방법에 대한 소스 코드도 있습니다

http://www.maptiler.org/google-maps-coordinates-tile-bounds-projection/

:에서보세요. 위에서 언급 한 GDAL2Tiles의 일부입니다. 몇 년 전에 작성한 코드입니다.

두 번째 질문은 MBTiles에 관한 것입니다. mbutil 유틸리티에는 "--scheme tms"매개 변수가있어 gdal2tiles.py로 렌더링 된 타일로부터 MBTiles 파일을 만들 수 있습니다.

GDAL은 KAP 파일을 읽습니다. 각 KAP 파일은 시트 (삽입 기호가있는 경우)의지도를 나타냅니다.

BTW 위에서 언급 한 문제를 직접 해결하는 http://www.maptiler.com/이 있다는 것을 알고 계십니까? & 드롭을 GUI로 드래그하거나 명령 줄에 KAP 파일을 그대로 전달하고 디렉토리 또는 MBTiles에 타일을 표시할지 여부를 선택하면 출력이 직접 렌더링됩니다. 타일은 직접 최적화되어 있으며 여러 입력 파일을 단일 레이어로 렌더링 할 수 있으며 GDAL2Tiles를 사용하면 렌더링 속도가 훨씬 빠릅니다.