小编use*_*080的帖子

在leafletjs地图中使用Bing Quadkey拼贴而不是x/y/z拼贴

我尝试使用leaflet.js创建一个地图,可以在不同的图块层之间切换.它适用于使用标准x,y和z(oom)模式为切片提供服务的切片服务器.但是,Microsoft Bing使用自己的四核模式.我发现了一个JavaScript函数将xyz转换为quad,但我不知道如何使用它.请看我的例子:

function toQuad(x, y, z) {
    var quadkey = '';
    for ( var i = z; i >= 0; --i) {
        var bitmask = 1 << i;
        var digit = 0;
        if ((x & bitmask) !== 0) {
            digit |= 1;}
        if ((y & bitmask) !== 0) {
            digit |= 2;}
        quadkey += digit;
    }
    return quadkey;
};
var openstreetmap = L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',{attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'}),
arcgissat  = L.tileLayer('http://{s}.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}', {subdomains: ['server', 'services'], attribution: '&copy; <a href="http://www.arcgis.com/">ArcGIS esri</a>'})
//   bingsat …
Run Code Online (Sandbox Code Playgroud)

javascript function map tile leaflet

11
推荐指数
1
解决办法
5828
查看次数

标签 统计

function ×1

javascript ×1

leaflet ×1

map ×1

tile ×1