Zeichne einen Kreis mit konstanter Größe für alle Zoomlevel leaflet.js

8

Ich versuche, etwas wie dies mithilfe von leaflet.js zu implementieren, wo die Größe ist der Kreis bleibt bei unterschiedlichen Zoomstufen gleich. Zum Beispiel, wenn ich die Populationen in verschiedenen US-Grafschaften darstellen möchte, hätte ich Kreise mit unterschiedlichem Radius für unterschiedliche Bevölkerungsbereiche. Sie können sich überlappen, wenn sie vollständig herausgezoomt sind, aber wenn wir anfangen zu zoomen, neigen sie dazu, sich zu trennen. Gibt es eine Möglichkeit, dies mit leaflet.js zu tun? Ich habe ein Problem gemeldet, aber ich konnte nicht folgen, wenn es behoben wurde oder nicht. Jede Hilfe würde sehr geschätzt werden.

    
aa8y 17.03.2014, 23:00
quelle

2 Antworten

3

Ich denke, du wirst so etwas machen wollen:

%Vor%

Ich habe einfach eine Karte und einen Kreis initialisiert und Ereignis-Listener für die Ereignisse zoomstart und zoomend erstellt. Es gibt ein myZoom -Objekt, das die Zoomstufen aufzeichnet, so dass Sie herausfinden können, ob der endgültige Zoom durch einfache Subtraktion ein- oder ausgeblendet wird. Im zoomEnd Listener überprüfen Sie das und ändern den Kreisradius basierend darauf, ob der Unterschied größer oder kleiner als 0 ist. Wir machen natürlich nichts, wenn es 0 ist. Hierüber verlasse ich Sie, um mit Ihren Ergebnissen ausgefeilter zu werden. Aber ich denke, das zeigt, wie es geht.

    
4m1r 18.03.2014, 00:18
quelle
16

Verwenden Sie für Kreise einfach circleMarker anstelle von circle : Ссылка

    
Aaron Schumacher 20.06.2014 20:27
quelle

Tags und Links