I. Tìm kiếm

1.1. Cấu trúc

MultipleResponse<string> AutoSuggestSearch(string Keyword);

1.2. Chức năng hàm

AutoSuggestSearch là hàm tự động tìm kiếm các gợi ý theo từ khóa truyền vào.

1.3. Input

Keyword

  • Kiểu dữ liệu: string.
  • Ý nghĩa biến: Từ khóa tìm kiếm (Lưu ý: Keyword có độ dài ít nhất 3 ký tự).

1.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

HasMoreItem

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết còn phần tử nào trong danh sách nữa không.

List

  • Kiểu dữ liệu: string[].
  • Ý nghĩa biến: Danh sách các gợi ý trả về.

TotalCount

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Tổng số vị trí thỏa điều kiện tìm kiếm.


2. BatchReverseGeocoding

2.1. Cấu trúc

SingleResponse<BatchReverGeocodingResult> BatchReverseGeocoding(Point[] Points, double Radius);

2.2. Chức năng hàm

BatchReverseGeoCoding là hàm lấy thông tin về ranh giới hành chính theo bán kính từ một tập điểm truyền vào.

2.3. Input

Points

  • Kiểu dữ liệu: Point[].
  • Ý nghĩa biến: Danh sách các điểm muốn lấy thông tin (tối đa 100 điểm).

Radius

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Bán kính (tính theo mét, tối đa 30m).

2.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value


3. GetNearestObjects

3.1. Cấu trúc

MultipleResponse<VietBandoPOI> GetNearestObjects(double Longitude, double Latitude, double Radius, int Limit);

3.2. Chức năng hàm

GetNearestObjects là hàm tìm kiếm các địa điểm xung quanh điểm truyền vào (Longitude, Latitude) với bán kính (Radius).

3.3. Input

Longitude

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Kinh độ của điểm truyền vào.

Latitude

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Vĩ độ của điểm truyền vào.

Radius

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Bán kính (tính theo mét, tối đa 50m).

Limit

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Giới hạn kết quả trả về (tối đa 20 điểm).

3.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

HasMoreItem

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết còn phần tử nào trong danh sách nữa không.

List

  • Kiểu dữ liệu: VietBandoPOI[].
  • Ý nghĩa biến: Danh sách các địa điểm trả về.

TotalCount

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Tổng số vị trí thỏa điều kiện tìm kiếm.


4. ReverseGeoCoding

4.1. Cấu trúc

SingleResponse<ReverseGeocodeResult> ReverseGeocoding(double Longitude, double Latitude, double Radius);

4.2. Chức năng hàm

ReverseGeoCoding là hàm lấy lấy thông tin về ranh giới hành chính theo bán kính từ một điểm truyền vào.

4.3. Input

Longitude

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Kinh độ.

Latitude

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Vĩ độ.

Radius

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Bán kính (tính theo mét, tối đa 30m).

4.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: ReverseGeocodeResult.
  • Ý nghĩa biến: Thông tin ranh giới hành chính trả về.


5. SearchAll

5.1. Cấu trúc

MultipleResponse<VietBandoPOI> SearchAll(string Keyword, int Page, int PageSize, double Lx, double Ly, double Rx, double Ry, bool IsOrder);

5.2. Chức năng hàm

SearchAll là hàm tìm kiếm theo từ khóa và kết quả trả về thuộc khung bao được hiển thị trên các trang kết quả đầu tiên.

5.3. Input

Keyword

  • Kiểu dữ liệu: string.
  • Ý nghĩa biến: Từ khóa tìm kiếm.

Page

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Thứ tự trang kết quả trả về.

PageSize

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Số kết quả hiển thị trên một trang (tối đa 10).

Lx

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Tọa độ trái X của khung bao.

Ly

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Tọa độ trái Y của khung bao.

Rx

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Tọa độ phải X của khung bao.

Ry

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Tọa độ phải Y của khung bao.

IsOrder

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: ưu tiên vùng tìm kiếm. Nếu IsOrder="False" thì chỉ tìm kiếm trong khung bao, ngược lại IsOrder="True" thì tìm mọi nơi nhưng những kết quả nằm trong khung bao sẽ được ưu tiên hiển thị trên các trang kết quả đầu tiên (điều kiện: Lx, Ly, Rx, Ry phải khác 0).

5.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

HasMoreItem

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết còn phần tử nào trong danh sách nữa không.

