หัวข้อสำคัญ

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

ระยะเวลาที่พิจารณา

ข้อจำกัดหลักที่คุณระบุให้กับบริการคือ travel_duration ซึ่งกำหนดระยะเวลาที่พิจารณาสำหรับการคำนวณ

  • ระยะเวลาสูงสุด: API รองรับระยะเวลาเดินทางสูงสุด 3,600 วินาที (1 ชั่วโมง) สำหรับโหมด DRIVE และ TWO_WHEELER และ 7,200 วินาที (2 ชั่วโมง) สำหรับโหมด WALK และ BICYCLE
  • ประสิทธิภาพ: เวลาในการคำนวณจะเพิ่มขึ้นตามระยะเวลาที่ขอและโหมดการเดินทางที่เลือก ไอโซโครนการขับรถ 1 ชั่วโมงครอบคลุมพื้นที่ทางภูมิศาสตร์และเครือข่ายถนนที่ใหญ่กว่าไอโซโครนการเดิน 1 ชั่วโมงอย่างมาก ซึ่งส่งผลให้คำขอการขับรถมีเวลาในการตอบสนองนานขึ้น
  • การจัดรูปแบบ: เนื่องจาก API ใช้ google.protobuf.Duration ระยะเวลา จึงต้องจัดรูปแบบเป็นสตริงที่ลงท้ายด้วย "s" (เช่น "3600s") แทนที่จะเป็นจำนวนเต็ม

จุดต้นทางและการปักหมุดถนน

คุณระบุจุดเริ่มต้นของไอโซโครนได้ 2 วิธี ดังนี้

  • พิกัด: คู่ละติจูดและลองจิจูด (location)
  • รหัสสถานที่: ตัวระบุที่ไม่ซ้ำกันสำหรับสถานที่ที่เฉพาะเจาะจงใน Google Maps (place) เมื่อคุณระบุรหัสสถานที่ บริการจะใช้จุดศูนย์กลางของสถานที่นั้นเป็นจุดต้นทาง โปรดทราบว่า API คาดหวังรูปแบบชื่อทรัพยากร เช่น places/ChIJ... ดูข้อมูลเพิ่มเติมเกี่ยวกับรหัสสถานที่ได้ที่ รหัสสถานที่

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

  • การปักหมุดอัจฉริยะ: บริการจะพยายามปักหมุดจุดต้นทางของคุณกับส่วนของถนนที่สามารถสัญจรได้ที่ใกล้ที่สุด
  • การรับรู้โหมด: ตรรกะการปักหมุดจะพิจารณา travel_mode ของคุณ หากคุณขอ DRIVE หรือ TWO_WHEELER API จะไม่สนใจเส้นทางสำหรับคนเดินเท้าเท่านั้นและมองหาถนนที่ขับรถได้ที่ใกล้ที่สุด หากคุณขอ WALK API จะจัดลำดับความสำคัญของเส้นทางและทางเท้าที่เดินได้
  • กรณีที่เกิดข้อผิดพลาด: หาก API ไม่พบส่วนของถนนที่เหมาะสมภายในระยะทางปักหมุดสูงสุดจากจุดต้นทางของคุณ (ประมาณ 150-200 เมตร ขึ้นอยู่กับโหมดการเดินทาง: 200 เมตรสำหรับ DRIVE และ TWO_WHEELER, 180 เมตรสำหรับ BICYCLE และ 150 เมตรสำหรับ WALK) API จะแสดงข้อผิดพลาด 404 NOT_FOUND ซึ่งมักจะบ่งบอกว่าจุดนั้นอยู่ไกลจากเครือข่ายถนนมากเกินไปหรืออยู่ในพื้นที่ที่ข้อมูลแผนที่ไม่รองรับโหมดการเดินทางที่ขอ

ทิศทางการเดินทาง (ขาเข้าเทียบกับขาออก)

