Ich habe eine Faltblattkarte, deren Größe von der Größe des Browserfensters abhängt. Ich möchte, dass die Zoomstufe dynamisch so gewählt wird, dass sie so vergrößert wie möglich ist und gleichzeitig den gesamten Begrenzungsrahmen anzeigt.
Im Moment habe ich nur die Zoomstufe fest codiert und den Mittelpunkt basierend auf einem Durchschnitt von Punkten.
map = new L.Map('map', {
center: new L.LatLng(
latitudeSum/locations.length,
longitudeSum/locations.length
)
zoom: 9
})
Stattdessen möchte ich ihm einen Begrenzungsrahmen (zwei Inseln) geben und die Zoomstufe basierend auf der Größe des Fensters auswählen lassen.
Mit der Antwort von @ Farhat fand ich heraus, dass ich nur ein Array von Arrays übergeben musste:
quelle
map.fitBounds()
funktioniert auch hervorragend, wenn Sie mit Google Map-Polylinien arbeiten:quelle
So habe ich es dank @Mike McKay gemacht! ;)
Beachten Sie, dass ich den Koordinaten ein paar zusätzliche Elemente als innere Polsterung hinzugefügt habe, sodass die Markierungen nicht direkt neben der Karte angezeigt werden. Dieser Weg sieht schöner aus.
VUE.JS WEG:
quelle