Snap to Roads API

Snap to Roads API dịch vụ cung cấp tính năng cho phép khớp các điểm dữ liệu GPS (thường không nằm trên đường giao thông do luôn có sai số với dữ liệu GPS) vào mạng lưới đường để xác định, xây dựng lại quỹ đạo di chuyển hoặc đường đi tương ứng trên bản đồ.

Bạn có thể tham khảo ví dụ sử dụng Snap to Roads API với JavaScript

URL

URL: /navigation/match/{profile}/driving/{coordinates}

Method

Method: GET

Parameters

* tham số yêu cầu.

Tham sốMô tảGiá trị
api_key*Key xác thực để cho gọi dịch vụYOUR_API_KEY
profile*Loại phương tiện di chuyển:
  • car: Đi bằng ô tô
  • bicycle: Đi bằng xe đạp/xe máy
  • foot: Đi bộ
Ví dụ: car
coordinates*Mảng cặp tọa độ bao gồm kinh độ, vĩ độ. Ít nhất có hai cặp tọa độ.{longitude},{latitude};{longitude},{latitude};...
Ví dụ: 105.809,21.0127;105.80925,21.0131
geometriesĐịnh dạng hình học tuyến đường được trả về (ảnh hưởng đến tổng quan và mỗi bước)polyline (mặc định), polyline6, geojson
overviewThêm hình học tổng quan hoặc đầy đủ, đơn giản hóa theo mức thu phóng cao nhất mà nó có thể được hiển thị hoặc không.simplified (mặc định), full, false
radiusesĐộ lệch chuẩn của độ chính xác GPS (tính bằng mét) được sử dụng để khớp bản đồ tương ứng với từng cặp tọa độ.{radius}; {radius};...
Mặc định là 5

Ví dụ Request:

$ curl "https://api.ekgis.vn/navigation/match/car/driving/105.809,21.0127;105.80925,21.0131?overview=full&geometries=geojson&api_key={YOUR_API_KEY}"

Response

Trả về đối tượng chỉ đường với các thông tin sau:

  • code: nếu yêu cầu thành công giá trị là Ok hoặc NoSegment nếu không tìm thấy tuyến đường nào

  • tracepoints: Mảng các đối tượng đại diện cho tất cả các điểm của dấu vết theo thứ tự. Nếu điểm theo dõi bị loại bỏ bởi khớp bản đồ vì nó là một ngoại lệ, thì mục nhập sẽ là null. Mỗi đối tượng có các thuộc tính bổ sung sau:

    • matchings_index: Chỉ mục cho đối tượng trong matchings dấu vết phụ đã được khớp với.
    • waypoint_index: Chỉ số của điểm tham chiếu bên trong tuyến đường phù hợp.
    • alternatives_count: Số lượng kết hợp thay thế có thể xảy ra cho điểm theo dõi này. Giá trị bằng 0 cho biết rằng điểm này được so khớp rõ ràng. Tách dấu vết tại các điểm này để khớp bản đồ gia tăng.
  • matchings: Một mảng các đối tượng lắp ráp dấu vết. Mỗi đối tượng có các thuộc tính bổ sung sau:

    • confidence: Độ tin cậy của sự phù hợp, giá trị trong khoảng từ 0 đến 1.

Ví dụ dữ liệu trả về dạng JSON:

{
"code": "Ok",
"matchings": [
{
"confidence": 0,
"geometry": {
"coordinates": [
[
105.809657,
21.012723
],
...
[
105.832466,
21.003772
]
],
"type": "LineString"
},
"legs": [
{
"steps": [],
"distance": 3751.9,
"duration": 298.6,
"summary": "",
"weight": 325.7
}
],
"distance": 3751.9,
"duration": 298.6,
"weight_name": "routability",
"weight": 325.7
}
],
"tracepoints": [
{
"alternatives_count": 0,
"waypoint_index": 0,
"matchings_index": 0,
"location": [
105.809657,
21.012723
],
"name": "Ngõ Láng Trung",
"distance": 0,
"hint": "W8xSgF3MUgAmAAAAFAAAALoBAAAAAAAAOD_WQSalWkF7qplDAAAAACYAAAAUAAAAugEAAAAAAACRAgAA-YZOBvOgQAH5hk4G86BAAQgA7wcwuIh5"
},
{
"alternatives_count": 1,
"waypoint_index": 1,
"matchings_index": 0,
"location": [
105.832466,
21.003772
],
"name": "Ngõ 41 Đông Tác",
"distance": 1.247456,
"hint": "gjtSgKg7UgArAAAAFwAAAMYAAABuAQAAPjqZQU4yIUF7PK9CJ8wiQxUAAAAMAAAAYwAAALcAAACRAgAAEuBOBvx9QAEe4E4G_H1AAQUAPwswuIh5"
}
]
}