我的用例很常见,但不知何故找不到合适的解决方案。我一直记录移动车辆的坐标,然后显示预定路线以及行驶路径。预定义的路线和行驶路径应以不同的颜色显示。为了显示预定义的路径,我使用DirectionsService.route。对于走过的路,我尝试了不同的方法,但没有一个完美地工作。
在行进路径中记录的所有坐标之间绘制折线。但是如果转弯落在2个记录的坐标之间,则该线直接连接忽略转弯的点。
var line = new google.maps.Polyline({
path: arr_all_coordinates, strokeColor: "red", strokeOpacity: 1, strokeWeight: 1
});
使用新的DirectionsRenderer对象在2个连续坐标之间形成路径,并使用DirectionsService.route显示,直到最后一个坐标。在这种情况下,地图会继续跳到最后2个坐标,并将焦点放在最后绘制的路线上。我尝试将preserveViewport设置为true但没有工作。
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsRenderer.setDirections(response);
}
请提出任何建议。