GRouteクラスのオブジェクトを取得

広告

ルート案内では起点から中継点1までを1つのルート、中継点1から中継点2までを次のルート、そして中継点2から終点までを最後のルートといったように起点、終点も含む地点の合計から1を引いた数のルートが存在することになります。

ルートはGRouteクラスのオブジェクトとして取得できます。そしてGRouteクラスで用意されているメソッドを使用することで、各ルート毎の所要時間や距離などを調べることができます。

ではまず取得したルート案内に含まれるルートの数を取得します。GDirectionsクラスで用意されているgetNumRoutesメソッドを使用します。

結果で入手できる経路の数を返します。正常なクエリの場合、これは入力経由地
点の合計数から 1 を引いたものです。クエリが発行されなかったか、以前のク
エリに失敗したため結果を入手できない場合、このメソッドは 0 を返します。 

戻り値:
  Number

getNumRoutesメソッドはルートの数を数値で返します。失敗した場合には0が帰ります。

実際には次のように記述します。

var directions = new GDirections(map, document.getElementById("route"));

var routeNum = directions.getNumRoutes();

続いて各ルートを表すGRouteクラスのオブジェクトを取得します。GDirectionsクラスで用意されているgetRouteメソッドを使用します。

応答の i 番目の経路の GRoute オブジェクトを返します。

戻り値:
  GRoute

引数に取得したいルートを表すインデックスを指定します。結果としてGRouteクラスのオブジェクトを取得します。

実際には次のように記述します。

var directions = new GDirections(map, document.getElementById("route"));

var routeNum = directions.getNumRoutes();
for (var i = 0 ; i < routeNum ; i++){
  var route = directions.getRoute(i);
}

以上でルート毎にGRouteクラスのオブジェクトを取得することができました。では次のページ以降で取得したルートオブジェクトの使用方法を確認していきます。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)