List

  • Kiểu dữ liệu: VietBandoPOI[].
  • Ý nghĩa biến: Danh sách các POI trả về.

TotalCount

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Tổng số vị trí thỏa điều kiện tìm kiếm.


6. SearchAllWithCategoryFilter

6.1. Cấu trúc

MultipleResponse<VietBandoPOI> SearchAllWithCategoryFilter(string Keyword, int Page, int PageSize, double Lx, double Ly, double Rx, double Ry, bool IsOrder, int CategoryCode);

6.2. Chức năng hàm

SearchAllWithCategoryFilter là hàm tìm kiếm theo từ khóa và CategoryCode (mã danh mục). Kết quả trả về thuộc khung bao được hiển thị trên các trang kết quả đầu tiên.

6.3. Input

Keyword

  • Kiểu dữ liệu: string.
  • Ý nghĩa biến: Từ khóa tìm kiếm.

Page

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Thứ tự trang kết quả trả về.

PageSize

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Số kết quả hiển thị trên một trang (tối đa 10).

Lx

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Tọa độ trái X của khung bao.

Ly

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Tọa độ trái Y của khung bao.

Rx

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Tọa độ phải X của khung bao.

Ry

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Tọa độ phải Y của khung bao.

IsOrder

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: ưu tiên vùng tìm kiếm. Nếu IsOrder="False" thì chỉ tìm kiếm trong khung bao, ngược lại IsOrder="True" thì kết quả tìm kiếm trong khung bao được hiển thị trên các trang kết quả đầu tiên (điều kiện: Lx, Ly, Rx, Ry phải khác 0).

CategoryCode

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Mã danh mục (category code) cần tìm. Nếu CategoryCode = "Null" thì hàm SearchAllWithCategoryFilter sẽ có chức năng như hàm SearchAll.

6.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

HasMoreItem

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết còn phần tử nào trong danh sách nữa không.

List

  • Kiểu dữ liệu: VietBandoPOI[].
  • Ý nghĩa biến: Danh sách các POI trả về.

TotalCount

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Tổng số vị trí thỏa điều kiện tìm kiếm.


7. SearchNearBy

7.1. Cấu trúc

MultipleResponse<VietBandoPOI> SearchNearBy(string Keyword, Point Point, double Radius, int Page, int PageSize);

7.2. Chức năng hàm

SearchNearBy là hàm tìm kiếm POI (địa điểm, cửa hàng, cơ sở kinh doanh...) theo từ khóa (Keyword) tại vị trí (Point) với bán kính (Radius) nhập vào.

7.3. Input

Keyword

  • Kiểu dữ liệu: string.
  • Ý nghĩa biến: Từ khóa tìm kiếm.

Point

  • Kiểu dữ liệu: Point.
  • Ý nghĩa biến: Vị trí cần tìm kiếm.

Radius

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Bán kính (tính theo mét, tối đa 30m).

Page

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Thứ tự trang kết quả trả về.

PageSize

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Số kết quả hiển thị trên một trang (tối đa 10).

7.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

HasMoreItem

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết còn phần tử nào trong danh sách nữa không.

List

  • Kiểu dữ liệu: VietBandoPOI[].
  • Ý nghĩa biến: Danh sách các POI trả về.

TotalCount

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Tổng số vị trí thỏa điều kiện tìm kiếm.


8. WhatHere

8.1. Cấu trúc

SingleResponse<VietBandoPOI> WhatHere(double Longitude, double Latitude);

8.2. Chức năng hàm

WhatHere là hàm lấy thông tin theo bán kính từ điểm có tọa độ (Longitude, Latitude) truyền vào. Nếu điểm truyền vào gần POI (địa điểm, cửa hàng, cơ sở kinh doanh...) thì trả về thông tin của POI (địa điểm, cửa hàng, cơ sở kinh doanh...), ngược lại lấy thông tin ranh giới hành chính.

8.3. Input

Longitude

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Kinh độ.

Latitude

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Vĩ độ.

8.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: VietBandoPOI.
  • Ý nghĩa biến: Thông tin POI trả về.

II. Tìm đường

1. CheckPointInShape

1.1. Cấu trúc

SingleResponse<bool> CheckPointInShape(Point Point, double Radius, Point[] Shape);

1.2. Chức năng hàm

