探索結果から前の時刻、次の時刻の探索結果を取得する
経路探索結果を利用して、前の時間の最適なダイヤ、次の時間の最適なダイヤを再探索します。
関連URL
- 経路探索 /search/course/extreme
- 経路簡易探索 /search/course
- 経路の再現/定期券・指定列車利用 /course/edit
手順
1. 経路を探索する
ダイヤによる探索を行います。
例は経路探索 /search/course/extreme
ですが、ダイヤによる探索を行うことができるAPI(経路簡易探索)でも可能です。
※リクエスト例では日本語で記述しておりますが、リクエストパラメータに日本語が含まれる場合には、日本語の部分をUTF8でURLエンコード(パーセントエンコード)してください。
GET /v1/xml/search/course/extreme?key=アクセスキーを入力してください&viaList=高円寺:阿佐ヶ谷
<ResultSet apiVersion="1.26.0.0" engineVersion="201512_04a">
<Course searchType="departure" dataType="onTimetable">
:
<DepartureState no="3">
<Type>normal</Type>
<Datetime operation="today">2015-12-18T09:32:00+09:00</Datetime>
</DepartureState>
:
<SerializeData>経路シリアライズデータ</SerializeData>
:
2. 探索結果を操作する
探索結果から前の時刻を取得する
探索結果から、前に出発する最適なダイヤの経路を取得します。
assignInstructionパラメータにAutoPreviousを指定することによって、元の経路の到着時刻と比べ、次に早く到着できる経路の中から、最も遅く出発できる経路が取得できます。
1で取得できる経路シリアライズデータを利用します。
GET /v1/xml/course/edit?key=アクセスキーを入力してください&assignInstruction=AutoPrevious&serializeData=1で取得できる経路シリアライズデータを入れてください
<ResultSet apiVersion="1.26.0.0" engineVersion="201512_04a">
<Course searchType="departure" dataType="onTimetable">
:
<DepartureState no="3">
<Type>normal</Type>
<Datetime operation="today">2015-12-18T09:30:00+09:00</Datetime>
</DepartureState>
:
探索結果から後の時刻を取得する
探索結果から、次に出発する最適なダイヤの経路を取得します。
assignInstructionパラメータにAutoNextを指定することによって、元の経路の出発時刻と比べ、次に遅く出発できる経路の中から、最も早く到着できる経路が取得できます。
1で取得できる経路シリアライズデータを利用します。
GET /v1/xml/course/edit?key=アクセスキーを入力してください&assignInstruction=AutoNext&serializeData=1で取得できる経路シリアライズデータを入れてください
<ResultSet apiVersion="1.26.0.0" engineVersion="201512_04a">
<Course searchType="departure" dataType="onTimetable">
:
<DepartureState no="3">
<Type>normal</Type>
<Datetime operation="today">2015-12-18T09:34:00+09:00</Datetime>
</DepartureState>
: