Vraag : Een andere het boring Lat/lang aan vraag X/Y met bonus!

ZZzzzzz. Droevig, daar sliep ik in.

So, snooping ik rond EE en een partij over de omzetting van geocode in Cartesiaans gelezen. Ik ben nog een weinig verward in het algemeen behandel en vereis aan verduidelijking alvorens ik neer wat hard-earned contant geld voor een map.

Dig dit plof, ben ik van plan om een kaart te kopen. Het is een projectie Mercator van de Verenigde Staten. Van de kaartmaker, zal ik lat en de lengte van de kaartenhoeken krijgen. Ook, vond het weten dat de de breedte en hoogte van het beeld, ik lat/in x, y.

I zou moeten kunnen lang vrij omzetten een aardige kleine die formule in Actionscript wordt geschreven, maar ik ben niet savvy om te verifiëren als het of niet genoeg correct is. Van de beschrijving het als het klinkt is, maar ik ben te sceptisch om te geloven alles ik vind op Internet nauwkeurige 100% is. :)

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

Is deze formule correct voor een projectie Mercator?

Also, wat die oude TV terug commercieel in de jaren '80 was waar u voor één of ander soort vrije brochure kon afschrijven en aan het eind zij altijd zeiden, „schrijft enkel het Pueblo, Colorado.“

" codeBody "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
//MAP
var xwidth: Aantal = 2860;
var yheight: Aantal = 1900;
 
//MAP COÖRDINATEN
var longN: Aantal = 76.7;  //Y1: 0
var latW: Aantal = 74.0;   //X1: 0
var longS: Aantal = 40.3;  //map helght Y2
var laat: Aantal = -44.6;  //map breedte X2
 
//CONVERT KAART LANG, LAT AAN X, DE COÖRDINATEN VAN Y
var x: Aantal;
var y: Aantal;
x = xwidth/(recent-latW-laat);
y = yheight/(longN-longS);
spoor („kaart x: “ + x);
spoor („kaart y: “ + y);

Antwoord : Een andere het boring Lat/lang aan vraag X/Y met bonus!

Nr, dat de formule niet correct is. Ik denk de bedoeling van die formule een lineaire interpolatie moet uitvoeren, en als dat het geval is, het volgende dichter is aan wat u… wilt

mapWidth = 2860;
mapHeight = 1900;

mapLongW = -125; // Verlaten van kaart verbindend is 125degW
mapLongE = -65;    // het Recht verbindend van kaart is 65degW
mapLatN = 50;        // de Bovenkant verbindend van kaart is 50degN
mapLatS = 25;        // de Bodem verbindend van kaart is 25degN

locationLat = 30.52; // Breedte aandachtspunt
locationLong = -87.85; // Lengte van aandachtspunt

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


NOCHTANS, is dit geen nauwkeurige methode om lat/in x/y. lang om te zetten. Dit voert LINEAIRE interpolatie uit, die voor de xwaarde fijn is aangezien de horizontale schaal lineair is maar de verticale schaal is niet lineair, zodat zult u de juiste waarden bij de bovenkant en de bodem van de kaart krijgen, maar dicht bij het midden groter de fout die u zult krijgen.

De fout kan voor u klein zijn niet om over genoeg betrokken te zijn, maar als u bent wordt de wiskunde vrij een beetje ingewikkelder. Heb u bij de vergelijkingen op deze pagina….

http://en.wikipedia.org/wiki/Mercator_projection
Andere oplossingen  
 
programming4us programming4us