Đang tải lớp gạch vector trong bản đồ Tờ rơi?


9

Tôi cần tải một lớp gạch vector trong bản đồ Tờ rơi.

Ngói vector là lớp gạch vector về các chuỗi Mapillary (xem https://a.mapillary.com/#vector-tiles ...) và mẫu URL của gạch là:

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

gạch vector sử dụng định dạng gạch vector Mapbox.

Tôi đã tìm kiếm trên mạng nhưng tôi chưa tìm thấy một mẫu: Tôi đã thấy rằng điều này có thể được thực hiện bằng Mapbox, nhưng nếu có thể tôi chỉ muốn sử dụng Tờ rơi

Câu trả lời:


11

Trong Leaflet 0.7x, điều này được thực hiện dễ dàng với Leaflet.MapboxVectorTileplugin . Bạn chỉ cần xác định mẫu URL trong urltùy chọn cấu hình. Các tài liệu plugin chi tiết các tùy chọn cấu hình khác có sẵn. Để thêm dữ liệu Mapillary, bạn sẽ sử dụng nó như thế này:

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

Đây là một câu đố cho thấy kết quả:

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

Đối với Leaflet 1.0x, bạn sẽ muốn sử dụng phương thức của Leaflet.VectorGridL.vectorGrid.protobuf . Nó có một số tùy chọn kiểu dáng được mô tả trong các tài liệu, nhưng chỉ cần tải các ô, bạn sẽ sử dụng nó như thế này:

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

Ví dụ

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


Tuyệt quá!! nó đang hoạt động Đơn giản, rõ ràng và có ví dụ. Tốt nhất!
Cesare

3
@nathansnider JSFiddle của bạn không truy cập được. Rất thích một ví dụ thích hợp về cách đọc các ô dựa trên vectơ bằng tờ rơi
LBes

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.