2015-12-10 42 views
1

我想用leafletjs制作一个自定义地图,并且我已经计算出0.6.x的版本,但是当涉及到最新版本(0.7.x)时,它不起作用。自定义贴图的小册子自定义地图

这是与0.6.x工作

任何人有过这个问题的代码?

var mapMinZoom = 0; 
    var mapMaxZoom = 5; 
    var map = L.map('wu-map', { 
     maxZoom: mapMaxZoom, 
     minZoom: mapMinZoom, 
     crs: L.CRS.Simple 
    }).setView([0, 0], mapMaxZoom); 

    var mapBounds = new L.LatLngBounds(
     map.unproject([0, 3072], mapMaxZoom), 
     map.unproject([4352, 0], mapMaxZoom)); 

    map.fitBounds(mapBounds); 

    L.tileLayer('images/map/{z}/{x}/{y}.png', { 
     minZoom: mapMinZoom, maxZoom: mapMaxZoom, 
     bounds: mapBounds, 
     attribution: 'Rendered with <a href="http://www.maptiler.com/">MapTiler</a>', 
     noWrap: true, 
     tms: false 
    }).addTo(map); 
+0

你什么错误? –

+0

没有错误,地图没有显示,尽管它与版本0.6.x完美兼容 – sadiqevani

+0

您的意思是根本没有显示地图(即使zoomIn和zoomOut按钮),或者图层没有被加载? –

回答

1

有一个在leaflet.js 0.7版本时crs选项设置为L.CRS.Simple值(而不是只)时出现的错误。小册子0.7介绍L.CRS.getSize(一个函数,返回特定坐标参考系统的特定缩放的像素世界大小),默认情况下调用并返回与L.CRS.scale相同的值。它适用于默认的CRS,并且对其他人无效。

所有我可以建议是删除crs: L.CRS.Simple从你的选择对象,它将被设置为默认值(L.CRS.EPSG3857):

var map = L.map('wu-map', { 
    maxZoom: mapMaxZoom, 
    minZoom: mapMinZoom 
}).setView([0, 0], mapMaxZoom); 
+1

我会尽力:)谢谢 – sadiqevani