รับเมทริกซ์เส้นทาง

ใช้ Routes API เพื่อคำนวณระยะทางและระยะเวลาของเส้นทางสำหรับ ต้นทางและปลายทางหลายแห่งโดยเรียกใช้ เมธอด computeRouteMatrix (REST) หรือสตรีมมิง ComputeRouteMatrix (gRPC)

เมื่อพิจารณารายการต้นทางและปลายทาง เมธอด คำนวณระยะทางและระยะเวลาของเส้นทางโดยเริ่มจากต้นทางแต่ละแห่ง และสิ้นสุดที่ปลายทางแต่ละแห่ง

ขอเมทริกซ์เส้นทางขนส่งสาธารณะ

นอกจากนี้คุณยังคำนวณเมทริกซ์เส้นทางในการขนส่งสาธารณะได้อีกด้วย สำหรับ ตัวอย่างเช่น โปรดดูหัวข้อรับข้อมูลเมทริกซ์เส้นทางเมื่อขนส่งสาธารณะ

ขีดจำกัดคำขอ

เมธอด Compute Route Matrix บังคับใช้คำขอต่อไปนี้ ขีดจำกัดของจุดอ้างอิงโดยใช้ที่อยู่หรือรหัสสถานที่ และสำหรับองค์ประกอบต่างๆ องค์ประกอบต่างๆ คือ เส้นทางระหว่างต้นทางและปลายทางแต่ละรายการในเมทริกซ์เส้นทาง ดังนั้นจำนวน ขององค์ประกอบคือจำนวนต้นทาง เท่า ของจำนวนปลายทาง สำหรับ เช่น หากมีต้นทาง 10 แห่งและปลายทาง 10 แห่ง คุณจะมีองค์ประกอบ 100 รายการ

  • จำนวนองค์ประกอบสำหรับเส้นทางต้องไม่เกิน 625 รายการ ที่ไม่ใช่ TRANSIT เส้นทาง

  • หากคุณระบุเส้นทาง TRANSIT จำนวนองค์ประกอบต้องไม่เกิน 100

  • หากคุณระบุ TRAFFIC_AWARE_OPTIMAL จำนวนขององค์ประกอบดังกล่าวจะต้องไม่มี เกิน 100 ดูข้อมูลเพิ่มเติมเกี่ยวกับ TRAFFIC_AWARE_OPTIMAL ได้ที่ ระบุวิธีและกรณีที่จะรวมข้อมูลการเข้าชม

  • หากคุณระบุต้นทางหรือปลายทางโดยใช้ที่อยู่หรือรหัสสถานที่ โดยระบุจำนวนรวมทั้งสิ้น 50 รายการ

ข้อผิดพลาดในการตอบกลับ

คุณลักษณะหนึ่งของเมธอด Compute Route Matrix คือข้อผิดพลาดสามารถ สำหรับการตอบกลับทั้งหมดหรือสำหรับองค์ประกอบการตอบกลับแต่ละรายการ ตัวอย่างเช่น การตอบกลับทั้งหมดมีข้อผิดพลาดหากคำขอมีรูปแบบไม่ถูกต้อง (เช่น ไม่มีต้นทาง)

แต่ถ้าข้อผิดพลาดมีผลกับชุดย่อยของ ในการตอบสนอง (ตัวอย่างเช่น ไม่สามารถคำนวณเส้นทางสำหรับ ต้นทางและปลายทางร่วมกัน) เฉพาะองค์ประกอบที่ได้รับผลกระทบจาก แสดงรหัสข้อผิดพลาด

ผลการสตรีม gRPC

ComputeRouteMatrix เมธอด gRPC จะใช้รายการต้นทางและปลายทางและแสดงผลสตรีม ที่มีข้อมูลเส้นทางสำหรับต้นทางและปลายทางแต่ละรายการ เนื่องจากระบบจะแสดงผลการค้นหาเป็นสตรีม คุณไม่จำเป็นต้องรอจนครบทุกคน ระบบจะคำนวณการรวมเส้นทางที่เป็นไปได้ก่อนที่คุณจะเริ่มประมวลผล ผลลัพธ์

