在传单地图中加载矢量图块图层?


9

我需要在传单地图中加载矢量图块层。

向量图块是有关Mapillary序列的向量图块层(请参见https://a.mapillary.com/#vector-tiles ...),图块URL模式为:

https://d2munx5tg0hw47.cloudfront.net/tiles/{z}/{x}/{y}.mapbox

矢量图块使用Mapbox矢量图块格式。

我已经在网上搜索过,但没有找到示例:我已经看到可以使用Mapbox完成此操作,但如果可能的话,我只想使用Leaflet

Answers:


11

在Leaflet 0.7x中,可以通过Leaflet.MapboxVectorTileplugin轻松实现。您只需要在url配置选项中指定URL模式。插件文档详细介绍了可用的其他配置选项。要添加Mapillary数据,您可以像这样使用它:

var config = {
  url: "https://d2munx5tg0hw47.cloudfront.net/tiles/{z}/{x}/{y}.mapbox"
};
var mapillarySource = new L.TileLayer.MVTSource(config);
map.addLayer(mapillarySource);

这是显示结果的小提琴:

http://fiddle.jshell.net/nathansnider/sj12o4hj/

对于Leaflet 1.0x,您将需要使用Leaflet.VectorGridL.vectorGrid.protobuf方法。它具有文档中介绍的许多样式选项,但是对于仅加载图块,您可以像这样使用它:

var url = 'https://d2munx5tg0hw47.cloudfront.net/tiles/{z}/{x}/{y}.mapbox';
var mapillaryLayer = L.vectorGrid.protobuf(url).addTo(map);

小提琴示例:

http://fiddle.jshell.net/nathansnider/mwmpmLo7/


大!!它正在工作。简单,清晰并带有示例。最好的!
切萨雷

3
@nathansnider您的JSFiddle无法访问。会喜欢一个有关如何阅读带有传单的基于矢量的图块的正确示例
-LBes,

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.