我在提取谷歌地球坐标时遇到问题,因为我需要它在 latlng 而不是 GPoint 中,并且需要暴露给我的谷歌地图应用程序,我知道我可以使用这些点在 gmap 中显示我的数据,但仍然需要转换为 latlng,我的 nodejs 脚本
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);
});
});
此时我能够提取我想要的所有数据(我刚刚从 KML 中删除了所有不必要的标签)。但我需要将其规范化为 latlng,因为我的其他数据库文档(noSQL)都在 latlng 中。