รวมข้อมูลสรุปการกำหนดเส้นทางกับการค้นหาตามเส้นทาง

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

วิธีใช้การค้นหาข้อความ (ใหม่) เพื่อคำนวณสรุปเส้นทางพร้อมกับการค้นหาตามเส้นทาง

  1. ใช้ Routes API เพื่อคำนวณเส้นทางที่แสดงผลเส้นประกอบของเส้นทางในการตอบกลับ

  2. ใช้พารามิเตอร์ searchAlongRouteParameters.polyline.encodedPolyline เพื่อ ส่งเส้นประกอบเส้นทางไปยังการค้นหาข้อความ (ใหม่) เพื่อให้ผลการค้นหา มีความเอนเอียงไปตามเส้นทาง จากนั้นคำตอบจะมีสถานที่ที่ตรงกับเกณฑ์การค้นหา และอยู่ใกล้กับเส้นทางที่ระบุ

  3. ใส่ routingSummaries ในมาสก์ฟิลด์เพื่อให้การตอบกลับมีอาร์เรย์ routingSummaries อาร์เรย์นี้มีระยะเวลาและระยะทาง จากต้นทางการกำหนดเส้นทางไปยังสถานที่แต่ละแห่งในการตอบกลับ

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

โดยค่าเริ่มต้น การค้นหาข้อความ (ใหม่) จะทำการค้นหาตลอดเส้นทาง

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food",
  "searchAlongRouteParameters": {
    "polyline": {
      "encodedPolyline": "ROUTE_POLYLINE"
    }
  }
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \
'https://places.googleapis.com/v1/places:searchText'

การตอบกลับมีอาร์เรย์ 2 รายการ ได้แก่ อาร์เรย์ places ที่มีสถานที่ที่ตรงกัน และอาร์เรย์ routingSummaries ที่มีระยะเวลาและระยะทางในการเดินทางไปยังสถานที่แต่ละแห่ง ดังนี้

{
  "places": [
    {
      "formattedAddress": "1199 El Camino Real, San Bruno, CA 94066, USA",
      "priceLevel": "PRICE_LEVEL_INEXPENSIVE",
      "displayName": {
        "text": "Vegan Mob - Vegan BBQ and Soul Food",
        "languageCode": "en"
      }
    },
    {
      "formattedAddress": "839 Kearny St, San Francisco, CA 94108, USA",
      "priceLevel": "PRICE_LEVEL_MODERATE",
      "displayName": {
        "text": "Enjoy Vegetarian",
        "languageCode": "en"
      }
    },
   …
],
  "routingSummaries": [
    {
      "legs": [
        {
          "duration": "285s",
          "distanceMeters": 1616
        },
        {
          "duration": "2466s",
          "distanceMeters": 58147
        }
      ],
      "directionsUri": "https://www.google.com/maps/dir/37.42268,-122.08473/''/37.77877,-122.38781/data=!4m7!4m6!1m0!1m2!1m1!1s0x808f87f9ede375f5:0xa37171fea1a16b28!1m0!3e0"
    },
    {
      "legs": [
        {
          "duration": "696s",
          "distanceMeters": 4704
        },
        {
          "duration": "2787s",
          "distanceMeters": 58901
        }
      ],
      "directionsUri": "https://www.google.com/maps/dir/37.42268,-122.08473/''/37.77877,-122.38781/data=!4m7!4m6!1m0!1m2!1m1!1s0x808580f4cebdb06f:0xd3af09e5742234f2!1m0!3e0"
    },
   …
  ]
}

สำหรับแต่ละรายการในอาร์เรย์ legs การค้นหาข้อความ (ใหม่) จะแสดงเวลาการเดินทางแบบ 2 ขา

  • ช่วงแรกประกอบด้วยระยะเวลาการเดินทางและระยะทางจากต้นทางไปยังสถานที่ ในตัวอย่างนี้ ระยะเวลาและระยะทางจากจุดเริ่มต้นไปยัง สถานที่แรกในผลลัพธ์คือ 285 วินาทีและ 1, 616 เมตร

  • ส่วนที่ 2 ประกอบด้วยระยะเวลาและระยะทางในการเดินทางจากสถานที่ไปยังจุดหมายของเส้นทาง ในตัวอย่างนี้ ระยะเวลาและระยะทางคือ 2466 วินาทีและ 58147 เมตร

ระบุต้นทางการกำหนดเส้นทาง รูปแบบการเดินทาง และตัวปรับแต่งเส้นทาง

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

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

ในตัวอย่างถัดไป คุณจะระบุต้นทางการกำหนดเส้นทางเป็นพิกัดของ San Mateo รัฐแคลิฟอร์เนีย ระบุให้หลีกเลี่ยงค่าผ่านทาง และตั้งค่าจำนวนผลลัพธ์เป็น 5

  curl -X POST -d '{
    "textQuery" : "Spicy Vegetarian Food",
    "maxResultCount": 5,
    "searchAlongRouteParameters": {
      "polyline": {
        "encodedPolyline": "ROUTE_POLYLINE"
      }
    },
    "routingParameters": {
      "origin": {
        "latitude": 37.56617,
        "longitude": -122.30870
      },
      "travelMode":"DRIVE",
      "routeModifiers": {
        "avoidTolls": true
      }
    }
  }' \
  -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
  -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \
  'https://places.googleapis.com/v1/places:searchText'

รูปภาพต่อไปนี้แสดงแผนที่ที่มีเส้นประกอบของเส้นทาง ต้นทางใหม่ (หมุดสีฟ้าอ่อน) และสถานที่ในผลการค้นหา (หมุดสีเขียว) สังเกตว่าผลลัพธ์ทั้งหมดอยู่ตามเส้นทาง แต่เลย San Mateo ไปแล้ว

ผลการค้นหาจากแหล่งที่มาของการอัปเดต

ลองใช้งาน

โปรแกรมสำรวจ API ช่วยให้คุณสร้างคำขอตัวอย่างเพื่อให้คุ้นเคยกับ API และตัวเลือก API

  1. เลือกไอคอน API api ทางด้านขวาของหน้า

  2. แก้ไขพารามิเตอร์คำขอ (ไม่บังคับ)

  3. เลือกปุ่มดำเนินการ ในกล่องโต้ตอบ ให้เลือกบัญชี ที่ต้องการใช้เพื่อส่งคำขอ

  4. ในแผงโปรแกรมสำรวจ API ให้เลือกไอคอนเต็มหน้าจอ fullscreen เพื่อขยายหน้าต่างโปรแกรมสำรวจ API