CheckPointInShape là hàm kiểm tra điểm Point có nằm trên Shape không:

  • Nếu Shape có một phần tử thì kiểm tra điểm Point có trùng với điểm này không.
  • Nếu Shape có từ 2 phần tử trở lên và điểm đầu không trùng với điểm cuối thì kiểm tra điểm Point có nằm trên đường Polyline này không.
  • Nếu Shape có từ 2 phần tử trở lên và điểm đầu trùng với điểm cuối thì kiểm tra điểm Point có nằm trong vòng Ring này không.

1.3. Input

Point

  • Kiểu dữ liệu: Point.
  • Ý nghĩa biến: Điểm kiểm tra.

Radius

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Bán kính sai số.

Shape

  • Kiểu dữ liệu: Point[].
  • Ý nghĩa biến: Danh sách các điểm dùng để kiểm tra (tối đa 20 phần tử).

1.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết điểm kiểm tra Point có nằm trên Shape không.


2. FindShortestPath

2.1. Cấu trúc

SingleResponse<DirectionResult> FindShortestPath(Point[] Points, TransportType TransportType, bool AlleyAvoidance);

2.2. Chức năng hàm

FindShortestPath là hàm tìm đường đi ngắn nhất theo thứ tự các điểm truyền vào.

2.3. Input

Points

  • Kiểu dữ liệu: Point[].
  • Ý nghĩa biến: Danh sách các điểm mà lộ trình cần đi qua.

TransportType

  • Kiểu dữ liệu: TransportType.
  • Ý nghĩa biến: Loại phương tiện.

AlleyAvoidance

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết lộ trình có tránh hẻm không.

2.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: DirectionResult.
  • Ý nghĩa biến: Kết quả tìm đường.


3. FindShortestPathOrderFull

3.1. Cấu trúc

SingleResponse<FindShortestPathOrderResult> FindShortestPathOrderFull(Point[] Points, TransportType TransportType, bool AlleyAvoidance);

3.2. Chức năng hàm

FindShortestPathOrderFull là hàm tìm đường đi ngắn nhất có sắp xếp lại thứ tự các điểm truyền vào.

3.3. Input

Points

  • Kiểu dữ liệu: Point[].
  • Ý nghĩa biến: Danh sách các điểm mà lộ trình cần đi qua.

TransportType

  • Kiểu dữ liệu: TransportType.
  • Ý nghĩa biến: Loại phương tiện.

AlleyAvoidance

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết lộ trình có tránh hẻm không.

3.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value


4. FindShortestWithBarriers

4.1. Cấu trúc

SingleResponse<ShortestPathWithBarriersResult> FindShortestWithBarriers(Point[] Points, string[] Barriers, double DepartureTime, double[][] TimeRanges, TransportType TransportType, double VehicleWeight);

4.2. Chức năng hàm

FindShortestWithBarriers là hàm tìm đường với các ràng buộc về rào chắn.

4.3. Input

Points

  • Kiểu dữ liệu: Point[].
  • Ý nghĩa biến: Danh sách các điểm mà lộ trình cần đi qua.

Barriers

  • Kiểu dữ liệu: string[].
  • Ý nghĩa biến: Danh sách các rào chắn (chuỗi tọa độ theo định dạng WKT).

DepartureTime

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Thời gian khởi hành.

TimeRanges

  • Kiểu dữ liệu: double[][].
  • Ý nghĩa biến: Thời gian có hiệu lực của rào chắn.

TransportType

  • Kiểu dữ liệu: TransportType.
  • Ý nghĩa biến: Loại phương tiện.

VehicleWeight

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Trọng lượng phương tiện.

4.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value


5. GetDistances

5.1. Cấu trúc

SingleResponse<double[][]> GetDistances(Point[] Sources, Point[] Destinations, TransportType TransportType, bool AlleyAvoidance);

5.2. Chức năng hàm

GetDistances là hàm lấy khoảng cách từ các điểm xuất phát (Sources) đến các điểm đích truyền vào (Destinations).

5.3. Input

Sources

  • Kiểu dữ liệu: Point[].
  • Ý nghĩa biến: Danh sách các điểm xuất phát.

Destinations

  • Kiểu dữ liệu: Point[].
  • Ý nghĩa biến: Danh sách các điểm đích.

TransportType

  • Kiểu dữ liệu: TransportType.
  • Ý nghĩa biến: Loại phương tiện.

AlleyAvoidance

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết lộ trình có tránh hẻm không.

