我正在尝试创建一个潜在房屋地址的快速列表,并显示到达目的地的距离和时间,例如工作或运动。
我为此抓取了一个脚本,它可以正常工作,但我的直觉是它不包含交通数据。
我已包括到达目的地的时间,无论我将到达目的地的时间是午夜还是高峰时间都将保持不变。
function GOOGLEMAPS(start_address,end_address,return_type,arrive_time) {
var mapObj = Maps.newDirectionFinder();
mapObj.setOrigin(start_address);
mapObj.setDestination(end_address);
mapObj.setArrive(arrive_time);
var directions = mapObj.getDirections();
var getTheLeg = directions["routes"][0]["legs"][0];
var meters = getTheLeg["distance"]["value"];
switch(return_type){
case "miles":
return meters * 0.000621371;
break;
case "minutes":
// get duration in seconds
var duration = getTheLeg["duration"]["value"];
//convert to minutes and return
return duration / 60;
break;
case "hours":
// get duration in seconds
var duration = getTheLeg["duration"]["value"];
//convert to hours and return
return duration / 60 / 60;
break;
case "kilometers":
return meters / 1000;
break;
default:
return "Error: Wrong Unit Type";
}
}
例如: 预期的结果是午夜旅行需要10分钟,高峰时段需要20分钟 实际结果显示两次旅行都需要10分钟
答案 0 :(得分:0)
我认为除了duration_in_traffic
之外,您还希望每条腿都获得duration
。
根据Google Maps路线文档,您似乎需要指定出行方式为driving
,并且需要包含departure_time
-大概使用.setMode()
和{ {1}}。
https://developers.google.com/maps/documentation/directions/intro#DirectionsAdvanced