2010-11-21 22 views
1

J'ai l'image de la vue de dessus de ma maison et sais lat longitude pour le pixel supérieur gauche i.e 0,0 maintenant comment obtenir des valeurs de longitude de latitude d'autres pixels?Latitude cartographie de longitude avec l'image de ma maison

Alors que googler je suis tombé sur ce qui suit:

function longToX(longitudeDegrees) 
    { 
    var longitude =degreesToRadians(longitudeDegrees); 
    return (radius * longitude); 
    } 

    function latToY(latitudeDegrees) 
    { 
    var latitude =degreesToRadians(latitudeDegrees); 
    var newy = radius/2.0 * 
      Math.log((1.0 + Math.sin(latitude))/
         (1.0 - Math.sin(latitude))); 
    return newy; 
    } 

function xToLong(xx) 
    { 
    var longRadians = xx/radius; 
    var longDegrees = radiansToDegrees(longRadians); 

    /* The user could have panned around the world a lot of times. 
    Lat long goes from -180 to 180. So every time a user gets 
    to 181 we want to subtract 360 degrees. Every time a user 
    gets to -181 we want to add 360 degrees. */ 

    var rotations = Math.floor((longDegrees + 180)/360) 
    var longitude = longDegrees - (rotations * 360) 
    return longitude; 
    } 

    function yToLat(yo) 
    { 
    var latitude = (Math.PI/2) - 
        (2 * Math.atan(
         Math.exp(-1.0 * yo/radius))); 
    return radiansToDegrees(latitude); 
    } 

rayon = 6371 km rayon de la terre .. mais si je passe obtenir 0,0 i 0,0 comment fixer la longitude latitude pour 0,0 et en dériver d'autres valeurs

+0

quelle bibliothèque utilisez-vous? –

Répondre

0

Vous devez connaître la distance entre les pixels. Pour convertir la distance en degrés, vous pouvez utiliser le fait qu'une latitude d'une minute nautique (1/60 de degré) est de 1 852 mètres ou d'environ 6076 pieds. La longitude est la même à l'équateur, mais vous devez multiplier par le cosinus de la latitude ailleurs.

un degré de latitude = 1852 mètres

Un degré de longitude = 1852 mètres * cos (latitude)

(Vous pourriez avoir besoin de multiplier les degrés de latitude par pi/180 pour les convertir en radians pour le cosinus fonction.)