5.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: double[][].
  • Ý nghĩa biến: Mảng (2 chiều) khoảng cách với chỉ số dòng tương ứng với chỉ số của mảng điểm xuất phát, chỉ số cột tương ứng với chỉ số của mảng điểm đích đến.
  • Ví dụ: ta truyền vào 2 mảng
  •    Mảng nguồn: sources [P1, P2];
  •    Mảng đích: destinations[P3, P4].
  • Khi gọi hàm GetDistances thì hệ thống sẽ trả về mảng M như sau:
  •    M[0, 0] = P1P3 (khoảng cách giữa P1 và P3);
  •    M[0, 1] = P1P4 (khoảng cách giữa P1 và P4);
  •    M[1, 0] = P2P3 (khoảng cách giữa P2 và P3);
  •    M[1, 1] = P2P4 (khoảng cách giữa P2 và P4).
  • Lưu ý: Nếu không tìm thấy đường đi giữa điểm nguồn và điểm đích thì giá trị bằng -1. Ví dụ: M[0, 0] = P1P3 = -1 nghĩa là không tìm thấy đường đi giữa P1 và P3.


6. GetDistancesOnPaths

6.1. Cấu trúc

SingleResponse<double[]> GetDistancesOnPaths(Point Source, Point[] Destinations, TransportType TransportType, bool AlleyAvoidance, bool IsReverse);

6.2. Chức năng hàm

GetDistancesOnPaths là hàm lấy khoảng cách đường đi từ điểm xuất phát (Source) đến các điểm đích truyền vào (Destinations).

6.3. Input

Source

  • Kiểu dữ liệu: Point.
  • Ý nghĩa biến: Điểm xuất phát.

Destinations

  • Kiểu dữ liệu: Point[].
  • Ý nghĩa biến: Danh sách các điểm đích (tối đa 20 phần tử).

TransportType

  • Kiểu dữ liệu: TransportType.
  • Ý nghĩa biến: Loại phương tiện.

AlleyAvoidance

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết lộ trình có tránh hẻm không.

IsReverse

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết có tìm lộ trình ngược lại không.

6.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: double[].
  • Ý nghĩa biến: Danh sách khoảng cách đường đi trả về tương ứng với danh sách điểm đích đến và ngược lại.


7. SnapToStreet

7.1. Cấu trúc

SingleResponse<Point[]> SnapToStreet(Point[] Points);

7.2. Chức năng hàm

SnapToStreet là hàm trả về một tập điểm được hút vào đường (mô phỏng đường đi) đi qua tập điểm truyền vào.

7.3. Input

Points

  • Kiểu dữ liệu: Point[].
  • Ý nghĩa biến: Danh sách các điểm truyền vào (tối đa 100 điểm).

7.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: Point[].
  • Ý nghĩa biến: Danh sách các điểm được hút vào đường.


8. ViaRoute

8.1. Cấu trúc

SingleResponse<ViaRouteResult> ViaRoute(Point[] Points, VehicleType VehicleType, RouteCriteria RouteCriteria, int Alternative, bool Geometry, bool Instructions, bool Distance, bool Duration, bool Uturn);

8.2. Chức năng hàm

ViaRoute là hàm tìm đường đi nâng cao hỗ trợ kết quả nhiều lộ trình (lộ trình thay thế) và tìm đường theo tình trạng giao thông (hiện tại chưa chính xác do dữ liệu đang hoàn thiện). Lộ trình thay thế không hỗ trợ đối với tìm đường đi nhiều hơn 2 điểm, do phức tạp của việc tổ hợp. Ngay cả khi đó cũng không đảm bảo sẽ có đáp án thay thế, do thuật toán sẽ không trả về lộ trình thay thế bất hợp lý. Lưu ý rằng đơn vị đo là mét cho khoảng cách và giây cho thời gian.

8.3. Input

Points

  • Kiểu dữ liệu: Point[].
  • Ý nghĩa biến: Danh sách các điểm truyền vào (tối đa 100 điểm).

VehicleType

  • Kiểu dữ liệu: VehicleType.
  • Ý nghĩa biến: Loại phương tiện. Hiện tại chỉ hỗ trợ đi bộ, xe máy, xe hơi và xe tải.

RouteCriteria

  • Kiểu dữ liệu: RouteCriteria.
  • Ý nghĩa biến: Tiêu chí tìm đường (nhanh nhất, ngắn nhất và theo tình trạng giao thông).

