作者fake01 (code)
看板Ajax
标题[问题]google api 多点距离
时间Thu Jan 24 14:17:00 2013
小弟最近在用google api 计算两点距离
可是想要把好几个点距离全部加总起来,但因为对javascript很不熟
以下是网路找的范例,测试过是可以run,但是只有两点距离.
想要用阵列把经纬度放入,然後多跑几次回圈,跑出每个点之间距离
然後加总 但是却try不出来 请问有大大可以解惑吗?
var directionsService = new google.maps.DirectionsService();
var km=0; // 总公里数
var lat1 = new Array(2);
var lat2 = new Array(2);
lat1[0] = "24.989578"; //假设变数
lat1[1] ="121.313564"; //假设变数
var a= parseFloat("24.989578", 10);
var b= parseFloat("121.313564", 10);
// DirectionsRequest
var request = {
// 起点
origin: new google.maps.LatLng(a,b), // <----- 阵列放入的话
// 终点
destination: new google.maps.LatLng(
24.954118,121.225823), // <----- 阵列放入的话
waypoints: [],
// 路线最佳化
optimizeWaypoints: true,
// 交通模式,目前有 开车/步行
travelMode:google.maps.TravelMode.DRIVING
};
directionsService.route(request,
function(response, status) {
if (status == google.maps.DirectionsStatus.OK)
{
var route = response.routes[0];
// 取得距离
// console.log(route.legs[0].distance.text);
// 取得从起点至终点的大约时间
// console.log(route.legs[0].duration.text);
document.getElementById('msg').innerHTML =
route.legs[0].distance.text + ', ' + route.legs[0].duration.text ;
/// route.legs[0].distance.text 加总 km+=route.legs[0].distance;
}
});
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.138.152.14
1F:→ fake01:差不多解决,目前的问题是waypoints: [{location: "Taipei"} 01/24 16:19
2F:→ fake01:,{location: "Taichung"}] 如何把里面的值改成 经纬度? 01/24 16:20
3F:→ fake01:以解决 {location: "24.306636,120.930176"} 01/24 16:21