0

Im ayant problème à extraire les coordonnées de Google Earth, parce que j'ai besoin d'être en latlng et pas GPoint, et besoin d'exposer à mon application Google Map, je suis conscient que je peux utiliser ces points pour montrer mes données dans GMAP, mais ont encore besoin de se convertir à latlng, mon nodejs manuscrit de sonPoint de latlng conversion à partir de Google Earth fichier KML

var fs = require('fs'), 
    xml2js = require('xml2js'); 

var parser = new xml2js.Parser(); 
fs.readFile(__dirname + '/doc.xml', function(err, data) { 
    parser.parseString(data, function (err, result) { 
     var data = []; 
     for (var i in result.data.Placemark) { 
      var row = result.data.Placemark[i]; 
      var point = row.Point[0].coordinates.toString().split(','); 
      row = { 
       name   : row.name[0] 
       , description : row.description[0] 
       , geolocation : [point[0], point[1]] 
      }; 
      data.push(row); 
     } 

     console.log(data); 
    }); 
}); 

A ce stade, Im capable d'extraire toutes les données que je veux (je viens supprimé toutes les balises inutiles le KML). Mais j'ai besoin de le normaliser pour latlng parce que mes autres documents de base de données (noSQL) sont tous en latlng.

Répondre

3

Inverser l'ordre du point [0] (longitude), point [1] (latitude).

Change:

geolocation : [point[0], point[1]] 

Pour:

geolocation : [point[1], point[0]] 
+0

Google n'a pas précisé [KML] (http://en.wikipedia.org/wiki/Keyhole_Markup_Language), il a été créé par Keyhole , Inc, qui a été acquise par Google en 2004. – geocodezip

Questions connexes