位置参照
位置参照は位置を記述します。 位置は、地球表面の特定の点、曲線、または 2 次元の形状にすることができます。 場所が用途で使用される場合、道路、建物、山、水域などの特定の人為的または地理的な特徴を指します。
Traffic API v7 では、位置参照は道路を記述する場所に重点を置いています。
サポートされている 3 つの位置の参照タイプは次のとおりです。
- TMC (Traffic Message Channel)
- OLR ( OpenLR Location Referencing)
- Shape Points
Length
すべての位置の参照タイプについて、フィールド length
のオブジェクトLocation
に位置の参照の合計長が提供されます。
"length": 659.0
TMC
Traffic Message Channel( TMC )の位置参照方式では、事前にコード化された位置の表が使用されます。 詳細について は、 ISO 14819-2 : 2013 および ISO 14819-3 : 2013 の仕様を参照してください。
ここでは、ロケーション ライブラリが TMC 位置情報の参照をデコードできます。 詳細について は、ロケーション ライブラリ のドキュメント「 TMC リファレンスの操作」を参照してください。
フィールドtmc
には、 TMC 情報が提供されています。
"tmc": {
"extendedCountryCode": "E0",
"ebuCountryCode": "D",
"tableId": "1",
"locationId": "10429",
"queuingDirection": "-",
"extent": 1,
"primaryOffset": 0.0,
"affectedLength": 634.0
}
注
TMC ネットワークはすべての道路をカバーするわけではありません。 TMC 位置参照のみがリクエストされた場合、 その位置をTMC で表す方法がないため、一部の結果が除外されることがあります。
OLR
OpenLR Location Referencing (OLR) メソッドは、マップに依存しない位置参照を生成するためのルールを定義します。つまり、実際の位置参照は動的に生成され、事前定義された位置参照を使用する必要はありません。
OLR は、 TMC が参照するように制限されたセットだけでなく、あらゆる道路を参照できます。 詳細について は、 ISO/TS 21219-22 : 2017 の仕様を参照してください。
OLR は、上記の仕様に記載されているバイナリ形式です。 OLR データは、応答内で Base64 文字列でエンコードされます。 Base64 エンコーディングの詳細について は、 RFC 4648 を参照してください。
ここでは、ロケーション ライブラリが OLR 位置参照をデコードできます。 詳細について は、ロケーション ライブラリ のドキュメント Working with OLR を参照してください。
OLR 文字列が 次のフィールドolr
に入力されます。
"olr": "CCoBEAAmJQm+WSVVfAAJBQQCAxoACgUEAogZAAHtA2UACQUEAgOEADBigj0="
Shape Points
図形ポイントの位置の参照は、最も簡単な方法です。 参照されているマップの各リンクについて、シェイプは WGS84 座標およびリンクのLengthのリストで記述されます。
Shape Pointsが フィールドshape
に表示されます。
"shape": {
"links": [
{
"points": [
{
"lat": 52.501569986343384,
"lng": 13.702660035341978
},
{
"lat": 52.50179001130164,
"lng": 13.702860027551651
},
{
"lat": 52.501959996297956,
"lng": 13.703020038083196
}
],
"length": 50.0
},
{
"points": [
{
"lat": 52.501959996297956,
"lng": 13.703020038083196
},
{
"lat": 52.502879993990064,
"lng": 13.703829981386662
}
],
"length": 116.0
},
{
"points": [
{
"lat": 52.502879993990064,
"lng": 13.703829981386662
},
{
"lat": 52.50310001894832,
"lng": 13.704029973596334
},
{
"lat": 52.504169968888164,
"lng": 13.704979978501797
}
],
"length": 163.0
},
{
"points": [
{
"lat": 52.504169968888164,
"lng": 13.704979978501797
},
{
"lat": 52.504879999905825,
"lng": 13.70560996234417
},
{
"lat": 52.50540001317859,
"lng": 13.706069961190224
},
{
"lat": 52.505700001493096,
"lng": 13.70631999336183
},
{
"lat": 52.50596000812948,
"lng": 13.706470029428601
},
{
"lat": 52.50616000033915,
"lng": 13.706549992784858
},
{
"lat": 52.50644003972411,
"lng": 13.706600032746792
},
{
"lat": 52.50668001361191,
"lng": 13.706589974462986
},
{
"lat": 52.50691001303494,
"lng": 13.706559967249632
}
],
"length": 330.0
}
]
}