问题描述
该计划的目标是使用latlng值数组,并使用Google Maps distance Matrix API计算总行驶时间。我面临的问题是它只能将点A的答案打印到点B。我希望能够将这些值以数组形式返回并求和以计算总旅行时间。
代码如下:
function privateCalculator(sets){
let len = sets.length;
let time = 0;
var s = [];
let result = 0;
let lng,lat
console.log('the set we got: ')
console.log(sets)
for (let k = 0; k < len; k++){
let aSet = sets[k];
console.log('set: ' + aSet);
let pointA = aSet.a;
let pointB = aSet.b;
let o = [{lat: pointA[k],lng: pointA[1]}];
let dt = [{lat: pointB[k],lng: pointB[1]}];
let origin1 = o ;
let destinationA = dt;
initMap(origin1,destinationA).done(function (response){
let origins = response.originAddresses;
// for (let i = 0; i < origins.length; i++) {
// let results = response.rows[i].elements;
// for (var j = 0; j < results.length; j++) {
// //console.log(results[j].distance.text);
// //document.getElementById('result').innerHTML += results[j].duration.value;
// time = results[j].duration.value;
// summaryPanel.innerHTML +=time;
// console.log(time)
// }
// }
console.log('response and value: ')
console.log('::: '+ JSON.stringify(response.rows))
console.log('looking at set: '+ k)
let results = response.rows[0].elements;
time = results[0].duration.value;
summaryPanel.innerHTML+= time;
s.push(time)
console.log(time);
}).fail(function (status){
document.getElementById('result').innerHTML = 'An error occured. Status: ' + status;
})//use of initMap
}
}
这是initmap函数:
function privateCalculator(sets){
let len = sets.length;
let time = 0;
var s = [];
let result = 0;
let lng,destinationA).done(function (response){
let origins = response.originAddresses;
// for (let i = 0; i < origins.length; i++) {
// let results = response.rows[i].elements;
// for (var j = 0; j < results.length; j++) {
// //console.log(results[j].distance.text);
// //document.getElementById('result').innerHTML += results[j].duration.value;
// time = results[j].duration.value;
// summaryPanel.innerHTML +=time;
// console.log(time)
// }
// }
console.log('response and value: ')
console.log('::: '+ JSON.stringify(response.rows))
console.log('looking at set: '+ k)
let results = response.rows[0].elements;
time = results[0].duration.value;
summaryPanel.innerHTML+= time;
s.push(time)
console.log(time);
}).fail(function (status){
document.getElementById('result').innerHTML = 'An error occured. Status: ' + status;
})//use of initMap
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)