Esiste un modo per visualizzare una mappa di Google (incorporata tramite l'API di Javascript) in scala di grigi senza perdere altre funzionalità?Google Maps in scala di grigi
risposta
Sì, nella V3 dell'api hanno introdotto StyledMaps
.
Hanno persino provided a tool per generare il codice per gli stili che ti piacciono. Fai scorrere la "Saturazione" fino in fondo e hai la scala di grigi in corso!
L'esempio seguente visualizza una mappa in scala di grigi di Brooklyn:
var map;
var brooklyn = new google.maps.LatLng(40.6743890, -73.9455);
var stylez = [
{
featureType: "all",
elementType: "all",
stylers: [
{ saturation: -100 } // <-- THIS
]
}
];
var mapOptions = {
zoom: 11,
center: brooklyn,
mapTypeControlOptions: {
mapTypeIds: [google.maps.MapTypeId.ROADMAP, 'tehgrayz']
}
};
map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
var mapType = new google.maps.StyledMapType(stylez, { name:"Grayscale" });
map.mapTypes.set('tehgrayz', mapType);
map.setMapTypeId('tehgrayz');
'tehgrayz' +1 per quello – EaterOfCode
Come restituire come era prima delle modifiche? – gstackoverflow
Oltre a scrivere le brave persone su Google e chiedendo loro di creare versioni in scala di grigi di tutti i riquadri dell'immagine e un parametro API facoltativo, no.
Hanno fatto questo :) – micmcg
IE ha la direttiva filter: gray
.
Rappresenta qualsiasi elemento HTML in scala di grigi. JSFiddle here.
È in grado di applicare questo al DIV principale della mappa. può girare la mappa che contiene in una represtenation di gradazione di grigio. Non posso dire se questo funzionerà senza effetti collaterali - dovresti provare. Ma è ben possibile.
IE soltanto, però, ma supportato dalla versione 4.
Oltre a questo, penso che ci sia un API di Flash per Maps, non c'è? Potrebbe essere più facile da raggiungere lì.
Avere il la mappa in scala di grigi per IE non sarebbe particolarmente utile visto che il resto dell'applicazione viene codificato usando HTML5 e Canvas - grazie per la risposta! – DLiKS
@DliKS sì. Non penso che ci sia un modo cross-browser per fare ciò, la roba 'filter' mai vista in altri browser. Purtroppo! ... Potrebbe essere possibile in Flash, non lo so. –
Basta usare CSS3 grayscale() effetto filtro per le mappe di Google elemento iframe! Funziona perché il codice js stampa le immagini.
iframe {
-webkit-filter: grayscale(100%);
-moz-filter: grayscale(100%);
-ms-filter: grayscale(100%);
-o-filter: grayscale(100%);
filter: grayscale(100%);
filter: url(grayscale.svg); /* Firefox 4+ */
filter: gray; /* IE 6-9 */
}
Prova anche a bersaglio solo le immagini di sfondo applicando questo per la prima div elemento sotto il div.gm-style
(o qualsiasi altro involucro). Non so se Google modifichi spesso la struttura dom ma al momento parlando (25 nov 2014) questo funziona correttamente.
iframe .gm-style > div:first-child {
// Same code here
}
questo mi ha salvato la giornata! – dinodsaurus
.. attenzione .. il marker della mappa colorata verrà visualizzato anche in scala di grigi. –
Finalmente quello che stavo cercando! Mi piace questo perché trasforma tutto in scala di grigi. Il problema con la soluzione js è che si perdono alcuni dei valori predefiniti nell'incorporazione della mappa. – adedoy
Sì, c'è un'API di terze parti per le mappe di Google che fornisce una scala di grigi (snazzymaps).
È molto semplice. È possibile utilizzare questo sito Web per ottenere la combinazione di colori diversa per google maps.
Dai un'occhiata a questo:
http://snazzymaps.com/style/15/subtle-grayscale
funziona come un fascino :)
C'è un modo più breve po '(confronto ad @Roatin Marth di best answer) per rendere la vostra mappa di Google scala di grigi con Google Maps JavaScript API v3 includendo direttamente gli stili generati con Google Maps API Styled Map Wizard nell'oggetto google.maps.MapOptions
:
var container = document.getElementById('map_canvas');
var mapOptions = {
zoom: 11,
center: new google.maps.LatLng(40.6743890, -73.9455),
styles: [{
stylers: [{
saturation: -100
}]
}]
};
var map = new google.maps.Map(container, mapOptions);
Si ottiene l'array impostato in styles
proprietà in mapOptions
variabile facendo clic sul pulsante su "Mostra JSON" dentro pannello Mappa di stile durante la finitura la personalizzazione di stili utilizzando Google Maps API Styled Map Wizard.
Soluzione molto migliore! – doitlikejustin
Soluzione molto più semplice e migliore. Dovrebbe essere accettata risposta. –
- 1. Jet colormap in scala di grigi
- 2. Visualizzazione di un'immagine in scala di grigi
- 3. Converti un'immagine in scala di grigi
- 4. 16 bit in scala di grigi png
- 5. Converti una QImage in scala di grigi
- 6. Determina se un'immagine è in scala di grigi in Matlab
- 7. Come rendere grata xyplot() in scala di grigi in R?
- 8. Come convertire un'immagine in scala di grigi in reagire nativo?
- 9. Converti binario in scala di grigi crudo in JPEG
- 10. convertire RGB in scala di grigi in C
- 11. Fai simboli emoji in scala di grigi in UILabel
- 12. Creare un vero PNG in scala di grigi in PHP
- 13. come implementare il rendering in scala di grigi in OpenGL?
- 14. Rimozione di valori anomali da un'immagine in scala di grigi
- 15. Google Maps API vs Google Maps Engine?
- 16. immagine colorata in scala di grigi usando elaborazione parallela CUDA
- 17. Android: Convertire un'immagine a colori in scala di grigi
- 18. Leggi immagine in scala di grigi opencv 3.0.0-dev
- 19. Android jpeg pictureCallback in scala di grigi Opencv Mat
- 20. convertire jpg in scala di grigi csv utilizzando R
- 21. Rilevamento delle immagini in scala di grigi con .Net
- 22. UIView in scala di grigi. Visualizzazione non essere ridisegnato
- 23. Google maps in risposta
- 24. Algoritmo di Google Maps
- 25. Immagine di Google Maps?
- 26. Imposta i limiti di Google Maps con angular-google-maps
- 27. API di Google Maps directionsService.route diverso da Google Maps Indicazioni
- 28. In attesa di geocoder di google maps?
- 29. Android Google Maps in Fragment
- 30. Visualizzare l'immagine come scala di grigi usando Matplotlib
Ne dubito. Potrebbe essere possibile in IE sovrapponendo la mappa con un DIV che utilizza una delle proprietà CSS 'filter' di DirectX per creare qualcosa sotto la scala di grigi, ma sovrapporrebbe anche i controlli. Interessato a vedere se qualcosa viene fuori –
correlati: http://gis.stackexchange.com/questions/5964/how-to-apply-custom-google-map-style-in-openlayers – radek