2012-05-28 8 views
6

Tôi đang sử dụng mã dưới đây để có được con đường giữa hai điểm:Có cách nào để ghi đè giá trị thu phóng dịch vụ Chỉ đường của Google không?

directionsService.route(request, function(response, status) { 
    if (status == google.maps.DirectionsStatus.OK) { 
     directionsDisplay.setDirections(response); 
    } 
} 

Nó làm việc tốt, nhưng tôi không muốn thay đổi vị trí bản đồ của tôi và mức thu phóng khi vẽ đường. Vì vậy, khi tôi gọi mã ở trên với các giá trị vĩ độ và kinh độ khác nhau, tôi muốn vị trí bản đồ và mức thu phóng của mình được duy trì. Bất kỳ ý tưởng nào?

Trả lời

14

Khi bạn tạo các DirectionsRendererapi-doc, bạn có thể vượt qua một đối tượng DirectionsRendererOptionsapi-doc đến hàm constructor hoặc bạn có thể gọi phương thức DirectionsRenderer.setOptions nếu bạn muốn thay đổi các tùy chọn tại một thời gian sau khi tạo.

Bạn có thể sử dụng thuộc tính preserveViewport của đối tượng DirectionsRendererOptions để kiểm soát cách trình kết xuất sẽ tương tác với bản đồ. Thiết preserveViewport để true sẽ rời khỏi màn hình bản đồ không thay đổi:

directionsService.route(request, function(response, status) { 
    if (status == google.maps.DirectionsStatus.OK) { 
     directionsDisplay.setOptions({ preserveViewport: true }); 
     directionsDisplay.setDirections(response); 
    } 
} 
+0

wov .. cảm ơn rất nhiều Sean Mickey – Asraf

0

Điều này làm cho các lỗi dừng hiển thị, nhưng vẫn còn con đường không vẽ tốt, có vẻ như có một số dữ liệu bị mất:

directionsDisplay.setOptions({ preserveViewport: true }); 
directionsDisplay.setDirections(response);