ルーティイングマトリックス
ルーティングマトリックスは行と列に配列された長方形の配列です。行は出発地に対応し、列は目的地に対応します。
マトリックスのエントリは、要求された内容に応じて、移動時間 (秒) または距離 (メートル) を表す整数です。
マトリックスの最初の次元は常に行の数_N_です。2次元目は列の数_M_です。このようなマトリックスは_M_x_N_行列と呼ばれ、次のような一般的な形を持ちます。
| 出発地\目的地 | 0 | 1 | … | M - 1 |
|---|---|---|---|---|
| 0 | 値0→0 | 値0→1 | … | 値0→M - 1 |
| 1 | 値1→0 | 値1→1 | … | 値1→M - 1 |
| … | … | … | … | … |
| N - 1 | 値N - 1→0 | 値N - 1→1 | … | 値N - 1→M - 1 |
出発地と目的地の数が等しい場合、対応するマトリックスは正方形です。定義により、対角線上の各エントリでは出発地と目的地が一致します。
ただし、マトリックスは対称的ではありません。つまり、最短ルートの戻りルートはほとんどの場合異なるため、出発地_o_から目的地_d_へのエントリは、出発地_d_から目的地_o_へのエントリと同じではありません。
レスポンス内の表現
APIレスポンスは、ルーティングマトリックスを1次元の配列として表します。位置_k_の各エントリは、次の式で行_i_および列_j_のマトリックスのエントリに対応しています。k = M · i + j.
つまり、最初の_M_エントリは最初の行、次の_M_エントリは2番目の行、などです。
エラーのマトリックス
出発地と目的地の間のルートを計算できない場合があります。この問題は、目的地が出発地から到達できないか、または出発地または目的地のいずれかがマップに一致しなかったために発生する可能性があります。この場合、このようなエラーが少なくとも1つ発生すると、サービスは、マトリックスの各エントリにエラーコードが含まれた整数のマトリックスをレスポンスに追加します。
コード0はエラーなしを示しています。コード3は、ルートが計算されたものの、いくつかの違反があることを意味します。たとえば、フェリーの回避が要求されたときにフェリーを使用したり、希望する運転時間に通行止めになっている道路を通過したりします。
その他に起こりうる値については、「APIリファレンス」を参照してください。
13 日前の更新