回避

ルートを計算して、特定の地図機能やエリアを回避できます。

地図機能は、機能カテゴリを指定することで指定できます。 たとえば、トール道路を回避するルートは avoid[features]=tollRoad 、ルートを要求するときに指定することで計算できます。 環境ゾーンを回避するルートは、を指定することで計算でき avoid[zoneCategories]=environmentalます。

回避する機能の識別子を指定することで、マップの特定の機能を回避することもできます。 たとえば、ベルリンの Invalidenstrasse の一部である特定のセグメントを回避するルートを指定することで計算 avoid[segments]=here:cm:segment:207551710できます。 1 つの特定の環境ゾーン(「 Berlin Umweltzone 」)を回避するルートを指定することで計算 avoid[zoneIdentifiers]=here:cm:envzone:2できます。

エリア全体を避けるために、ユーザーが指定したバウンディング ボックスを提供できます。 たとえば、 Berlin エリアを回避するルートは、を指定することで計算でき avoid[areas]=bbox:13.082,52.416,13.628,52.626ます。

アクセス avoid[features]=ferry できない島などに指定した場合、この機能を回避するルートがないことがあります。 この場合、機能を最小限に抑えるルートを返すことができます。 ただし、違反によってのみルートが返される場合 avoid、そのルートが返される保証はありません。

avoid リクエストに違反するルートが返された場合、そのルートがこの機能を回避しないことを示す通知が含まれます。

指定した回避オプションを回避する例

このリクエストで avoid は、次のオプションを使用して tollRoad 機能を回避できました。

curl -X GET \
  'https://router.hereapi.com/v8/routes?destination=47.168076,11.861380&origin=47.257410,11.351458&transportMode=car&avoid[features]=tollRoad&apikey={YOUR_API_KEY}'
{
  "routes": [
    {
      "id": "428d7f71-f92b-484f-a4b5-d491b35f6210",
      "sections": [
        {
          "arrival": {
            "place": {
              "location": {
                "lat": 47.168049830943349,
                "lng": 11.861283313483
              },
              "type": "place"
            },
            "time": "2019-12-09T16:06:36+01:00"
          },
          "departure": {
            "place": {
              "location": {
                "lat": 47.25743193179369,
                "lng": 11.35145296342671
              },
              "type": "place"
            },
            "time": "2019-12-09T14:23:59+01:00"
          },
          "id": "ccba0c50-76f7-4d55-a8da-ce5c3ee629a9",
          "transport": {
            "mode": "car"
          },
          "type": "vehicle"
        }
      ]
    }
  ]
}

指定した回避オプションに違反する例

このリクエストは回避オプションに違反しています :

curl -X GET \
  'https://router.hereapi.com/v8/routes?destination=53.863531,14.284817&origin=53.859552,14.271760&transportMode=car&avoid[features]=ferry&apikey={YOUR_API_KEY}'

応答で notice は、コードを使用してが指定され violatedAvoidFerryます。

{
  "routes": [
    {
      "id": "7616d85b-da9a-46bd-9b9f-e8dafe34213a",
      "sections": [
        {
          "arrival": {
            "place": {
              "location": {
                "lat": 53.86060992255807,
                "lng": 14.277769988402725
              },
              "type": "place"
            },
            "time": "2019-12-09T14:31:28+01:00"
          },
          "departure": {
            "place": {
              "location": {
                "lat": 53.859547432512048,
                "lng": 14.271750692278147
              },
              "type": "place"
            },
            "time": "2019-12-09T14:08:34+01:00"
          },
          "id": "217649dd-5584-4162-b235-f625f5b25185",
          "transport": {
            "mode": "car"
          },
          "type": "vehicle"
        },
        {
          "arrival": {
            "place": {
              "location": {
                "lat": 53.862169962376359,
                "lng": 14.28596992045641
              },
              "type": "place"
            },
            "time": "2019-12-09T14:42:28+01:00"
          },
          "departure": {
            "place": {
              "location": {
                "lat": 53.86060992255807,
                "lng": 14.277769988402725
              },
              "type": "place"
            },
            "time": "2019-12-09T14:31:28+01:00"
          },
          "id": "e955e9cf-7783-4c77-a9ee-8ba1b409b612",
          "notices": [
            {
              "code": "violatedAvoidFerry",
              "title": "Violated avoid ferry"
            }
          ],
          "transport": {
            "mode": "ferry"
          },
          "type": "vehicle"
        },
        {
          "arrival": {
            "place": {
              "location": {
                "lat": 53.86353185400367,
                "lng": 14.284817911684513
              },
              "type": "place"
            },
            "time": "2019-12-09T14:44:22+01:00"
          },
          "departure": {
            "place": {
              "location": {
                "lat": 53.862169962376359,
                "lng": 14.28596992045641
              },
              "type": "place"
            },
            "time": "2019-12-09T14:42:28+01:00"
          },
          "id": "3a8fe2c0-269a-45f1-a5bb-aab060d78c7c",
          "transport": {
            "mode": "car"
          },
          "type": "vehicle"
        }
      ]
    }
  ]
}

回避オプションで失敗する例

このリクエストは、次の回避オプションで失敗します。

curl -X GET 'https://router.hereapi.com/v8/routes?origin=52.531106,13.384915&transportMode=car&destination=55.954408,-3.194735&avoid[features]=ferry,carShuttleTrain&return=summary&apikey={YOUR_API_KEY}'
{
  "notices": [
    {
      "title": "Route calculation failed: Couldn't find a route.",
      "code": "noRouteFound"
    }
  ],
  "routes": []
}

詳細なセクション通知を取得します

この要求は、存在しないルートの経由地 およびパラメータを指定します。 計算の結果、ルートの特定のセクションの通知を指定する応答が返されます。

curl -X GET \
  'https://router.hereapi.com/v8/routes?origin=50.892387,20.655124&destination=50.894911,20.64899&transportMode=truck&vehicle[grossWeight]=4000&departureTime=2020-10-28T00:01:00+01:00&apikey={YOUR_API_KEY}'
{
  "routes": [
    {
      "id": "4ff6518f-ebf4-4c69-aa6f-ed1a67c0daec",
      "sections": [
        {
          "id": "f9fd7dca-e7ca-4c95-9033-fb5b395a5452",
          "type": "vehicle",
          "departure": {
            "time": "2020-10-28T00:01:00+01:00",
            "place": {
              "type": "place",
              "location": {
                "lat": 50.8924,
                "lng": 20.655124
              },
              "originalLocation": {
                "lat": 50.892387,
                "lng": 20.6551239
              }
            }
          },
          "arrival": {
            "time": "2020-10-28T00:04:32+01:00",
            "place": {
              "type": "place",
              "location": {
                "lat": 50.8948931,
                "lng": 20.6489882
              },
              "originalLocation": {
                "lat": 50.8949109,
                "lng": 20.64899
              }
            }
          },
          "notices": [
            {
              "title": "Violated vehicle restriction.",
              "code": "violatedVehicleRestriction",
              "severity": "critical",
              "details": [
                {
                  "type": "restriction",
                  "cause": "Route violates vehicle restriction",
                  "maxGrossWeight": 3500,
                  "timeDependent": true
                }
              ]
            }
          ],
          "transport": {
            "mode": "truck"
          }
        }
      ]
    }
  ]
}

ルーティングゾーン

ルーティングゾーンおよびその回避方法については 、 HEREを参照してください。

エリアを避けてください

エリアを避ける方法については 、 HEREを参照してください。

」に一致する結果は 件です

    」に一致する結果はありません