距離の短いルートを取得する

欧州経済領域(EEA)のデベロッパー

距離の短いルートを有効にすると、Compute Routes は移動距離が短くなるように最適化された自動車ルートを返します。

距離の短いルートをリクエストすると、サービスは次のものを返します。

  • デフォルト ルート。主に到着予定時刻を最適化したルートです。
  • 移動距離を最小限に抑えるように最適化された短いルート。

概要と使用する理由

距離の短いルートでは、運転の快適さや速度よりも距離が優先されます。たとえば、高速道路ではなく一般道路を優先したり、未舗装道路を通ったり、駐車場を横切ったりすることがあります。Google マップが違法と認識している操作は返されません。

距離の短いルートをリクエストする

リクエストは次の条件を満たす必要があります。

  • travelModeDRIVEBICYCLETWO_WHEELER のいずれかに設定します。
  • requestedReferenceRoutesSHORTER_DISTANCE に設定します。
  • レスポンス フィールド マスクを設定して、距離の短いルートに関連付けられたレスポンス プロパティを返します。
    • routes.routeLabels: 各ルートを DEFAULT_ROUTESHORTER_DISTANCE、または DEFAULT_ROUTE_ALTERNATE のいずれかとして識別します。
    • routes.routeToken: Navigation SDK に渡してカスタムルートを取得できるルートトークン。
  • Via の中間経由地はVia**含めないでください** 。
  • 含めないでくださいoptimizeWaypointOrder パラメータ。
  • __省略可:__ レスポンス フィールド マスクを設定して、デフォルト ルートと距離の短いルートの両方に関連付けられた次のプロパティを返します。
    • routes.distanceMeters: ルートの距離を返します。
    • routes.duration: ルートの所要時間を返します。

リファレンス情報については、 ReferenceRouteRouteLabelをご覧ください。

リクエストの例: 距離の短いルート

次のコードは、距離の短いルートのリクエストを示しています。この例では、レスポンス フィールド マスクを使用して、次のフィールド マスクでデフォルト ルートと距離の短いルートの両方に関連付けられたフィールドを返します。

  • routes.distanceMeters
  • routes.duration
curl -X POST -H 'content-type: application/json' -d '{
  "origin": {
    "location": {
      "latLng": {
        "latitude": 41.76904801292959,
        "longitude": -72.67374935684933
      }
    }
  },
  "destination": {
    "location": {
      "latLng": {
        "latitude": 41.823042361105024,
        "longitude": -71.40933143059424
      }
    }
  },
  "travelMode":"DRIVE",
  "routingPreference":"TRAFFIC_AWARE",
  "requestedReferenceRoutes": ["SHORTER_DISTANCE"],
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY \
-H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken' \
'https://routes.googleapis.com/directions/v2:computeRoutes'

距離の短いルートのレスポンスの例

{
  "routes": [
    {
      "distanceMeters": 138943,
      "duration": "5373s",
      "routeToken": "CrsCCs4BMssBGq8BCkECFg9eN0MowaEI3Y4KqMEhzOTe-Qi3947kBsb8koUBkvX0oAKJ_b1S4uPoUvzzAYfXA92t_RXyw98Up6qKAaRaABIsNBjodKMdkMYAPMLMIajCwj-zsIxpgyBxOLYjdBBeKgkO3tFDDrj4YgZB5bMaFQAATME12CCCA9MEF-kO2wL_____DyoLHgAOAHN3DggAQQEyBAUBAQM9VDgqPkV88FI_SNO81oLq4JnjYyIXcklWWFo2cjhDZmltdk9NUDQ3aU1nUU0QBRpPCk0KGAoNCgIIAREAAAAAAIBmQBF56SYxqDm4QBISCAAQAxAGEBMQEhgCQgQaAggFIhsKF3JJVlhaLWFOQnZpbXZPTVA0N2lNZ1FNcAEoASIVAACBmRY1BjeCiUQewJGTrQ3DuHRp",
      "routeLabels": [
        "DEFAULT_ROUTE"
      ]
    },
    {
      "distanceMeters": 112610,
      "duration": "7165s",
      "routeToken": "CqgCCrsBMrgBGpwBCjYCFg1SN0MowaEI3Y4KjfqjF6Ls9BXc-QGiqCOpu7FDtfCXxSG2zLOGI_r4uQGc-we_nQ7MLAASLDQY6HSjHZDGg26EAFrPI5Q3NxvGA4ELazy3sLYqno_9eAFD2KxlCqAGQeWzGg4AAMQDGwyiAqwwKQggJCoLHgBsCQ8Acm0XWWcyAgQGPVQ4Kj5FfPBSP0jikPWC95WdhIwBIhdySVZYWjZHR0RiTzV2T01QOUpiQXlBTRAFGk8KTQoYCg0KAggCEQAAAAAAAFlAEU5iEFh5af1AEhIIABADEAYQExASGAJCBBoCCAUiGwoXcklWWFo3S09Cck81dk9NUDlKYkF5QU1wASgCIhUAAIGZFlj_CmMgGE6KGZcsE-tEywM",
      "routeLabels": [
        "SHORTER_DISTANCE"
      ]
    }
  ]
}

