Bagaimana cara mengatur tampilan untuk melihat semua penanda pada peta di Mapbox atau Leaflet ? Seperti yang dilakukan Google Maps API dengan bounds
?
Misalnya:
var latlngbounds = new google.maps.LatLngBounds();
for (var i = 0; i < latlng.length; i++) {
latlngbounds.extend(latlng[i]);
}
map.fitBounds(latlngbounds);
markers.getBounds().pad(<percentage>)
jika Anda ingin memperpanjang batas dengan persentase tertentu, tetapi Anda juga dapat memberikan opsi padding ke fitBounds untuk mengatur padding dalam piksel.markers.getBounds(), {padding: L.point(20, 20)})
'Answer' tidak berhasil karena beberapa alasan. Jadi, inilah yang akhirnya saya lakukan:
sumber
LngLatLike
argumen harus ditentukan sebagai turunan LngLat, objek {lng: <lng>, lat: <lat>}, atau larik [<lng>, <lat>]. Ada ide?sumber
Leaflet juga memiliki LatLngBounds yang bahkan memiliki fungsi perluasan, seperti google maps.
http://leafletjs.com/reference.html#latlngbounds
Jadi Anda cukup menggunakan:
Selebihnya persis sama.
sumber
Untuk Leaflet, saya menggunakan
sumber
Anda juga dapat menemukan semua fitur di dalam FeatureGroup atau semua featureGroups, lihat cara kerjanya!
sumber
Agar sesuai dengan penanda yang terlihat saja, saya menggunakan metode ini.
sumber
Cara terbaik adalah dengan menggunakan kode berikutnya
sumber