เมื่อคุณคำนวณเส้นทางหรือเมทริกซ์เส้นทาง คุณอาจต้องพิจารณาค่าผ่านทางสำหรับเส้นทางด้วย สำหรับเมืองที่เลือก คุณสามารถคำนวณค่าผ่านทางโดยประมาณสำหรับเส้นทางในสกุลเงินที่เหมาะสม
หากต้องการทราบค่าผ่านทางของเมทริกซ์เส้นทาง โปรดดูคำนวณค่าธรรมเนียมค่าผ่านทางสำหรับเมทริกซ์เส้นทาง
ดูรายชื่อสถานที่เก็บค่าผ่านทางที่รองรับได้ในข้อมูลอ้างอิงสำหรับ TollPass
วิธีคำนวณค่าผ่านทาง
Routes API จะคำนวณค่าธรรมเนียมค่าผ่านทางโดยประมาณ โดยพิจารณาจากส่วนลดหรือบัตรทางพิเศษที่มีให้กับคนขับหรือรถยนต์ และวิธีการชำระเงินที่สะดวกที่สุด หากไม่มีค่าผ่านทางสำหรับเส้นทางที่ระบุ Routes API จะระบุว่ามีค่าผ่านทางที่มีค่าธรรมเนียมที่ไม่รู้จัก
หากต้องการรับค่าประมาณค่าผ่านทางที่ถูกต้อง โปรดระบุข้อมูลต่อไปนี้ในคำขอ
- ประเภทการปล่อยก๊าซของยานพาหนะที่ใช้ในเส้นทาง
(
VehicleEmissionType
) หากไม่ได้ระบุประเภทการปล่อยก๊าซ ค่าผ่านทางสำหรับรถที่น้ำมันเชื้อเพลิงจะส่งคืน - ค่าผ่านทางทั้งหมดที่รถและคนขับมีโดยใช้
(
TollPass
) API จะใช้บัตรผ่านทางดังกล่าวเพื่อระบุค่าธรรมเนียมค่าผ่านทางที่ถูกต้อง และส่งคืนราคาเงินสด เมื่อค่าผ่านทางในคำขอไม่ได้อยู่ในพื้นที่ของเส้นทาง - ระบุการเลี่ยงค่าผ่านทาง หากจำเป็น หากคุณต้องการหลีกเลี่ยงถนนที่เรียกเก็บค่าผ่านทาง ให้เพิ่ม
avoidTolls
เป็นRouteModifier
คำนวณค่าผ่านทางโดยใช้บัตรผ่านทาง
หากต้องการคำนวณค่าผ่านทางโดยใช้บัตรผ่านทาง คุณต้องระบุบัตรผ่านทางเป็นส่วนหนึ่งของคำขอ จากนั้น API จะแสดงราคาบัตร
หากคุณระบุบัตรผ่านทางไม่ถูกต้อง ระบบจะไม่สนใจบัตรดังกล่าว
หากระบุค่าผ่านทางหลายทางเป็นอาร์เรย์ API จะพยายามคำนวณราคาสำหรับเส้นทางของแต่ละบัตรผ่าน
ลักษณะการใช้บัตรผ่านทางอาจแตกต่างกันไปในแต่ละภูมิภาค
อัตราค่าผ่านทางอาจต่ำกว่าสำหรับค่าผ่านทาง: ในบางภูมิภาค ผู้ขับหรือยานพาหนะที่มีบัตรผ่านทางจะจ่ายค่าผ่านทางต่างจากผู้ที่ไม่มีบัตร ตัวอย่างเช่น หากคุณมีค่าผ่านทาง Good To Go! ในซีแอตเทิล วอชิงตัน สหรัฐอเมริกา คุณจะจ่ายค่าผ่านทางน้อยกว่ากรณีที่คุณไม่มีบัตร
ถนนบางเส้นอาจต้องใช้บัตรผ่านทาง: บางภูมิภาค เช่น อินโดนีเซีย มีถนนที่ต้องมีค่าผ่านทาง หากคุณไม่ระบุค่าผ่านทางสำหรับเส้นทางที่ต้องมีการเก็บค่าผ่านทาง API จะไม่แสดงค่าผ่านทาง
คำนวณค่าผ่านทางสำหรับเส้นทาง
ตัวอย่างต่อไปนี้ใช้วิธีการ computeRoutes
เพื่อส่งคืนข้อมูลค่าผ่านทางพร้อมราคาโดยประมาณเมื่อมีการใช้บัตรผ่านทาง ในตัวอย่างนี้ คุณจะทำสิ่งต่อไปนี้ได้
ตั้งค่าช่องอาร์เรย์
extraComputations
เป็นTOLLS
เพื่อเปิดใช้การคำนวณข้อมูลค่าผ่านทางระบุประเภทพาหนะและประเภทบัตรผ่านทางโดยใช้ช่อง
routeModifiers
ของคำขอ ราคาค่าผ่านทางที่ส่งกลับมาอิงตามราคาที่ประเภทยานพาหนะและบัตรระบุที่ระบุ หากระบุบัตรผ่านมากกว่า 1 รายการ ระบบจะแสดงผลการกำหนดราคาที่ถูกที่สุดใช้มาสก์ฟิลด์การตอบกลับเพื่อกำหนดค่าเมธอดเพื่อส่งคืนข้อมูลค่าผ่านทางในการตอบกลับ ในตัวอย่างนี้ คำขอมีพร็อพเพอร์ตี้ต่อไปนี้อยู่ในมาสก์ของช่องการตอบกลับ
routes.travelAdvisory.tollInfo
เพื่อแสดงข้อมูลของทั้งเส้นทางroutes.legs.travelAdvisory.tollInfo
เพื่อแสดงข้อมูล สำหรับการเดินทางแต่ละครั้ง
คำขอข้อมูลค่าผ่านทาง
curl -X POST -d '{
"origin":{
"location":{
"latLng":{
"latitude":42.340173523716736,
"longitude":-71.05997968330408
}
}
},
"destination":{
"location":{
"latLng":{
"latitude":42.075698891472804,
"longitude": -72.59806562080408
}
}
},
"travelMode": "DRIVE",
"extraComputations": ["TOLLS"],
"routeModifiers":{
"vehicleInfo":{
"emissionType": "GASOLINE"
},
"tollPasses": [
"US_MA_EZPASSMA",
"US_WA_GOOD_TO_GO"
]
}
}' \
-H 'Content-Type: application/json' \
-H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.travelAdvisory.tollInfo,routes.legs.travelAdvisory.tollInfo' \
'https://routes.googleapis.com/directions/v2:computeRoutes'
คำตอบที่มีข้อมูลค่าผ่านทาง
การตอบกลับมีข้อมูลเกี่ยวกับค่าผ่านทางในออบเจ็กต์ TollInfo (REST) หรือ TollInfo (gRPC) ในตัวอย่างนี้ คุณจะส่งคืนข้อมูลค่าผ่านทางสำหรับทั้งเส้นทางและขาแต่ละรอบของเส้นทาง
{ "routes": [ { "legs": [ { "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ], "distanceMeters": 150338, "duration": "6650s", "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ] }