リクエストの例: 距離が短く燃費の良いルート

次のコードは、距離の短いルートと燃料効率が良いルートの両方のリクエストを示しています。

`

 curl -X POST -d '{
"origin": {  "location": {  "latLng": {  "latitude": 41.76904801292959,
"longitude": -72.67374935684933  }  }  },  "destination": {  "location": {
"latLng": {  "latitude": 41.823042361105024,  "longitude": -71.40933143059424  }
 }  },  "travelMode":"DRIVE",  "routingPreference":"TRAFFIC_AWARE_OPTIMAL",
"requestedReferenceRoutes": ["SHORTER_DISTANCE", "FUEL_EFFICIENT"] }' 
-H 'Content-Type: application/json'
-H 'X-Goog-Api-Key: YOUR_API_KEY'
-H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken'
'https://routes.googleapis.com/directions/v2:computeRoutes'

レスポンスの例: 距離が短く燃料効率が良いルート

この場合、距離が短く燃料効率が良いルートは同じであるため、そのルートが返され、両方のルートタイプに routeLabel が含まれます。

{  "routes": [  {  "distanceMeters": 138943,  "duration": "5375s",
"routeToken":
"Cr8CCs4BMssBGq8BCkECFg9eN0MowaEI3Y4KqMEhzOTe-Qi3947kBsb8koUBkvX0oAKJ_b1S4uPoUvzzAYfXA92t_RXyw98Up6qKAaRaABIsNBjodKMdkMYAPMLMIajCwj-zsIxpgyBxOLYjdBBeKgkO3tFDDrj4YgZB5bMaFQAATME12CCCA9MEF-kO2wL_____DyoLHgAOAHN3DggAQQEyBAUBAQM9VDgqPkV88FI_SNO81oLq4JnjYyIXS1laWFo4T19JcWVCM2ZFUDFMbms4UXcQBRpTClEKGAoNCgIIAREAAAAAAIBmQBFOYhBYGTy4QBIWCAAQAxAGEBMQEhgCQgQaAggFSgIIASIbChdLWVpYWjlpV0g2ZUIzZkVQMUxuazhRd3ABKAEiFQAAgZkW4Df4cspNNJZWlMZuUUxLPQ",
 "routeLabels": [  "DEFAULT_ROUTE"  ]  },  {  "distanceMeters": 112610,
"duration": "7156s",  "routeToken":
"CqwCCrsBMrgBGpwBCjYCFg1SN0MowaEI3Y4KjfqjF6Ls9BXc-QGiqCOpu7FDtfCXxSG2zLOGI_r4uQGc-we_nQ7MLAASLDQY6HSjHZDGg26EAFrPI5Q3NxvGA4ELazy3sLYqno_9eAFD2KxlCqAGQeWzGg4AAMQDGwyiAqwwKQggJCoLHgBsCQ8Acm0XWWcyAgQGPVQ4Kj5FfPBSP0jikPWC95WdhIwBIhdLWVpYWi1UNklfT055OVlQczhhcWlRSRAFGlMKUQoYCg0KAggCEQAAAAAAAFlAEU5iEFh5af1AEhYIABADEAYQExASGAJCBBoCCAVKAggBIhsKF0tZWlhaNERXSF9PTnk5WVBzOGFxaVFJcAEoAiIVAACBmRaESp2EJS5nmwiEF8KH15_f",
 "routeLabels": [  "FUEL_EFFICIENT",  "SHORTER_DISTANCE"  ]  }  ] }

サポートされるリージョン

距離の短いルートはすべてのリージョンでサポートされています。

課金

Google Maps Platform では、試験運用版機能の使用に追加料金は発生しません。設定した他のパラメータに基づいて、API の使用量に応じて課金されます。

Routes API の課金 の詳細をご覧ください。