Alternative

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Số lượng lộ trình thay thế mong muốn trả về (giá trị từ 0 đến 2). Tuy nhiên, không đảm bảo sẽ có lộ trình thay thế, do thuật toán chỉ trả về nếu lộ trình đó hợp lý. Không hỗ trợ đối với tìm đường qua nhiều hơn 2 điểm.

Geometry

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết có trả về tập tọa độ của lộ trình không.

Instructions

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết có trả về hướng dẫn của lộ trình không.

Distance

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết có trả về khoảng cách di chuyển tại mỗi điểm trung gian và vị trí rẽ không.

Duration

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết có trả về quãng thời gian di chuyển tại mỗi điểm trung gian và vị trí rẽ không.

Uturn

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết có cho phép quay đầu tại các điểm trung gian hay không.

8.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: ViaRouteResult.
  • Ý nghĩa biến: Danh sách lộ trình kết quả.

III. Thông tin đường

1. BatchGetRoadSpeed

1.1. Cấu trúc

SingleResponse<BatchGetRoadSpeedReult> BatchGetRoadSpeed(double[] Headings, Point[] Points, double[] Speeds, TransportTypeSpeed[] TransportTypes, int Radius);

1.2. Chức năng hàm

BatchGetRoadSpeed là hàm lấy thông tin tốc độ trên các đoạn đường tương ứng với một tập điểm truyền vào.

1.3. Input

Headings

  • Kiểu dữ liệu: double[].
  • Ý nghĩa biến: Hướng đi của thiết bị trên đoạn đường hiện tại.

Points

  • Kiểu dữ liệu: Point[].
  • Ý nghĩa biến: Danh sách các điểm truyền vào (tối đa 100 điểm).

Speeds

  • Kiểu dữ liệu: double[].
  • Ý nghĩa biến: Tốc độ trên đoạn đường hiện tại.

TransportTypes

  • Kiểu dữ liệu: TransportTypeSpeed[].
  • Ý nghĩa biến: Các loại phương tiện.

Radius

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Bán kính (tính theo mét, tối đa 30m).

1.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: BatchGetRoadSpeedReult.
  • Ý nghĩa biến: Thông tin tốc độ trả về của thiết bị.


2. ForecastRoadsByTrafficSign

2.1. Cấu trúc

SingleResponse<ForecastTrackingGeoReturn> ForecastRoadsByTrafficSign(Point Point, double Speed, double Heading, TransportTypeSpeed TransportType, int Distance);

2.2. Chức năng hàm

ForecastRoadsByTrafficSign là hàm lấy thông tin, biển báo tốc độ của đoạn đường hiện tại và thông tin, biển báo tốc độ của những đoạn đường sẽ gặp trong bán kính Distance.

2.3. Input

Point

  • Kiểu dữ liệu: Point.
  • Ý nghĩa biến: Tọa độ điểm cần lấy thông tin.

Speed

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Tốc độ trên đoạn đường hiện tại.

Heading

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Hướng đi của thiết bị trên đoạn đường hiện tại.

TransportType

Distance

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Quãng đường sẽ mở rộng tìm kiếm.

2.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value


3. GetRoadSpeed

3.1. Cấu trúc

SingleResponse<GetRoadSpeedReult> GetRoadSpeed(double Heading, Point Point, double Speed, int Radius);

3.2. Chức năng hàm

GetRoadSpeed là hàm lấy thông tin tốc độ của các loại phương tiện trên đoạn đường hiện tại từ một điểm truyền vào.

3.3. Input

Heading

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Hướng di chuyển của thiết bị trên đoạn đường hiện tại.

Point

  • Kiểu dữ liệu: Point.
  • Ý nghĩa biến: Toạ độ của phương tiện.

Speed

  • Kiểu dữ liệu: double.
  • Ý nghĩa biến: Tốc độ của phương tiện trên đoạn đường hiện tại.

Radius

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Bán kính (tính theo mét, tối đa 30m).

3.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value


4. GetTrackingInformation

4.1. Cấu trúc

SingleResponse<TrackingInformationResult> GetTrackingInformation(Point PrePoint, Point CurPoint, TransportTypeSpeed TransportType, double Radius);

4.2. Chức năng hàm

GetTrackingInformation là hàm lấy thông tin, biển báo tốc độ của đoạn đường hiện tại.

4.3. Input

