2011-02-13 34 views
11

Administro el desarrollo de un software académico de mapeo web para crear colecciones de datos geográficos. Es una interfaz bastante simple para crear mapas históricos. El proyecto se basa en Google Maps v.2, y debido a que v.2 va a suspenderse en 2013, pensamos que podríamos morder la bala antes y actualizar a v.3.Actualiza a Google Maps versión 3 o ve a OpenLayers?

Resulta que es un gran trabajo que requiere un replanteamiento completo de cómo funciona la parte del mapa de nuestra aplicación. Tenemos que volver a escribir todos nuestros controles personalizados de Gmap, reestructurar varias partes de la aplicación, y algunos otros grandes cambios, por ejemplo, v.3 no se integra con Google Earth y v.2, y usamos Google Earth mucho. Debido a esto, y debido a que estamos empezando a usar más características que Gmap no admite de forma nativa (como los mapas WMS), me he estado preguntando si valdría la pena cambiar de Gmap a OpenLayers. Por lo que entiendo, OpenLayers tiene todas las características de Google Maps, tiene soporte nativo para WMS y admite muchos más formatos de datos, nos permite usar todas las imágenes de Google de todos modos, y trabaja con KML.

Mi pregunta a la comunidad es para las personas que conocen OpenLayers y mapas de Google: ¿Me puede dar una idea de cómo la carga de trabajo para actualizar desde la versión 2 a la versión 3 Gmap se compara con un puerto completo desde la versión 2 Gmap a OpenLayers? ¿Y qué otras desventajas debemos tener en cuenta?

Una de nuestras mayores preocupaciones: usamos Google Earth mucho. Si fuéramos a OpenLayers, tendríamos que sincronizar Earth y OpenLayers nosotros mismos, pero parece que eso es lo que tendríamos que hacer también en Gmap v.3. Según lo que he leído, OpenLayers no tiene soporte nativo para Google Earth ni ningún tipo de geonavegador 3D, pero hay algunos proyectos (como el this) que tratan de cerrar la brecha. ¿Cuánto dolor de cabeza sería esto?

+0

FYI: a partir de septiembre de 2011, Google Maps ya no es compatible con OpenLayers ([consulte esta confirmación] (https://github.com/openlayers/openlayers/commit/663392b10e39fdfa254c3fd356791abfdbbbc24c)). ToS de Google simplemente no se pudo cumplir. – Oliver

Respuesta

4

¡Pregunta muy interesante!

Actualizar a la versión más nueva de Google Maps debería consumir menos tiempo porque ya tiene código de trabajo y, aunque realice cambios importantes, podrá reutilizar algunas partes de la base de código. Esa es solo mi suposición, porque es difícil ser más preciso sin ver el código :)

Todavía debería echar un vistazo a OpenLayers. Usted mencionó que ya necesita soporte de WMS y probablemente existan más funciones que OpenLayers admite y Google Maps no. OpenLayers admite una amplia variedad de fuentes de datos, está abierto y sigue los estándares OGC. Tiene soporte para Google Maps, y si algún día decides cambiar a Bing, Yahoo o tus propios mapas, solo necesitarás hacer cambios menores en tu código.

+0

¡Gracias! Creo que tienes razón. Echamos un vistazo a OpenLayers e incluso volvimos a implementar parte del código en OpenLayers como un experimento, pero decidimos que Google Maps tenía suficientes características que necesitaríamos y que sería más fácil seguir con Google. Realmente me gustan los OpenLayers, y si comenzara de nuevo, probablemente lo usaría, pero es más fácil para nuestro proyecto quedarse con lo que tenemos. –

2

Yo estaba en la misma situación. Eché un vistazo a las capas abiertas y comencé a implementar algunas de las funciones en Openlayers. Pude reemplazar SOOOOO código de API de Google Maps con solo unas líneas en Openlayers. Así que continué, en poco tiempo me había re-desarrollado en openlayers y reduje el javascript requerido para hacerlo en más de la mitad. ¡También puedo hacer mucho más! exportar, importar de todo tipo de formatos ahora es solo líneas de código en lugar de líneas de manual. OpenLayers todo el camino!