带有Google卫星图层的Leaflet Map API

时间:2012-02-22 11:49:36

标签: google-maps-api-3 satellite leaflet

我对Leaflet Map API非常感兴趣。

但是,我需要能够使用Google卫星图层。我无法找到有关如何将Google卫星图层添加到Leaflet的示例。我了解到我仍然需要加载Google Maps API来执行此操作(OpenLayers有一个示例)。

6 个答案:

答案 0 :(得分:102)

您不需要插件或Google API,可以将其添加为XYZ切片图层。

街道

googleStreets = L.tileLayer('http://{s}.google.com/vt/lyrs=m&x={x}&y={y}&z={z}',{
    maxZoom: 20,
    subdomains:['mt0','mt1','mt2','mt3']
});

混合:

googleHybrid = L.tileLayer('http://{s}.google.com/vt/lyrs=s,h&x={x}&y={y}&z={z}',{
    maxZoom: 20,
    subdomains:['mt0','mt1','mt2','mt3']
});

卫星:

googleSat = L.tileLayer('http://{s}.google.com/vt/lyrs=s&x={x}&y={y}&z={z}',{
    maxZoom: 20,
    subdomains:['mt0','mt1','mt2','mt3']
});

地形

googleTerrain = L.tileLayer('http://{s}.google.com/vt/lyrs=p&x={x}&y={y}&z={z}',{
    maxZoom: 20,
    subdomains:['mt0','mt1','mt2','mt3']
});


Note the difference in the "lyrs" parameter in the URL:
Hybrid: s,h;
Satellite: s;
Streets: m;
Terrain: p;

答案 1 :(得分:11)

有一个第三方插件: 演示:http://psha.org.ru/leaflet/bel.html(使用切换台切换到Google地图) 资料来源:http://psha.org.ru/leaflet/Google.js

答案 2 :(得分:6)

此存储库包含几个tile图层google和其他非常有用的其他插件: https://github.com/shramov/leaflet-plugins

答案 3 :(得分:3)

Leaflet有一个发布所有可用插件的官方页面:http://leafletjs.com/plugins.html

您可以在那里找到用于向Leaflet添加Google图层支持的插件。

答案 4 :(得分:0)

具有流量

的Google标题层
var googleTraffic = L.tileLayer('https://{s}.google.com/vt/lyrs=m@221097413,traffic&x={x}&y={y}&z={z}', {
        maxZoom: 20,
        minZoom: 2,
        subdomains: ['mt0', 'mt1', 'mt2', 'mt3'],
    });

请查看他们的General Terms

希望有人帮忙

答案 5 :(得分:0)

替代Google Maps API的卫星图层:Leaflet.js with Esri World Imagery tiles

<script>

    var map = L.map('map').setView([-41.2858, 174.78682], 14);

    var mapLink = '<a href="http://www.esri.com/">Esri</a>';
    var wholink = 'i-cubed, USDA, USGS, AEX, GeoEye, Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community';

    L.tileLayer(
        'http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}', {
        attribution: '&copy; '+mapLink+', '+wholink,
        maxZoom: 18,
        }).addTo(map);

</script>