有谁知道如何在 API V3 中执行此操作,或者在哪里可以找到有关此选项的信息
请帮帮我
有谁知道如何在 API V3 中执行此操作,或者在哪里可以找到有关此选项的信息
请帮帮我
geocodezip 的 Larry 重新处理了许多经济名称示例。
在知道这篇文章之前,我想出了一个解决方案。我认为它简短而简洁,所以我希望它对将来看到这一点的任何人有所帮助。
第 1 步:将响应参数传递directionsService.route()
给我调用它的函数 driveSim(response)
:
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
driveSim(response);
};
});
第 2 步:创建初始位置等于响应初始位置的标记,然后遍历path
对象数组中的所有值,仅此而已。它只是以与任何特定速度无关的固定速度对其进行动画处理。如果您希望这样做,只需使用console.log(path);
探索var path
对象中的所有数据,您会发现很容易计算出给定速度所需的延迟。
function driveSim (response){
var path = response.routes[0].overview_path;
var maxIter=path.length;
taxiCab=new google.maps.Marker({
position: path[0],
map: map,
});
var delay = 20, count = 0;
function delayed () {
count += 1;
taxiCab.setPosition({lat:path[count].lat(),lng:path[count].lng()});
if (count < maxIter-1) {
setTimeout(delayed, delay);
}
}
delayed();
}
而且,就是这样。