Cuestión : ¡Otro lat aburrido/de largo a la pregunta de X/Y con prima!

ZZzzzzz. Apesadumbrado, cabeceé apagado allí. el

So, snooping alrededor de EE y he leído mucho sobre la conversión del geocode a cartesiano. Sigo siendo un poco en general reparto borroso y necesito la clarificación antes de que plop algo de efectivo laborioso abajo para un map.

Dig esto, yo estoy planeando comprar un mapa. Es una proyección de Mercator de los Estados Unidos. Del fabricante de mapa, conseguiré el lat y la longitud de las esquinas de los mapas. También, sabiendo que la anchura y la altura de la imagen, yo deben poder convertir libremente el lat/de largo a x, y.

I encontró una pequeña fórmula agradable escrita en Actionscript, pero no soy bastante listo verificar si está correcto o no. De la descripción que suena como él es, pero soy demasiado escéptico creer que todo encuentro en el Internet es el 100% exacto. :)¿href= " http://www.experts-exchange.com/Software/Photos_Graphics/Web_Graphics/Macromedia_Flash/Q_23284979.html?sfQueryTermInfo=1+lat+long+x+y " del

ware/Photos_Graphics/Web_Graphics/Macromedia_Flash/Q_23284979.html del e.com/Soft de http://www.experts-exchang? ¿sfQueryTermInfo=1+lat+long+x+y

Is esta fórmula correcta para una proyección de Mercator? el

Also, cuál era esa vieja parte posterior del anuncio de televisión en los años 80 donde usted podría amortizar para una cierta clase de folleto libre y en el extremo dijeron siempre, “apenas escribe el pueblo , Colorado.”

class= > " claro " del
> del " codeSnippet " del class= del
class= " lineNumbers " del
class= del
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
TAMAÑO notpretty de >//MAP " del class= " de " codeSnippet763816 del id= del
           
class= del

Respuesta : ¡Otro lat aburrido/de largo a la pregunta de X/Y con prima!

No, esa fórmula no está correcta. Pienso que el intento de esa fórmula es realizar una interpolación linear, y si ése es el caso, lo que sigue está más cercano a lo que usted quiere…

mapWidth = 2860;
mapHeight = 1900;

mapLongW = -125; // dejó el límite del mapa es 125degW
mapLongE = -65;    El límite de la derecha de // del mapa es 65degW
mapLatN = 50;        El límite de la tapa de // del mapa es 50degN
mapLatS = 25;        El límite de la parte inferior de // del mapa es 25degN

locationLat = 30.52; Latitud de // del punto del interés
locationLong = -87.85; Longitud de // del punto del interés

x = (locationLong - mapLongW) * mapWidth/(mapLongE - mapLongW);
y = (locationLat - mapLatN) * mapHeight/(mapLatS - mapLatN);


SIN EMBARGO, éste no es un método exacto de convertir el lat/de largo a x/y. Esto está realizando la interpolación LINEAR, que está muy bien para el valor de x pues la escala horizontal es linear pero la escala vertical no es linear, así que usted conseguirá los valores correctos en la tapa y la parte inferior del mapa, pero cerca del centro más grande es el error que usted conseguirá.

El error puede ser bastante pequeño para que usted no sea tratado alrededor, pero si usted es la matemáticas consigue absolutamente un poco más complicado. Tenerle en las ecuaciones en esta página….

http://en.wikipedia.org/wiki/Mercator_projection
Otras soluciones  
 
programming4us programming4us