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

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

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

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

  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 Text Search (ใหม่) จะแสดงผลเวลาการเดินทางแบบ 2 ขา

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

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

ระบุต้นทางการกำหนดเส้นทาง โหมดการเดินทาง และตัวแก้ไขเส้นทาง

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

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

ในตัวอย่างถัดไป คุณจะระบุต้นทางการกำหนดเส้นทางเป็นพิกัดของซานมาเทโอ รัฐแคลิฟอร์เนีย ระบุให้หลีกเลี่ยงค่าผ่านทาง และตั้งค่าจำนวนผลลัพธ์เป็น 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'

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

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

ลองใช้งาน

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

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

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

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

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