Tổng quan về tính năng tìm dọc theo tuyến đường

Các tính năng Tìm kiếm dọc theo tuyến đường có trong các API Địa điểm (Mới) sau:

  • Chỉ tìm kiếm bằng văn bản (Mới): Tìm kiếm các địa điểm dọc theo tuyến đường đã định sẵn của chuyến đi.
  • Tìm kiếm văn bản (Mới) và Tìm kiếm lân cận (Mới): Tính toán thông tin tóm tắt định tuyến từ một vị trí nguồn gốc định tuyến được chỉ định đến từng vị trí trong kết quả tìm kiếm.
  • Chỉ tìm kiếm văn bản (Mới): Tính toán thông tin tóm tắt định tuyến cho mỗi địa điểm dọc theo một tuyến đường đi được xác định trước.

Tìm dọc theo tuyến đường

Bạn sử dụng Routes API (API Tuyến đường) để tính toán tuyến đường đi giữa hai vị trí. Routes API có thể tính toán tuyến đường cho ô tô, xe đạp, xe hai bánh, hệ thống giao thông công cộng hoặc để đi bộ.

Tính năng Tìm kiếm bằng văn bản (Mới) cho phép bạn sử dụng tuyến đường đã tính toán này để thực hiện tìm kiếm dọc theo một tuyến đường. Với tuỳ chọn này, bạn truyền tuyến đường được tính toán sẵn từ API tuyến đường đến yêu cầu Tìm kiếm văn bản (Mới). Sau đó, phản hồi sẽ chứa các địa điểm phù hợp với tiêu chí tìm kiếm và cũng nằm gần tuyến đường đã chỉ định.

Tìm kiếm dọc theo một tuyến đường cũng tương tự như sử dụng các tuỳ chọn yêu cầu locationRestriction hoặc locationBias để thiên vị kết quả tìm kiếm. locationRestriction trả về kết quả tìm kiếm nằm trong giới hạn khung nhìn, trong khi locationBias có thể trả về kết quả tìm kiếm nằm ngoài khung nhìn. Tuy nhiên, mặc dù các tuỳ chọn locationBiaslocationRestriction cho phép bạn chỉ định một khu vực để thiên vị kết quả tìm kiếm, nhưng tính năng tìm kiếm dọc theo tuyến đường trong Tìm kiếm bằng văn bản cũng cho phép bạn thiên vị kết quả tìm kiếm để bao gồm những kết quả có thời gian đi đường vòng tối thiểu từ điểm xuất phát của tuyến đường đến điểm đến của tuyến đường. Bạn có thể thiên vị kết quả tìm kiếm bằng cách sử dụng locationBias hoặc locationRestriction kết hợp với đường đa tuyến.

Ví dụ: hãy xem tuyến đường từ điểm gốc, được gọi là điểm tham chiếu trong API tuyến đường, đến đích do API tuyến đường tính toán:

Tuyến đường từ điểm trung gian xuất phát đến điểm đến có kết quả tìm kiếm.

Khi bạn tìm kiếm dọc theo tuyến đường, kết quả tìm kiếm sẽ ưu tiên trả về những địa điểm gần tuyến đường với thời gian đi đường vòng tối thiểu từ điểm xuất phát đến điểm đến. Trong ví dụ này, các điểm A, B và C là những địa điểm được tìm kiếm trả về.

Tính toán thông tin tóm tắt về định tuyến

Tìm kiếm bằng văn bản (Mới)Tìm kiếm địa điểm lân cận (Mới) có thể tính toán thông tin tóm tắt về lộ trình, tức là thời lượng và khoảng cách đến từng địa điểm trong phản hồi dựa trên vị trí xuất phát của lộ trình được chỉ định trong yêu cầu. Khi bạn chỉ định điểm xuất phát của tuyến đường, phản hồi không chỉ chứa danh sách các địa điểm khớp với nội dung tìm kiếm mà còn chứa thời gian và quãng đường di chuyển từ điểm xuất phát của tuyến đường đến từng địa điểm.

Trong hình ảnh sau đây, các điểm A, B và C là các địa điểm được trả về trong phản hồi tìm kiếm:

Điểm A, B và C là các địa điểm được trả về trong phản hồi tìm kiếm.

Đối với mỗi địa điểm trong kết quả, phản hồi sẽ chứa thời gian di chuyển và khoảng cách từ điểm khởi hành định tuyến đến địa điểm (nếu có).

Theo mặc định, thời gian và quãng đường di chuyển được tính bằng tuỳ chọn TRAFFIC_UNAWARE trong Routes API. Bạn có thể tuỳ ý đặt lựa chọn ưu tiên định tuyến để xem xét điều kiện lưu lượng truy cập trực tiếp TRAFFIC_AWARE_OPTIMAL hoặc điều kiện lưu lượng truy cập trực tiếp giảm độ trễ TRAFFIC_AWARE trong quá trình tính toán.

Giới thiệu về các tuyến đường, chặng và điểm tham chiếu

Một số thành phần tạo nên một tuyến đường, được tính toán bằng Routes API:

