Sto realizzando un progetto per la scuola e ho bisogno di ridimensionare le icone dei marker a seconda del livello di zoom in una mappa di volantini, Esiste un modo semplice per farlo? Qualche tutorial sul web? Grazie in anticipo per l'aiuto!!!c'è un modo per ridimensionare le icone dei marker a seconda del livello di zoom nel volantino?
risposta
Per modificare la dimensione dei marker quando si esegue lo zoom in/out, è necessario gestire l'evento.
map.on('zoomend', function() { });
Il zoomend
evento sarà chiamato ogni volta che la mappa è terminato operazioni di zoom. Vedi l'API here.
Ora, all'interno di questa funzione, è possibile chiamare il proprio codice personalizzato per modificare la dimensione dei marker. Ad esempio, supponiamo di voler adottare un approccio semplice e impostare la dimensione di un indicatore di cerchio uguale alla dimensione del livello di zoom delle mappe. Vedere le API per un CircleMarker here
// Create some marker that will be resized on the map zooming
var myMarker = new L.CircleMarker([10,10], { /* Options */ });
map.on('zoomend', function() {
var currentZoom = map.getZoom();
myMarker.setRadius(currentZoom);
});
Ora ogni volta che la mappa ingrandisce o si riduce, la dimensione del marcatore cambierà.
Non sono sicuro di cosa si riferisca Stophace riguardo a circleMarkers che non modifica la dimensione, ma, aggiungendo alla risposta approvata ... se si desidera ridimensionare circleMakers o modificare qualsiasi altra opzione di stile (Trovo utile modificare la peso con raggio), è possibile utilizzare il seguente approccio:
map.on('zoomend', function() {
var currentZoom = map.getZoom();
var myRadius = currentZoom*(1/2); //or whatever ratio you prefer
var myWeight = currentZoom*(1/5); //or whatever ratio you prefer
layername.setStyle({radius: myRadius, weight: setWeight});
});
layerName sarà sostituito con il nome di qualsiasi livello si dispone che contiene circleMarkers ... e, naturalmente, è possibile modificare le frazioni al tuo simpatia per soddisfare le tue esigenze.
Immagino che il progetto scolastico dell'OP sia terminato, ma spero che questo aiuti gli altri che hanno la stessa domanda!
oops ... inteso per postare questo come commento alla risposta originale ... per la prima volta overflower qui! – juliabulia245
- 1. C'è un modo per cambiare l'immagine dell'icona a seconda del livello di zoom? (leaflet.js)
- 2. Change Jtree icone dei nodi a seconda del livello di profondità
- 3. Selezione di più marker all'interno di una casella nel volantino
- 4. Disegna linee tra i marker nel volantino
- 5. Come ridimensionare un pulsante a seconda del suo testo
- 6. C'è un modo per ridimensionare automaticamente le immagini MediaWiki a seconda delle dimensioni dello schermo?
- 7. Modifica del cluster di marker in base al livello di zoom in Shiny/Leaflet/R
- 8. Come proiettare le coordinate dei pixel nel volantino?
- 9. Raggruppato/Separa MKAnnotation a seconda del livello di zoom (E mantenerlo veloce)
- 10. Come individuare il controllo zoom del volantino nella posizione desiderata
- 11. Modifica del livello di zoom del browser
- 12. Disattiva zoom mappa su CircleMarker doppio click nel volantino
- 13. come ridimensionare un ImageView a livello di codice
- 14. Change ActionBar icone del menu a seconda dello stile
- 15. gruppi di marker diversi nel programma
- 16. Un modo per reimpostare a livello di codice le classifiche?
- 17. Castello. Stile di vita dei viandanti a seconda del contesto?
- 18. Cambia l'indice z del marker negli openlayers
- 19. Come posso ottenere un livello topojson da mostrare nel volantino usando d3?
- 20. Prendi il riquadro di delimitazione della mappa del volantino visibile?
- 21. Impostazione del livello di zoom sul browser mobile
- 22. Come faccio a determinare il numero intero massimo del livello di zoom per Google Maps?
- 23. ORDER BY a seconda dei risultati dei parametri per errore
- 24. Aggiunta di badge alle icone dei file nel Finder
- 25. Google Maps v3: un modo per forzare un livello di zoom massimo elevato (maxZoom 24)?
- 26. Google maps api v2 zoom vicino al marker
- 27. Come faccio a mostrare un'etichetta oltre un certo livello di zoom in Leaflet?
- 28. Hai bisogno di un modo per ridimensionare un font per adattarlo a un rettangolo
- 29. zoom per adattarsi a tutti i marker sulla mappa google maps v2
- 30. Come aggiornare l'opacità del layer WMS nel volantino?
Si potrebbe voler cambiare 'L.CircleMarker' in' L.circle'. Come ho capito, "L.CircleMarker" è usato per le cerchie che non dovrebbero cambiare le dimensioni dell'accodamento allo zoom – Stophface