기본적으로 Routes API Compute Routes
중간 기착 경유지라고 하는 여러 정류장을 통과하는 경로를
사용자가 제공한 순서에 따라 다릅니다
다시 정렬하여 Routes API가 제공된 경로를 최적화하도록 할 수 있습니다. 더 효율적인 순서로 중지합니다. 이동에 맞게 최적화되는 경유지 최적화 이동 거리 및 회전 횟수와 같은 다른 요소도 고려합니다. 가장 효율적인 경로 결정
경유지 최적화
경로에 있는 경유지 중
via
가true
로 설정된 경유지가 없어야 합니다. 예:{"address": "Clare,SA", "via": true}
자세한 내용은 중간 경유지의 경우, 중간 경유지를 지정합니다.routing_preference
가TRAFFIC_AWARE_OPTIMAL
로 설정되지 않았는지 확인합니다.optimize_waypoint_order
를true
로 설정합니다. 예를 들면 다음과 같습니다."optimizeWaypointOrder": "true",
필드에
routes.optimizedIntermediateWaypointIndex
필드 지정 마스크:REST
-H X-Goog-FieldMask: routes.optimizedIntermediateWaypointIndex
RPC
const (fieldMask = "routes.optimizedIntermediateWaypointIndex")
경유지 순서가 최적화되는 방법 이해
Routes API가 경로의 경유지 순서를 최적화하는 방법은 다음과 같습니다.
제공한 순서에 따라 경유지의 색인을 자동으로 생성합니다. 0부터 시작합니다
경유지의 색인 번호를 사용하여 경유지의 순서를 최적화합니다. 지정된 경유지에 할당됩니다.
routes
객체의 최적화된 경유지 순서를routes.optimizedIntermediateWaypointIndex
아래의waypoint_order
필드
예
이 요청은 사우스오스트레일리아 주 애들레이드에서 출발하는 경로 최적화를 요청합니다. 돌아온 후 애들레이드로 돌아왔습니다.
curl -X POST -H 'content-type: application/json' -d ' { "origin": { "address": "Adelaide,SA" }, "destination": { "address": "Adelaide,SA" }, "intermediates": [ {"address": "Barossa+Valley,SA"}, {"address": "Clare,SA"}, {"address": "Connawarra,SA"}, {"address": "McLaren+Vale,SA"} ], "travelMode": "DRIVE", "optimizeWaypointOrder": "true" }' \ -H 'Content-Type: application/json' \ -H 'X-Goog-Api-Key: YOUR_API_KEY' \ -H 'X-Goog-FieldMask: routes.optimizedIntermediateWaypointIndex' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
Routes API는 0부터 시작합니다 예를 들면 다음과 같습니다.
0 {"address": "Barossa+Valley,SA"}, 1 {"address": "Clare,SA"}, 2 {"address": "Connawarra,SA"}, 3 {"address": "McLaren+Vale,SA"}
요청에 제공된 네 개의 경유지에 대한 인덱스 번호를 사용하여, 서비스는 다음과 같이 최적화된 순서를 반환합니다.
"optimizedIntermediateWaypointIndex": [ 3, 2, 0, 1 ]