Các thành phần tạo nên một tuyến đường.

Một tuyến bao gồm các thành phần sau:

  • Waypoint: Để tính toán một tuyến đường, bạn phải chỉ định ít nhất vị trí của điểm xuất phát và điểm đến. Bạn xác định các vị trí này là điểm trung gian trên tuyến đường. Điểm trung gian là các vị trí nằm giữa điểm xuất phát và điểm đến mà bạn muốn tuyến đường đi qua.
  • Tuyến đường: Toàn bộ hành trình từ điểm trung gian, thông qua mọi điểm trung gian, đến điểm trung gian đích. Một tuyến đường bao gồm một hoặc nhiều đoạn.

    Khi chuyển một tuyến đến Text Search (Tìm kiếm văn bản), bạn sẽ chuyển hình nhiều đường được mã hoá của tuyến do Routes API trả về. Đường đa giác được mã hoá là danh sách các điểm vĩ độ và kinh độ được mã hoá cho phép bạn biểu thị đường đa giác của tuyến đường dưới dạng một chuỗi.

  • Có chặng: Đường dẫn từ một điểm trung gian trong tuyến đường đến điểm trung gian tiếp theo trong tuyến đường. Mỗi chặng bao gồm một hoặc nhiều bước riêng biệt.

    Một tuyến chứa một chặng riêng cho đường dẫn từ mỗi điểm trung gian đến điểm trung gian tiếp theo. Ví dụ: nếu tuyến đường chứa một điểm trung gian xuất phát và một điểm trung gian đến, thì tuyến đường đó chứa một chặng.

    Đối với mỗi điểm trung gian bổ sung mà bạn thêm vào tuyến đường sau điểm xuất phát và điểm đến, được gọi là điểm trung gian trung gian, API sẽ thêm một chặng riêng.

Để biết thêm thông tin về tuyến và tính toán tuyến, hãy xem API tuyến.

Tính toán bản tóm tắt định tuyến bằng một lượt tìm kiếm dọc theo tuyến đường

Bạn có thể kết hợp các phép tính tóm tắt định tuyến với tìm kiếm dọc theo tuyến đường. Trong trường hợp này, Tìm kiếm bằng văn bản (Mới) sẽ trả về thời gian di chuyển và khoảng cách đến từng địa điểm trong phản hồi, sau đó từ từng địa điểm đến đích cuối cùng của tuyến đường. Hãy xem phép tính này cung cấp thời lượng và khoảng cách di chuyển nếu bạn đi vòng khỏi tuyến đường đã chỉ định để di chuyển đến một địa điểm trong kết quả tìm kiếm, sau đó tiếp tục tới điểm đến cuối cùng.

Ví dụ: hãy xem xét tuyến đường sau đây từ điểm xuất phát đến điểm đến do Routes API tính toán. Truyền tuyến này đến API Tìm kiếm văn bản (Mới) cùng với các tiêu chí tìm kiếm của bạn.

Tuyến đường từ điểm trung gian gốc đến điểm đến có đường vòng để tìm kết quả.

Trong ví dụ này, vị trí A là một địa điểm được trả về trong kết quả tìm kiếm từ tính năng Tìm kiếm bằng văn bản (Mới). Đối với mỗi địa điểm trong phản hồi, kết quả tìm kiếm sẽ bao gồm thời gian và quãng đường cần thiết để đi vòng ra địa điểm đó dưới dạng chuyến đi hai chặng:

  • Chuyến bay đầu tiên chứa thời gian và quãng đường di chuyển từ điểm xuất phát của tuyến đường đến điểm đến. Trong ví dụ này, từ điểm xuất phát đến vị trí A.
  • Phần thứ hai chứa thời gian và quãng đường di chuyển từ địa điểm đến điểm đến của tuyến đường. Trong ví dụ này, từ A đến đích đến.

Từ thông tin trong phản hồi, bạn có thể tính toán thời lượng và quãng đường đi đường vòng, trong đó:

  • \(t_{OD}\) là thời gian di chuyển từ điểm xuất phát đến điểm đến, \(s_{OD}\) là khoảng cách di chuyển từ điểm xuất phát đến điểm đến
  • \(t_{OA}\) là thời gian di chuyển từ điểm xuất phát đến A; \(s_{OA}\) là quãng đường di chuyển từ điểm xuất phát đến A
  • \(t_{AD}\) là thời gian di chuyển từ A đến điểm đến; \(s_{AD}\) là quãng đường di chuyển từ A đến điểm đến

Thời gian đi đường vòngchênh lệch thời gian giữa chuyến đi ban đầu (từ điểm xuất phát đến điểm đến) và chuyến đi mới (từ điểm xuất phát đến điểm đến thông qua A):

$$ t_{detour} = t_{OA} + t_{AD} - t_{OD} $$

Khoảng cách đường vòngchênh lệch khoảng cách giữa chuyến đi ban đầu (từ điểm khởi hành đến điểm đến) và chuyến đi mới (từ điểm khởi hành đến điểm đến qua A):

$$ s_{detour} = s_{OA} + s_{AD} - s_{OD} $$