2016-07-27 5 views
0

먼저 TileMill을 사용하여 맵을 만든 다음 "mbtiles"로 내 보낸 다음 mbutil을 사용하여 해당 파일의 타일 (.png)을 생성했습니다.mbutil에서 생성 된 타일은 leafletjs를 사용하여 렌더링되지 않습니다

는 지금, 나는 leafletjs를 사용하는 타일을 사용하고 싶지만 그것은 오류 반환 : 나는 파일을 검사, 그것은이 일치하지 않습니다 enter image description here

합니다. enter image description here

무엇이 잘못되었을 수 있습니까?

var map = L.map('map').setView([7.038218,9.017317], 13); 
L.tileLayer(
    'cbr90013/{z}/{x}/{y}.png', { 
     minZoom: 13, 
     maxZoom: 19, 
     attribution: '© <a href="https://www.mapbox.com/map-feedback/">Mapbox</a> © <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>' 
    }).addTo(map); 

답변

1

몇 가지가(), 그들은 LatLong을해야 setView에서 좌표를 확인

  • 을 시도 :

    여기 내 코드입니다.

  • mbutil을 호출 한 후 출력 폴더에 유용 할 수있는 metadata.json이라는 파일이 있어야합니다. scheme (xyz 또는 tms)이 나열되어 있는지 확인하십시오. 타일의 Y 방향을 알려줍니다.

  • Maptiler.com tool을 사용하면 누락 된 타일이 Google지도에 표시되는 위치를 시각적으로 볼 수 있습니다.

  • Leafletjs.com documentation에서 tms 속성을 추가해야 할 수 있습니다. 기본값은 false이며, 가지고 있지 않으므로 추가하여 true로 설정할 수 있습니다.

귀하의 LatLng를 좌표는 누락 된 타일 (예를 들어, 4,979분의 13/6931.png)와 일치하지 않았다, 그래서도 거기에 불일치가있을 수 있습니다.


Thanks.So, 나는 타일을 생성하는 어떤 체계를 사용한다
var map = L.map('map').setView([7.038218,9.017317], 13); 
L.tileLayer(
     'cbr90013/{z}/{x}/{y}.png', { 
     tms: true 
     minZoom: 13, 
     maxZoom: 19, 
     attribution: '© <a href="https://www.mapbox.com/map-feedback/">Mapbox</a> © <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>' 
    }).addTo(map); 
+0

? xyz 또는 tms? –

+0

'mb-util --help'를 사용하여 옵션을 확인할 수 있습니다. mb-util은 또한 scheme에 대한 설명을 제공합니다. – RobLabs

+0

필자는 mbutil에서 "tms"를 사용했고 이전 버전의 전단지에서'tms : true'를 추가해야합니다. 새로운 경우에는 url에'{-y}'를 설정할 수 있습니다. –