Transformar un píxel a una coordenada de mapa

Para desplazar un mapa horizontalmente o realizar un acercamiento de este basándose en mosaicos de Map Tiling Service, el cliente debe contar con la capacidad de convertir un píxel en una ubicación en la tierra. Para hacerlo, el cliente debe crear una transformación afín que, cuando se da una coordenada en píxeles, devuelva una coordenada en la proyección de los mosaicos. Debe conocer la proyección de los mosaicos, los límites del mapa que se está trabajando con mosaicos, y las dimensiones de un mosaico. Con esta información, debe hacer lo siguiente:

  1. Calcular la cantidad máxima de mosaicos dispuestos horizontalmente que representa el mapa.
  2. Calcular la cantidad máxima de mosaicos dispuestos verticalmente que representa el mapa.
  3. Calcular la cantidad máxima de píxeles dispuestos horizontalmente que representa el mapa.
  4. Calcular la cantidad máxima de píxeles dispuestos verticalmente que representa el mapa.
  5. Crear una transformación afín con base en los límites del mapa y en los límites del mapa en términos de píxeles.
  6. Ingresar su ubicación en píxeles en la transformación afín. El resultado será una ubicación en la tierra en la proyección del mapa.

Para realizar estos pasos, y transformar un píxel en el sistema de coordenadas de su mapa, deberá:

  1. Calcular la cantidad máxima de mosaicos dispuestos horizontalmente en el mapa utilizando la siguiente ecuación: tilesAcross = 2level
  2. Calcular la cantidad máxima de mosaicos dispuestos verticalmente en el mapa utilizando la siguiente ecuación: tilesDown = 2level
  3. Calcular la cantidad máxima de píxeles dispuestos horizontalmente en el mapa utilizando la siguiente ecuación: pixelsAcross = tileWidth × tileAcross
  4. Calcular la cantidad máxima de píxeles dispuestos verticalmente en el mapa utilizando la siguiente ecuación: pixelsDown = tileHeight × tileDown
  5. Dados los límites del mapa en la proyección de este y los límites del mapa en términos de píxeles, puede construirse una transformación afín a partir de píxeles en coordenadas de mapa. La coordenada pasada debe estar en el espacio de píxeles del mapa. Puede que no sea suficiente ingresar directamente una coordenada de píxel desde una ubicación del mouse en la pantalla. Por ejemplo, es posible que deba convertir la ubicación del mouse en una ubicación en el espacio de píxel del mapa. Esto implica un seguimiento de la ubicación en espacio de píxeles de mapa de la esquina superior derecha del control de la imagen y el desplazamiento de la ubicación del cursor con respecto de esa ubicación.

El método getDescription proporciona toda la información necesaria para construir la transformación afín, como por ejemplo, tileWidth, tileHeight, y proyección y límites del mapa..<parmname>getDescription</parmname>getDescription Consulte getDescription.