从传单路由机获取航点

时间:2015-08-18 11:31:59

标签: javascript leaflet gis

我正在尝试从路线(传单路由机器)获取航路点作为纬度和经度,以便我可以将它们写入数据库。但是,当我调用getwaypoints时,我还会获得有关我所需路线的其他数据。

我如何得到作为JSON的lat / long所以我可以把它写到db?

    var map = L.map('map').setView([-27.54, 152.9], 10);
    L.tileLayer('http://{s}.basemaps.cartocdn.com/light_all//{z}/{x}/{y}.png', {
    attribution: '&copy; <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> &copy; <a href="http://cartodb.com/attributions">CartoDB</a>',
    maxZoom: 19
}).addTo(map);

var routeControl = L.Routing.control({waypoints: [
    L.latLng(-27.38851, 153.11606),
    L.latLng(-27.47577, 153.01693)
  ]}).addTo(map);

  var routeArray = new Array();
  routeArray = routeControl.getWaypoints();

  alert (JSON.stringify(routeArray));

输出

[{"options":{"allowUTurn":false},"latLng":{"lat":-27.38851,"lng":153.11606},"_initHooksCalled":true},{"options":{"allowUTurn":false},"latLng":{"lat":-27.47577,"lng":153.01693},"_initHooksCalled":true}]

请参阅示例小提琴:http://jsfiddle.net/drcccx91/8/

1 个答案:

答案 0 :(得分:0)

解决方案是不转换为JSON

alert (routeArray[0].latLng.lng);