6 votos

Utilizando una imagen geo-referenciada como un recubrimiento para mostrar marcadores en plano

He creado una herramienta basada en la superposición de Google azulejera. Esto permite a nuestros usuarios a subir un plan de piso, ajustar la posición, etc. a través de Google maps. Nada de lujo.

Tenemos un servidor del lado del trabajo que crea la geo-referencia de la imagen utilizando gdal_translate. El trabajo, entonces rodajas de seguridad mediante gdal2tiles.py y, a continuación, guarda a s3.

Todo esto funciona muy bien. La idea es que se puede utilizar para corregir la posición de sus puntos de acceso inalámbricos, etc. El usuario puede hacer zoom dentro y fuera. De nuevo, todo está bien. Algo como esto:

enter image description here

El problema que tengo es que en realidad se necesita ver el plano de la planta en su formato original - en pantalla completa. No se giran como muestra la imagen.

Realmente no necesito el mapa en este punto - yo sólo la imagen con los marcadores en una superposición así como:

enter image description here

Yo, obviamente, la necesidad de rotar el mapa de modo que la planta está correctamente alineado horizontalmente.

Cómo puedo usar los datos de la geo-referenciados etc. de la imagen. para calcular la escala del mapa y la rotación necesito?

2voto

NoobDeveloper Puntos 101

Mi //TOTAL HACK respuesta es (solo probado en chrome, así que YMMV):

  • Calcular la rotación de cada uno de los almacenes de la planta pan y guardar en algún lugar se puede acceder a ella.
  • Llame mapa.panToBounds() para el plano del cuadro delimitador (que parece que ya lo han hecho).
  • Anexar un CSS3 transformación de rotación para su #map div igual a la rotación de la planta.
  • Bloqueo de la interfaz de usuario de modo que una gran cantidad de interacción no se rompe.
  • Solución de todas las cosas que van mal.

Rotación de soporte es casi completa entre los navegadores, pero el gmaps api de js no le gusta ser lanzado alrededor de eso. Algunas cosas parece que funcionan bien, y no completamente accidente por lo que es un plus. Todas las cosas en la pantalla gira bien, pero parece que la rotación de la div saltos de eventos de clic en los marcadores, así que si usted quiere que hagan mucho más que ver el zoom en los planos, usted tendrá que encontrar una solución para eso.

El único otro gran inconveniente que puedo pensar sería si, cuando georreferenciados, los planos aparecen sesgadas, entonces el usuario se busca en una vista de pantalla completa de una sesgada plano.

Boca es que a todos estar de lado del cliente, sin necesidad de servidor adicionales de procesamiento, almacenamiento y uso de la original, o haciendo algo raro con el pasar de coordenadas entre el original y gmaps.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X