Uso lo strumento di debug di Chrome per confrontare la mappa di google e altre mappe. Ho trovato per la funzione di misurazione della distanza, google map usa canvas per disegnare il percorso e alcuni altri usano SVG. Suppongo che forse questo è perché la tela è più veloce. Ma SVG ha molte buone parti per disegnare il percorso. C'è qualche altro motivo?Perché google map usa Canvas per misurare la distanza non in SVG?
5
A
risposta
10
Ogni elemento SVG è un elemento DOM e con oltre 10.000 percorsi SVG provoca un rallentamento notevole rispetto a Canvas. Quindi una possibilità è la sua esecuzione.
Ma originariamente Android non rendeva/supporta SVG. Questa è probabilmente la vera ragione per cui Google ha scelto di utilizzare Canvas.
Oggi, Tablet Android (3.0+) ha il supporto per SVG ma 1.0-2.3 no.
Problemi correlati
- 1. ridimensiona icona svg per google map marker
- 2. Usa Google Map nell'applicazione Blackberry
- 3. Come misurare la distanza in metri tra due CLLocations?
- 4. Perché C++ std :: map :: operator [] non usa inplace new?
- 5. È possibile misurare la distanza rispetto all'oggetto con la fotocamera?
- 6. D3 map Prestazioni SVG
- 7. non può catturare google map con html2canvas
- 8. Come misurare altezza, larghezza e distanza dell'oggetto usando la fotocamera?
- 9. Google Maps calcola la distanza errata?
- 10. Come misurare la distanza tra due dispositivi iPhone tramite Bluetooth?
- 11. Come misurare la distanza percorsa da un iPhone usando l'accelerometro?
- 12. Distanza tra due posizioni - Google Maps
- 13. Distanza pixel in Google Map (API V3) per evitare sovrapposizioni di etichette/sovrapposizioni
- 14. firefox svg canvas drawImage error
- 15. SVG vs HTML5 Canvas grafici basati
- 16. Android - Google Map non visualizza
- 17. Usa Canvas per trasformare i pixel non trasparenti bianchi
- 18. Google Map non viene visualizzata in Android
- 19. Perché Google Map API necessità tasto per cambiare frequentemente
- 20. SVG rect vs div vs canvas
- 21. Recupera coords per google map
- 22. casella di ricerca Google map
- 23. Disegnare testo su Google Map non è più possibile?
- 24. Google Map in dispositivi mobili
- 25. Perché utilizzare canvas per l'animazione in html5?
- 26. Inizializza Google Map in AngularJS
- 27. CAP in Raggio Google Map
- 28. Perché jQuery non usa JSDoc?
- 29. html e Svg to Canvas javascript
- 30. Google Map v3 Map caricato evento
Grazie mille! E per il motivo della performance, se disegno una linea sia su canvas che su SVG, i percorsi SVG attiveranno il reflusso? e per quanto riguarda la tela? ri-dipingere solo? – cnzhenyu
Una volta caricati tutti gli oggetti SVG DOM, le cose non sono * troppo * cattive. Entrambi saranno abbastanza lenti nel ridisegnare tutti i 10.000 oggetti, ma c'è molto più spazio per migliorare le prestazioni di quello Canvas. –
@SimonSarris Mi piacerebbe sapere per quanto riguarda la lentezza nel ridisegnare di dire 10.000 oggetti, come Canvas può migliorare su questo? Grazie! – kakacii