คุณสามารถคำนวณการเข้าถึงได้ทั้งขาเข้าและขาออกโดยใช้พารามิเตอร์ travelDirection

  • FROM (ขาออก): คำนวณพื้นที่ที่เข้าถึงได้ จาก จุดต้นทางภายในขีดจำกัดเวลาที่ระบุ เหมาะสำหรับกรณีการใช้งาน เช่น เขตการจัดส่งหรือพื้นที่ให้บริการ
  • TO (ขาเข้า): คำนวณพื้นที่ที่คุณสามารถเดินทาง ไปยัง จุดต้นทางได้ภายในขีดจำกัดเวลาที่ระบุ เหมาะสำหรับการกำหนดเขตพื้นที่รับน้ำ เช่น พื้นที่ที่พนักงานสามารถเดินทางจากบ้านมายังสำนักงานกลางได้

การรับรู้การจราจร

ควบคุมวิธีที่ข้อมูลการจราจรส่งผลต่อรูปหลายเหลี่ยมที่สร้างขึ้นด้วยพารามิเตอร์ routing_preference

  • TRAFFIC_UNAWARE (ค่าเริ่มต้น): ใช้ขีดจำกัดความเร็วและลำดับชั้นของถนนเพื่อสร้างรูปหลายเหลี่ยมไอโซโครน ซึ่งจะสร้างรูปร่างที่กำหนดได้ซึ่งไม่ผันผวนตามช่วงเวลาของวัน พารามิเตอร์นี้เหมาะสำหรับการวิเคราะห์ทั่วไปหรือการวางแผนสถานการณ์พื้นฐาน
  • TRAFFIC_AWARE: คำนวณไอโซโครนโดยใช้สภาพการจราจรแบบเรียลไทม์หรือแบบคาดการณ์ ณ เวลาที่ส่งคำขอ ซึ่งจะทำให้พื้นที่ที่เข้าถึงได้เล็กลงในช่วงที่มีการจราจรติดขัดและขยายใหญ่ขึ้นในช่วงเวลาที่การจราจรไม่หนาแน่น หมายเหตุ: ระบบจะรองรับการกำหนดเส้นทางที่คำนึงถึงการจราจรก็ต่อเมื่อตั้งค่า travel_mode เป็น DRIVE หรือ TWO_WHEELER

การปรับให้เรียบและการแสดงผลอย่างละเอียด

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

  • polygon_fidelity: ควบคุมขนาดของเซลล์ตารางกริดพื้นฐานที่ใช้ในการคำนวณพื้นที่ที่เข้าถึงได้

    • LOW: ใช้เซลล์ตารางกริดขนาดใหญ่ เหมาะสำหรับการครอบคลุมพื้นที่ขนาดใหญ่โดยไม่มีช่องว่าง ซึ่งจะทำให้ได้รูปร่างทั่วไป
    • MEDIUM: ความแม่นยำที่สมดุล
    • HIGH: ใช้เซลล์ตารางกริดขนาดเล็ก ทำให้ได้รูปร่างที่แนบสนิทกับเครือข่ายถนนมากขึ้น แต่สามารถสร้างพื้นที่ว่างหรือรูได้หากเครือข่ายถนนมีไม่หนาแน่น
    • POLYGON_FIDELITY_UNSPECIFIED: หากไม่ได้ระบุ บริการจะเลือกความละเอียดแบบไดนามิกตามระยะเวลาการเดินทางที่ขอ
      ความละเอียดของรูปหลายเหลี่ยมสูง ปานกลาง และต่ำ
      ความละเอียดของรูปหลายเหลี่ยมสูง ปานกลาง และต่ำ
  • enable_smoothing: ควบคุมว่าจะปัดขอบคมของเซลล์ตารางกริดที่กำหนดโดยความละเอียดหรือไม่

    • false (ดิบ): ค่าเริ่มต้น แสดงผลการคำนวณทางเรขาคณิตที่แน่นอน ขอบจะปรากฏเป็นหยักๆ หรือเป็นขั้นๆ เหมาะที่สุดสำหรับความแม่นยำในการวิเคราะห์ เช่น การทดสอบจุดในรูปหลายเหลี่ยมที่เข้มงวด เวลาในการตอบสนองต่ำกว่าแบบปรับให้เรียบ
    • true (ปรับให้เรียบ): ใช้การปรับอัลกอริทึมหลังการประมวลผลเพื่อปัดมุม เหมาะที่สุดสำหรับการแสดงผลแบบภาพบนแผนที่
      ไอโซโครนที่มีและไม่มีการปรับให้เรียบ
      ไอโซโครนแบบปรับให้เรียบและไม่ปรับให้เรียบ