7

以下のコードを使用して、2 点間のルートを取得しています。

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

正常に動作していますが、ルートを描画するときに地図の位置とズーム レベルを変更したくありません。そのため、異なる緯度と経度の値を指定して上記のコードを呼び出す場合、マップの位置とズーム レベルを維持したいと考えています。何か案が?

4

2 に答える 2

16

DirectionsRendererapi-docを作成するときに、コンストラクター関数にDirectionsRendererOptionsapi-docオブジェクトを渡すDirectionsRenderer.setOptionsか、作成後にオプションを変更する場合はメソッドを呼び出すことができます。

preserveViewportオブジェクトのプロパティを使用してDirectionsRendererOptions、レンダラーがマップと対話する方法を制御できます。に設定preserveViewportするtrueと、マップ表示は変更されません。

directionsService.route(request, function(response, status) {
    if (status == google.maps.DirectionsStatus.OK) {
        directionsDisplay.setOptions({ preserveViewport: true });
        directionsDisplay.setDirections(response);
    }
}
于 2012-05-28T13:23:49.597 に答える