Stamen Designs ha creado una hermosa aplicación de seguimiento de huracanes que utiliza un modo "oscuro" del fondo de Bing Maps.
Esto es perfecto para dirigir la atención de las personas a la superposición en lugar de al fondo.
¿Es posible acceder a esta versión "oscura" de Bing Maps dentro de la API JS de ArcGIS Server?
arcgis-javascript-api
bing-maps
stamen
Stephen Lead
fuente
fuente
Respuestas:
No conozco los entresijos de la API ArcGIS JS, pero puedo decirle que el mapa de huracanes de MSNBC utiliza ColorMatrixFilter y ColorTransform de Flash para invertir y desaturar los mosaicos de Bing sobre la marcha.
Estoy bastante seguro de que eso no es posible con JS en una forma de navegador cruzado. Es posible que tenga cierto éxito si los mosaicos de Bing se sirven con permisos de dominio cruzado (CORS) y si la API de ArcGIS le permite renderizar mosaicos utilizando el elemento de lienzo HTML. O tal vez podría proxy los mosaicos y modificarlos en el lado del servidor, pero tendría que verificar los términos de Bing antes de hacerlo, por supuesto.
fuente
Invertir y desaturar imágenes es ciertamente posible en JS. Echa un vistazo a la biblioteca de Pixastic .
Y el código específico: Invertir y desaturar
El truco consistirá en interceptar las imágenes de Bing Map en JS y aplicarles los dos efectos. Ciertamente posible, pero no fácil de lograr. Todas las imágenes que le interesan están en un div con id de map_layerX, donde X es la ID de capa (en el caso de un mapa simple con solo la capa de mapas de Bing, será map_layer0). Eso supone que la identificación de su div de mapa es "mapa". Firebug será tu amigo.
fuente
Aquí hay una aplicación JS API que se mostró en la Conferencia de usuarios de Esri de este año que muestra una funcionalidad similar: http://na.arcgis.com/UCdemo/traffic.html
No estoy seguro de cómo o si funciona en IE.
Los mosaicos del mapa base se cargan desde el mapa base de ArcGIS Online Streets y luego se convierten en escala de grises. Esta es también la aplicación que utiliza Canvas referenciada en la diapositiva 7 de la presentación a la que Mike L se vinculó.
fuente
(function(){ dojo.declare("GreyScaleVELayer", esri.virtualearth.VETiledLayer, { _tileLoadHandler: function(evt) { evt.currentTarget.style.filter = "gray invert"; this.inherited(arguments); } }); })();
De hecho, he visto un ejemplo de Esri de ellos haciendo esto en una de las sesiones técnicas durante la UC. Desafortunadamente, era solo una imagen en una diapositiva, así que no puedo señalar ningún código fuente. Siga el enlace a continuación y eche un vistazo a la diapositiva 7. Parece que están utilizando el lienzo HTML5 para cambiar el tono de las imágenes.
http://proceedings.esri.com/library/userconf/proc11/uc/tw-ppts/tw_1463.ppt
Espero que esto te ayude en la dirección correcta.
fuente
En los años transcurridos desde que publiqué esta pregunta, Esri ha lanzado su propia versión del mapa base gris oscuro que puede agregar fácilmente a cualquier mapa API ArcGIS JS.
fuente