Đường gần nhất

Roads API có tối đa 100 toạ độ độc lập và trả về đoạn đường gần nhất cho mỗi điểm. Các điểm đã đi qua không cần phải nằm trên một đường dẫn liên tục.

Nếu bạn đang làm việc với các điểm GPS tuần tự, hãy sử dụng tính năng Snap to Roads.

Yêu cầu

Bạn phải gửi yêu cầu đến các con đường gần nhất bằng HTTPS và yêu cầu này có dạng như sau:

https://roads.googleapis.com/v1/nearestRoads?parameters&key=YOUR_API_KEY

Thông số bắt buộc

  • điểm

    Các điểm cần được gắn. Tham số điểm chấp nhận danh sách các cặp vĩ độ/kinh độ. Phân tách giá trị vĩ độ và kinh độ bằng dấu phẩy. Phân tách các toạ độ bằng ký tự sổ thẳng: "|". Ví dụ: points=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796.

Ví dụ

Yêu cầu sau đây trả về một tập hợp các đoạn đường dựa trên danh sách toạ độ đã chỉ định.

URL

https://roads.googleapis.com/v1/nearestRoads
  ?points=60.170880%2C24.942795%7C60.170879%2C24.942796%7C60.170877%2C24.942796
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://roads.googleapis.com/v1/nearestRoads?points=60.170880%2C24.942795%7C60.170879%2C24.942796%7C60.170877%2C24.942796&key=YOUR_API_KEY'

Phản hồi

Đối với mỗi yêu cầu hợp lệ, Roads API sẽ trả về một phản hồi ở định dạng được chỉ ra trong URL yêu cầu.

{
  "snappedPoints":
    [
      {
        "location":
          { "latitude": 60.170878428876755, "longitude": 24.94269540970182 },
        "originalIndex": 0,
        "placeId": "ChIJfVFHrM0LkkYRBzUQos_jR5w",
      },
      {
        "location":
          { "latitude": 60.17087741412199, "longitude": 24.942695474405202 },
        "originalIndex": 1,
        "placeId": "ChIJfVFHrM0LkkYRBzUQos_jR5w",
      },
      {
        "location":
          { "latitude": 60.170875416131736, "longitude": 24.942695601802203 },
        "originalIndex": 2,
        "placeId": "ChIJfVFHrM0LkkYRBzUQos_jR5w",
      },
    ],
}

Phản hồi sử dụng lược đồ sau.

NearestRoadsResponse

Trường Bắt buộc Loại Mô tả
tùy chọn Array<SnappedPoint>

Một mảng các điểm được điều chỉnh. Đôi khi, một điểm có thể chứa nhiều điểm được điều chỉnh cho cùng một điểm với placeId hoặc vị trí khác nhau.

Hãy xem SnappedPoint để biết thêm thông tin.

SnappedPoint

Trường Bắt buộc Loại Mô tả
bắt buộc LatitudeLongitudeLiteral Hãy xem LatitudeLongitudeLiteral để biết thêm thông tin.
bắt buộc chuỗi

Giá trị nhận dạng riêng biệt của một địa điểm. Tất cả mã địa điểm do Roads API trả về đều tương ứng với các đoạn đường.

tùy chọn số

Một số nguyên cho biết giá trị tương ứng trong yêu cầu ban đầu. Mỗi giá trị trong yêu cầu phải ánh xạ đến một giá trị được điều chỉnh trong phản hồi. Tuy nhiên, nếu bạn đã đặt interpolate=true hoặc nếu bạn đang sử dụng các con đường gần nhất, thì có thể phản hồi sẽ chứa nhiều toạ độ hơn yêu cầu. Các giá trị được nội suy sẽ không có originalIndex. Các giá trị này được lập chỉ mục từ 0, vì vậy, một điểm có originalIndex là 4 sẽ là giá trị được điều chỉnh của vĩ độ/kinh độ thứ 5 được truyền đến tham số đường dẫn. Các điểm Đường gần nhất có thể chứa nhiều điểm cho một toạ độ duy nhất với vị trí hoặc placeId khác nhau.

LatitudeLongitudeLiteral

Một đối tượng mô tả một vị trí cụ thể có Vĩ độ và Kinh độ theo độ thập phân.

Trường Bắt buộc Loại Mô tả
bắt buộc số

Vĩ độ theo độ thập phân

bắt buộc số

Kinh độ tính bằng độ thập phân