PrePoint

  • Kiểu dữ liệu: Point.
  • Ý nghĩa biến: Điểm trước đó.

CurPoint

  • Kiểu dữ liệu: Point.
  • Ý nghĩa biến: Điểm hiện tại.

TransportType

Radius

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Bán kính (tính theo mét, tối đa 30m).

4.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: TrackingInformationResult.
  • Ý nghĩa biến: Thông tin, biển báo tốc độ của đoạn đường hiện tại.

IV. Danh mục

1. GetAllGroupCategories

1.1. Cấu trúc

MultipleResponse<GroupCategory> GetAllGroupCategories(bool IsGetCategory);

1.2. Chức năng hàm

GetAllGroupCategories là hàm lấy tất cả các nhóm phân loại vị trí của hệ thống.

1.3. Input

IsGetCategory

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết có lấy danh mục (Category) không.

1.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

HasMoreItem

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết còn phần tử nào trong danh sách nữa không.

List

  • Kiểu dữ liệu: GroupCategory[].
  • Ý nghĩa biến: Danh sách nhóm trả về.

TotalCount

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Tổng số vị trí thỏa điều kiện tìm kiếm.


2. GetCategoriesInGroup

2.1. Cấu trúc

MultipleResponse<Category> GetCategoriesInGroup(int GroupCode);

2.2. Chức năng hàm

GetCategoriesInGroup là hàm lấy tất cả các danh mục trong nhóm từ GroupCode truyền vào.

2.3. Input

GroupCode

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Mã nhóm (group code).

2.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

HasMoreItem

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết còn phần tử nào trong danh sách nữa không.

List

  • Kiểu dữ liệu: Category[].
  • Ý nghĩa biến: Danh sách danh mục trả về.

TotalCount

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Tổng số vị trí thỏa điều kiện tìm kiếm.


3. GetCategoryDetail

3.1. Cấu trúc

SingleResponse<Category> GetCategoryDetail(int CategoryCode);

3.2. Chức năng hàm

GetCategoryDetail là hàm lấy thông tin chi tiết của danh mục từ CategoryCode truyền vào.

3.3. Input

CategoryCode

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Mã danh mục (category code).

3.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: Category.
  • Ý nghĩa biến: Thông tin chi tiết của danh mục trả về.


4. GetGroupCategoryDetail

4.1. Cấu trúc

SingleResponse<GroupCategory> GetGroupCategoryDetail(int GroupCode, bool IsGetCategory);

4.2. Chức năng hàm

GetGroupCategoryDetail là hàm lấy thông tin chi tiết của nhóm từ GroupCode truyền vào.

4.3. Input

GroupCode

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Mã nhóm (group code).

IsGetCategory

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết hàm có lấy danh mục hay không.

4.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: GroupCategory.
  • Ý nghĩa biến: Thông tin chi tiết của nhóm trả về.

V. Đơn vị hành chính

1. GetCentroidOfRegion

1.1. Cấu trúc

SingleResponse<Point> GetCentroidOfRegion(string Code);

1.2. Chức năng hàm

GetCentroidOfRegion là hàm lấy tâm của vùng ranh giới hành chính từ một mã đơn vị hành chính. Tham khảo mã đơn vị hành chính tại http://www.gso.gov.vn/dmhc2015/.

1.3. Input

Code

  • Kiểu dữ liệu: string.
  • Ý nghĩa biến: Mã ranh giới hành chính.

1.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: Point.
  • Ý nghĩa biến: Tâm vùng ranh giới hành chính.


2. GetMBROfRegion

2.1. Cấu trúc

SingleResponse<MBROfRegionResult> GetMBROfRegion(string Code);

2.2. Chức năng hàm

GetMBROfRegion là hàm lấy khung bao của vùng ranh giới hành chính từ một mã đơn vị hành chính quốc gia. Tham khảo mã đơn vị hành chính tại http://www.gso.gov.vn/dmhc2015/.

2.3. Input

Code

  • Kiểu dữ liệu: string.
  • Ý nghĩa biến: Mã đơn vị hành chính quốc gia.

2.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: MBROfRegionResult.
  • Ý nghĩa biến: Khung bao vùng ranh giới hành chính.


3. GetNameOfRegion

3.1. Cấu trúc

SingleResponse<string> GetNameOfRegion(string Code);

3.2. Chức năng hàm