ไม่มีการรับประกันว่าองค์ประกอบที่แสดงผลโดยสตรีมจะถูกส่งคืนใน คำสั่งซื้อ ดังนั้น องค์ประกอบการตอบสนองแต่ละรายการจะมี origin_index และ destination_index สำหรับต้นทางและปลายทางที่ระบุโดยคำขอ ต้นทางของเส้นทางเทียบเท่ากับ origins[origin_index] สำหรับองค์ประกอบที่กำหนด และปลายทางของเส้นทางมีค่าเท่ากับ destinations[destination_index] อาร์เรย์เหล่านี้ไม่มีการจัดทำดัชนี สิ่งสำคัญคือต้องจัดเก็บต้นทางและ คำสั่งซื้อรายการปลายทาง

ตัวอย่างเมทริกซ์เส้นทาง

ใช้คำสั่ง computeRouteMatrix ในคำขอ HTTP เพื่อคำนวณเมทริกซ์เส้นทาง

ตัวอย่าง HTTP

ตัวอย่างต่อไปนี้แสดงคำขอ HTTP computeRouteMatrix ในตัวอย่างนี้ คุณ:

  • ระบุอาร์เรย์ของต้นทาง 2 จุดและจุดอ้างอิงปลายทาง 2 จุด วิธีการ จะคำนวณเส้นทางจากต้นทางแต่ละแห่งไปยังปลายทางแต่ละแห่ง เพื่อให้การตอบกลับ จะประกอบไปด้วย 4 เส้นทาง

    ในอาร์เรย์ องค์ประกอบแรกอยู่ที่ดัชนี 0 องค์ประกอบที่ 2 คือดัชนี 1 เป็นต้น

  • ใส่มาสก์ฟิลด์ตอบกลับเพื่อระบุฟิลด์ของ คำตอบ (REST) หรือ ComputeRoutesResponse (gRPC) เพื่อส่งคืน ในตัวอย่างนี้ กำหนดค่าคำขอส่งคืน originIndex, destinationIndex, duration, distanceMeters, status และ condition สำหรับแต่ละเส้นทาง สำหรับข้อมูลเพิ่มเติม โปรดดู เลือกช่องที่จะส่งคืน

curl -X POST -d '{
  "origins": [
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.420761,
            "longitude": -122.081356
          }
        }
      },
      "routeModifiers": { "avoid_ferries": true}
    },
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.403184,
            "longitude": -122.097371
          }
        }
      },
      "routeModifiers": { "avoid_ferries": true}
    }
  ],
  "destinations": [
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.420999,
            "longitude": -122.086894
          }
        }
      }
    },
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.383047,
            "longitude": -122.044651
          }
        }
      }
    }
  ],
  "travelMode": "DRIVE",
  "routingPreference": "TRAFFIC_AWARE"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: originIndex,destinationIndex,duration,distanceMeters,status,condition' \
'https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix'

การตอบสนองประกอบด้วย 4 เส้นทางที่เป็นไปได้สำหรับการรวมกันของต้นทางทั้งหมด และจุดอ้างอิงปลายทาง

ระบุแต่ละเส้นทางในการตอบกลับโดยใช้ originIndex และ ช่องคำตอบ destinationIndex ช่อง ตัวอย่างเช่น originIndex จาก 1 ใน การตอบสนองสอดคล้องกับเส้นทางที่คำนวณจากจุดอ้างอิงที่ดัชนี 1 ของ origins ในคำขอ

[
    {
        "originIndex": 0,
        "destinationIndex": 0,
        "status": {},
        "distanceMeters": 822,
        "duration": "160s",
        "condition": "ROUTE_EXISTS"
    },
    {
        "originIndex": 1,
        "destinationIndex": 0,
        "status": {},
        "distanceMeters": 2919,
        "duration": "361s",
        "condition": "ROUTE_EXISTS"
    },
    {
        "originIndex": 1,
        "destinationIndex": 1,
        "status": {},
        "distanceMeters": 5598,
        "duration": "402s",
        "condition": "ROUTE_EXISTS"
    },
    {
        "originIndex": 0,
        "destinationIndex": 1,
        "status": {},
        "distanceMeters": 7259,
        "duration": "712s",
        "condition": "ROUTE_EXISTS"
    }
]

ตัวอย่าง gRPC

เช่น คำขอ gRPC ดูตัวอย่างใน ตัวอย่างคำขอ gRPC ชวา บนหน้านั้นเรียกทั้งเส้นทาง Compute และ เมทริกซ์เส้นทางการประมวลผล