¿Cómo están sirviendo Google sus mapas con estilo?

14

Como todos sabemos, Google cambió el mapeo web cuando introdujeron Google Maps. Al momento de escribir esto, los mapas en mosaico son ahora la norma con el mapeo web.

Por ejemplo, con ArcGIS Server, almacena en caché la mayor cantidad posible de sus capas en los servicios de mapas en caché y, si es necesario, extrae cualquiera de sus capas operativas a través de servicios dinámicos o de entidades.

Una vez que tenga un servicio en caché, no hay forma de ajustar la cartografía sin tener que construir una nueva caché nuevamente.

La versión 3 del API de Google Maps que permite al estilo de la baldosa Google mapa base. El asistente de diseño le permite modificar casi todos los aspectos del Mapa de Google, para satisfacer sus necesidades.

Desde la perspectiva de la API, puedo entender cómo puede enviar su solicitud de estilo en un objeto JSON.

Lo que quiero saber es, ¿cómo están haciendo esto en la parte de atrás? (Sería bueno incluir una referencia)

Si miro el Asistente de estilo con Firebug y hago cambios a cualquier cosa, puedo ver que se realizan nuevas solicitudes GET para devolver las imágenes PNG al cliente.

ingrese la descripción de la imagen aquí

Hay casi infinitas variaciones que puede aplicar, por lo que no pueden tener todas las fichas precocidas y listas para servir. Por lo tanto, ¿puedo suponer que están creando estos mosaicos a pedido?

Simón
fuente
1
Supongo que todos los diferentes tipos de características y etiquetas son mosaicos PNG transparentes precocinados que se vuelven a colorear y se fusionan en la parte posterior para cada solicitud.
blah238
Buena teoría Si esto es cierto, entonces habría MUCHAS baldosas precocidas. Piensa cuántas fichas hay de todos modos, luego veces solo para mostrar el Mar en cada color HEX.
Simon
2
No, quise decir que se volverían a colorear sobre la marcha. Mucho más fácil volver a colorear una imagen existente que consultar geometría real y renderizar una nueva desde cero. Por supuesto, no tengo idea de cómo funciona realmente, como usted ha dicho, es sólo una teoría :)
blah238
1
Esa es una buena teoría blah238. Solo tendrían que cambiar la paleta en png en lugar de los datos ráster reales.
Matthew Snape

Respuestas:

9

En otras implementaciones (como en nuestra implementación ) esto se hace con modificación de paleta; puede volver a colorear rápidamente una imagen PNG sin tocar los datos reales, si conoce la paleta original completa.

Google no hace eso; probablemente tengan una base de datos basada en mosaicos y mosaicos de datos vectoriales que se rasterizan sobre la marcha.

tmcw
fuente
Gracias tmcw. Sin embargo, para una respuesta correcta, estoy buscando una con evidencia de apoyo. Bien podría ser que solo podamos teorizar cómo lo hacen.
Simon
2
Buena suerte para encontrar evidencia que respalde cualquier detalle no relacionado con la infraestructura de Google :). Dicho esto, lo que me lleva a esa conclusión (además de los susurros de Googlers) es la calidad anti-aliasing entre colores y la capacidad de eliminar características en varios niveles, combinados con los rápidos ciclos de renderizado.
tmcw
3

Sé que esto no es exactamente lo que estás buscando, pero pensé que podría ser útil de todos modos. ¿Has visto este ejemplo de Odoe que usa filtros CSS en los mapas? Podría estar limitado fuera del cromo

http://www.odoe.net/apps/mapstyler/

https://github.com/odoe/MapStyler

David Wilton
fuente
Sí, he estado jugando con eso para traer antenas Bing en escala de grises. Es un gran uso de CSS, pero los mosaicos aún aparecen en color y luego cambian a X después de que se han cargado. Puede ser un poco molesto. Q relacionada aquí, pero para gmaps API stackoverflow.com/questions/13564712/…
Simon
2

Hay dos patentes que encontré al hacer esa pregunta:

Representación dinámica de mapas en función de un parámetro de usuario US8103445

y

Representación de textura basada en la demanda en un sistema de representación basado en mosaico US20110254852

No pude encontrar ninguna información oficial sobre quién usa estos u otros esquemas similares, sin embargo, creo que los dibujos del segundo documento parecen bastante sencillos de implementar y no veo ninguna razón por la cual no debería haber implementado esto o algo aún más eficiente en mientras tanto.

mxfh
fuente
Patentes interesantes No estoy seguro de que manejen completamente el estilo, pero es una lectura interesante.
Devdatta Tengshe