GetNameOfRegion là hàm lấy tên của vùng ranh giới hành chính từ một mã đơn vị hành chính quốc gia. Tham khảo mã đơn vị hành chính tại http://www.gso.gov.vn/dmhc2015/.

3.3. Input

Code

  • Kiểu dữ liệu: string.
  • Ý nghĩa biến: Mã đơn vị hành chính quốc gia.

3.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: string.
  • Ý nghĩa biến: Tên vùng ranh giới hành chính.


4. GetSubRegionCodesOfRegion

4.1. Cấu trúc

SingleResponse<string[]> GetSubRegionCodesOfRegion(string Code);

4.2. Chức năng hàm

GetSubRegionCodesOfRegion là hàm lấy danh sách Mã đơn vị hành chính quốc gia trực thuộc theo vùng từ một mã đơn vị hành chính quốc gia. Tham khảo mã đơn vị hành chính tại http://www.gso.gov.vn/dmhc2015/.

4.3. Input

Code

  • Kiểu dữ liệu: string.
  • Ý nghĩa biến: Mã đơn vị hành chính quốc gia.

4.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: string[].
  • Ý nghĩa biến: Danh sách Mã đơn vị hành chính quốc gia con.


5. GetSubRegionNameCodesOfRegion

5.1. Cấu trúc

SingleResponse<SubRegionNameCodesResult> GetSubRegionNameCodesOfRegion(string Code);

5.2. Chức năng hàm

GetSubRegionNameCodesOfRegion là hàm lấy danh sách Mã và Tên ranh giới hành chính trực thuộc theo vùng từ một mã đơn vị hành chính quốc gia truyền vào. Tham khảo mã đơn vị hành chính tại http://www.gso.gov.vn/dmhc2015/.

5.3. Input

Code

  • Kiểu dữ liệu: string.
  • Ý nghĩa biến: Mã đơn vị hành chính quốc gia.

5.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: SubRegionNameCodesResult.
  • Ý nghĩa biến: Danh sách Mã và Tên ranh giới hành chính con trả về.


6. GetSubRegionNamesOfRegion

6.1. Cấu trúc

SingleResponse<string[]> GetSubRegionNamesOfRegion(string Code);

6.2. Chức năng hàm

GetSubRegionNamesOfRegion là hàm lấy danh sách tên ranh giới hành chính trực thuộc theo vùng từ một mã đơn vị hành chính quốc gia truyền vào. Tham khảo mã đơn vị hành chính tại http://www.gso.gov.vn/dmhc2015/.

6.3. Input

Code

  • Kiểu dữ liệu: string.
  • Ý nghĩa biến: Mã đơn vị hành chính quốc gia.

6.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: string[].
  • Ý nghĩa biến: Danh sách Tên ranh giới hành chính con trả về.


7. GetThumbnailOfRegion

7.1. Cấu trúc

SingleResponse<byte[]> GetThumbnailOfRegion(string Code, int Width, int Height, RegionColor RegionColor, int DefaultColor, int ImgType);

7.2. Chức năng hàm

GetThumbnailOfRegion là hàm vẽ vùng ranh giới hành chính.

7.3. Input

Code

  • Kiểu dữ liệu: string.
  • Ý nghĩa biến: Mã đơn vị hành chính quốc gia. Tham khảo mã đơn vị hành chính tại http://www.gso.gov.vn/dmhc2015/.

Width

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Chiều rộng ảnh (<=128).

Height

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Chiều cao ảnh (<=128).

RegionColor

  • Kiểu dữ liệu: RegionColor.
  • Ý nghĩa biến: Màu vùng ranh giới hành chính.

DefaultColor

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Màu mặc định (1: sử dụng màu default, 0: sử dụng màu truyền vào).

ImgType

  • Kiểu dữ liệu: int.
  • Ý nghĩa biến: Kiểu ảnh (0: png, 1: jpg, 2: bmp).

7.4. Output

Error

  • Kiểu dữ liệu: Error.
  • Ý nghĩa biến: Thông tin lỗi (nếu có).

IsSuccess

  • Kiểu dữ liệu: bool.
  • Ý nghĩa biến: Trạng thái cho biết gọi hàm có thành công không.

ResponseTime

  • Kiểu dữ liệu: date.
  • Ý nghĩa biến: Thời điểm hệ thống trả kết quả.

Value

  • Kiểu dữ liệu: byte[].
  • Ý nghĩa biến: Vùng đệm ảnh.