Lớp DirectionsService
Lớp google.maps.DirectionsService
Một dịch vụ để tính toán đường đi giữa hai hoặc nhiều địa điểm.
Truy cập bằng cách gọi const {DirectionsService} = await google.maps.importLibrary("routes")
.
Xem Thư viện trong Maps JavaScript API.
Hàm dựng | |
---|---|
DirectionsService |
DirectionsService() Tham số: Không có
Tạo một phiên bản mới của DirectionsService để gửi các truy vấn chỉ đường đến máy chủ của Google. |
Phương thức | |
---|---|
route |
route(request[, callback]) Tham số:
Giá trị trả về:
Promise<DirectionsResult> Đưa ra yêu cầu tìm đường. |
Giao diện DirectionsRequest
google.maps.DirectionsRequest
giao diện
Một cụm từ tìm kiếm chỉ đường sẽ được gửi đến DirectionsService
.
Thuộc tính | |
---|---|
destination |
Loại:
string|LatLng|Place|LatLngLiteral Vị trí của điểm đến. Bạn có thể chỉ định tham số này dưới dạng một chuỗi cần được mã hoá địa lý, hoặc một LatLng , hoặc một Place . Bắt buộc. |
origin |
Loại:
string|LatLng|Place|LatLngLiteral Vị trí xuất xứ. Bạn có thể chỉ định tham số này dưới dạng một chuỗi cần được mã hoá địa lý, hoặc một LatLng , hoặc một Place . Bắt buộc. |
travelMode |
Loại:
TravelMode Loại định tuyến được yêu cầu. Bắt buộc. |
avoidFerries optional |
Loại:
boolean optional Nếu true , hướng dẫn dịch vụ Chỉ đường tránh phà khi có thể. Không bắt buộc. |
avoidHighways optional |
Loại:
boolean optional Nếu true , hãy hướng dẫn dịch vụ Chỉ đường tránh đường cao tốc nếu có thể. Không bắt buộc. |
avoidTolls optional |
Loại:
boolean optional Nếu true , hãy hướng dẫn dịch vụ Đường đi tránh đường thu phí khi có thể. Không bắt buộc. |
drivingOptions optional |
Loại:
DrivingOptions optional Các chế độ cài đặt chỉ áp dụng cho những yêu cầu có travelMode là DRIVING . Đối tượng này sẽ không ảnh hưởng đến các phương thức di chuyển khác. |
language optional |
Loại:
string optional Giá trị nhận dạng ngôn ngữ cho ngôn ngữ mà kết quả sẽ được trả về (nếu có thể). Xem danh sách ngôn ngữ được hỗ trợ. |
optimizeWaypoints optional |
Loại:
boolean optional Nếu được đặt thành true , thì DirectionsService sẽ cố gắng sắp xếp lại các điểm tham chiếu trung gian được cung cấp để giảm thiểu tổng chi phí của tuyến đường. Nếu các điểm tham chiếu được tối ưu hoá, hãy kiểm tra DirectionsRoute.waypoint_order trong phản hồi để xác định thứ tự mới. |
provideRouteAlternatives optional |
Loại:
boolean optional Có nên cung cấp các tuyến đường thay thế hay không. Không bắt buộc. |
region optional |
Loại:
string optional Mã khu vực được dùng làm hệ số thiên vị cho các yêu cầu mã hoá địa lý. Mã khu vực chấp nhận giá trị gồm 2 ký tự ccTLD ("miền cấp cao nhất"). Hầu hết mã ccTLD đều giống với mã ISO 3166-1, ngoại trừ một số trường hợp đáng chú ý. Ví dụ: ccTLD của Vương quốc Anh là "uk" ( .co.uk ) trong khi mã ISO 3166-1 của quốc gia này là "gb" (về mặt kỹ thuật là cho thực thể "Vương quốc Anh và Bắc Ireland"). |
transitOptions optional |
Loại:
TransitOptions optional Các chế độ cài đặt chỉ áp dụng cho những yêu cầu có travelMode là TRANSIT. Đối tượng này sẽ không ảnh hưởng đến các phương thức di chuyển khác. |
unitSystem optional |
Loại:
UnitSystem optional Mặc định: Hệ thống đơn vị được sử dụng ở quốc gia xuất xứ.
Hệ đơn vị ưu tiên dùng khi hiển thị khoảng cách. |
waypoints optional |
Loại:
Array<DirectionsWaypoint> optional Mảng gồm các điểm tham chiếu trung gian. Đường đi được tính từ điểm bắt đầu đến điểm đến thông qua từng điểm tham chiếu trong mảng này. Hãy xem hướng dẫn dành cho nhà phát triển để biết số lượng điểm đánh dấu tối đa được phép. Không hỗ trợ điểm trung gian cho chỉ đường bằng phương tiện công cộng. Không bắt buộc. |
Hằng số DirectionsStatus
Hằng số google.maps.DirectionsStatus
Trạng thái do DirectionsService
trả về khi hoàn tất lệnh gọi đến route()
. Chỉ định các giá trị này theo giá trị hoặc bằng cách sử dụng tên của hằng số. Ví dụ: 'OK'
hoặc google.maps.DirectionsStatus.OK
.
Truy cập bằng cách gọi const {DirectionsStatus} = await google.maps.importLibrary("routes")
.
Xem Thư viện trong Maps JavaScript API.
Hằng số | |
---|---|
INVALID_REQUEST |
DirectionsRequest bạn cung cấp không hợp lệ. |
MAX_WAYPOINTS_EXCEEDED |
Bạn đã cung cấp quá nhiều DirectionsWaypoint trong DirectionsRequest . Hãy xem hướng dẫn dành cho nhà phát triển để biết số lượng điểm đánh dấu tối đa được phép. |
NOT_FOUND |
Không thể mã hoá địa lý ít nhất một trong các điểm xuất phát, điểm đến hoặc điểm tham chiếu. |
OK |
Phản hồi chứa một DirectionsResult hợp lệ. |
OVER_QUERY_LIMIT |
Trang web đã vượt quá giới hạn yêu cầu trong một khoảng thời gian quá ngắn. |
REQUEST_DENIED |
Trang web không được phép sử dụng dịch vụ chỉ đường. |
UNKNOWN_ERROR |
Không xử lý được yêu cầu chỉ đường do lỗi máy chủ. Yêu cầu có thể thành công nếu bạn thử lại. |
ZERO_RESULTS |
Không tìm thấy tuyến đường nào giữa điểm khởi hành và điểm đến. |
Giao diện DirectionsResult
google.maps.DirectionsResult
giao diện
Phản hồi chỉ đường được truy xuất từ máy chủ chỉ đường. Bạn có thể kết xuất các đối tượng này bằng cách sử dụng DirectionsRenderer
hoặc phân tích cú pháp đối tượng này và tự kết xuất. Bạn phải hiển thị cảnh báo và bản quyền như được nêu trong Điều khoản dịch vụ của Nền tảng Google Maps. Xin lưu ý rằng mặc dù kết quả này có "dạng JSON", nhưng không phải là JSON theo đúng nghĩa, vì kết quả này gián tiếp bao gồm các đối tượng LatLng
.
Thuộc tính | |
---|---|
request |
Loại:
DirectionsRequest DirectionsRequest đã tạo ra kết quả này. |
routes |
Loại:
Array<DirectionsRoute> Một mảng gồm các DirectionsRoute , mỗi DirectionsRoute chứa thông tin về các đoạn đường và bước mà đoạn đường đó bao gồm. Chỉ có một tuyến đường, trừ phi DirectionsRequest được tạo khi provideRouteAlternatives được đặt thành true . |
available_travel_modes optional |
Loại:
Array<TravelMode> optional Chứa một mảng các phương thức di chuyển có sẵn. Trường này được trả về khi một yêu cầu chỉ định chế độ di chuyển và không nhận được kết quả. Mảng này chứa các chế độ di chuyển có sẵn ở các quốc gia trong nhóm điểm tham chiếu đã cho. Trường này sẽ không được trả về nếu một hoặc nhiều điểm đánh dấu là "điểm đánh dấu trung gian". |
geocoded_waypoints optional |
Loại:
Array<DirectionsGeocodedWaypoint> optional Một mảng gồm các DirectionsGeocodedWaypoint , mỗi DirectionsGeocodedWaypoint chứa thông tin về hoạt động mã hoá địa lý của điểm xuất phát, điểm đến và điểm tham chiếu. |
Lớp DirectionsRenderer
Lớp google.maps.DirectionsRenderer
Kết xuất chỉ đường lấy được từ DirectionsService
.
Lớp này mở rộng MVCObject
.
Truy cập bằng cách gọi const {DirectionsRenderer} = await google.maps.importLibrary("routes")
.
Xem Thư viện trong Maps JavaScript API.
Hàm dựng | |
---|---|
DirectionsRenderer |
DirectionsRenderer([opts]) Tham số:
Tạo trình kết xuất bằng các lựa chọn đã cho. Đường đi có thể được hiển thị trên bản đồ (dưới dạng lớp phủ trực quan) hoặc trên bảng điều khiển <div> (dưới dạng hướng dẫn bằng văn bản). |
Phương thức | |
---|---|
getDirections |
getDirections() Tham số: Không có
Giá trị trả về:
DirectionsResult Trả về nhóm chỉ dẫn hiện tại của trình kết xuất. |
getMap |
getMap() Tham số: Không có
Giá trị trả về:
Map Trả về bản đồ mà DirectionsResult được kết xuất. |
getPanel |
getPanel() Tham số: Không có
Giá trị trả về:
HTMLElement|null Trả về bảng điều khiển <div> mà DirectionsResult được kết xuất. |
getRouteIndex |
getRouteIndex() Tham số: Không có
Giá trị trả về:
number Trả về chỉ mục tuyến đường hiện tại (dựa trên 0) mà đối tượng DirectionsRenderer này đang sử dụng. |
setDirections |
setDirections(directions) Tham số:
Giá trị trả về: Không có
Đặt trình kết xuất để sử dụng kết quả từ DirectionsService . Việc đặt một bộ chỉ dẫn hợp lệ theo cách này sẽ hiển thị chỉ dẫn trên bản đồ và bảng điều khiển được chỉ định của trình kết xuất. |
setMap |
setMap(map) Tham số:
Giá trị trả về: Không có
Phương thức này chỉ định bản đồ mà chỉ đường sẽ được hiển thị. Truyền null để xoá chỉ đường khỏi bản đồ. |
setOptions |
setOptions(options) Tham số:
Giá trị trả về: Không có
Thay đổi chế độ cài đặt lựa chọn của DirectionsRenderer này sau khi khởi tạo. |
setPanel |
setPanel(panel) Tham số:
Giá trị trả về: Không có
Phương thức này hiển thị đường đi trong một <div> . Truyền null để xoá nội dung khỏi bảng điều khiển. |
setRouteIndex |
setRouteIndex(routeIndex) Tham số:
Giá trị trả về: Không có
Đặt chỉ mục (bắt đầu từ 0) của tuyến đường trong đối tượng DirectionsResult để hiển thị. Theo mặc định, tuyến đường đầu tiên trong mảng sẽ được hiển thị. |
Kế thừa:
addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
Sự kiện | |
---|---|
directions_changed |
function() Đối số: Không có
Sự kiện này được kích hoạt khi chỉ dẫn được kết xuất thay đổi, khi một DirectionsResult mới được đặt hoặc khi người dùng hoàn tất việc kéo một thay đổi vào đường dẫn chỉ dẫn. |
Giao diện DirectionsRendererOptions
google.maps.DirectionsRendererOptions
giao diện
Đối tượng này xác định các thuộc tính có thể được đặt trên một đối tượng DirectionsRenderer
.
Thuộc tính | |
---|---|
directions optional |
Loại:
DirectionsResult optional Đường đi để hiển thị trên bản đồ và/hoặc trong bảng <div> , được truy xuất dưới dạng đối tượng DirectionsResult từ DirectionsService . |
draggable optional |
Loại:
boolean optional Nếu true , cho phép người dùng kéo và sửa đổi đường dẫn của các tuyến đường do DirectionsRenderer này kết xuất. |
hideRouteList optional |
Loại:
boolean optional Mặc định:
false Thuộc tính này cho biết liệu trình kết xuất có cung cấp danh sách các tuyến đường mà người dùng có thể chọn trong bảng điều hướng hay không. |
infoWindow optional |
Loại:
InfoWindow optional InfoWindow để hiển thị thông tin văn bản khi người dùng nhấp vào một điểm đánh dấu. Nội dung hiện có trong cửa sổ thông tin sẽ bị ghi đè và vị trí của cửa sổ này sẽ được di chuyển. Nếu bạn không chỉ định cửa sổ thông tin, DirectionsRenderer sẽ tạo và sử dụng cửa sổ thông tin riêng. Thuộc tính này sẽ bị bỏ qua nếu bạn đặt suppressInfoWindows thành true . |
map optional |
Loại:
Map optional Bản đồ để hiển thị đường đi. |
markerOptions optional |
Loại:
MarkerOptions optional Các lựa chọn cho điểm đánh dấu. Tất cả các điểm đánh dấu do DirectionsRenderer hiển thị sẽ sử dụng các lựa chọn này. |
panel optional |
Loại:
HTMLElement optional <div> để hiển thị các bước chỉ đường. |
polylineOptions optional |
Loại:
PolylineOptions optional Các lựa chọn cho đường nhiều đoạn. Tất cả các đường nhiều đoạn do DirectionsRenderer kết xuất sẽ sử dụng các lựa chọn này. |
preserveViewport optional |
Loại:
boolean optional Mặc định:
false Nếu bạn đặt lựa chọn này thành true hoặc chưa bao giờ đặt tâm và mức thu phóng của bản đồ, thì bản đồ đầu vào sẽ được đặt ở giữa và thu phóng theo hộp giới hạn của tập hợp chỉ đường này. |
routeIndex optional |
Loại:
number optional Chỉ mục của tuyến đường trong đối tượng DirectionsResult . Giá trị mặc định là "0". |
suppressBicyclingLayer optional |
Loại:
boolean optional Ngăn chặn việc kết xuất BicyclingLayer khi có yêu cầu chỉ đường cho xe đạp. |
suppressInfoWindows optional |
Loại:
boolean optional Ngăn việc hiển thị cửa sổ thông tin. |
suppressMarkers optional |
Loại:
boolean optional Ngăn chặn việc hiển thị các điểm đánh dấu. |
suppressPolylines optional |
Loại:
boolean optional Ngăn kết xuất nhiều đường. |
Giao diện DirectionsWaypoint
google.maps.DirectionsWaypoint
giao diện
DirectionsWaypoint
đại diện cho một vị trí giữa điểm khởi hành và điểm đến mà chuyến đi phải đi qua.
Thuộc tính | |
---|---|
location optional |
Loại:
string|LatLng|LatLngLiteral|Place optional Vị trí điểm tham chiếu. Có thể là một chuỗi địa chỉ, LatLng hoặc Place . Không bắt buộc. |
stopover optional |
Loại:
boolean optional Mặc định:
true Nếu true , thì tức là điểm đánh dấu này là một điểm dừng giữa điểm khởi hành và điểm đến. Điều này có tác dụng chia tuyến đường thành 2 chặng. Nếu false , cho biết tuyến đường nên được điều chỉnh để đi qua điểm tham chiếu này, nhưng không được chia thành 2 chặng. Điều này rất hữu ích nếu bạn muốn tạo một tuyến đường để phản hồi thao tác kéo điểm tham chiếu của người dùng trên bản đồ. |
Giao diện DirectionsGeocodedWaypoint
google.maps.DirectionsGeocodedWaypoint
giao diện
Một điểm tham chiếu duy nhất được mã hoá địa lý.
Thuộc tính | |
---|---|
partial_match optional |
Loại:
boolean optional Cho dù trình mã hoá địa lý không trả về kết quả khớp chính xác cho điểm tham chiếu ban đầu, nhưng vẫn có thể khớp một phần của địa chỉ được yêu cầu. |
place_id optional |
Loại:
string optional Mã địa điểm được liên kết với điểm đánh dấu. Mã địa điểm giúp xác định riêng một địa điểm trong cơ sở dữ liệu của Google Địa điểm và trên Google Maps. Tìm hiểu thêm về Mã địa điểm trong hướng dẫn dành cho nhà phát triển Places API. |
types optional |
Loại:
Array<string> optional Một mảng gồm các chuỗi biểu thị loại phần tử được trả về đã được mã hoá địa lý. Để biết danh sách các chuỗi có thể có, hãy tham khảo phần Các loại thành phần địa chỉ trong Hướng dẫn dành cho nhà phát triển. |
Giao diện DirectionsRoute
google.maps.DirectionsRoute
giao diện
Một tuyến đường duy nhất chứa một nhóm chặng trong DirectionsResult
. Xin lưu ý rằng mặc dù đối tượng này có "dạng JSON", nhưng không phải là JSON theo đúng nghĩa, vì đối tượng này bao gồm trực tiếp và gián tiếp các đối tượng LatLng
.
Thuộc tính | |
---|---|
bounds |
Loại:
LatLngBounds Ranh giới của tuyến đường này. |
copyrights |
Loại:
string Văn bản bản quyền sẽ xuất hiện cho tuyến đường này. |
legs |
Loại:
Array<DirectionsLeg> Một mảng gồm các DirectionsLeg , mỗi DirectionsLeg chứa thông tin về các bước mà mảng đó bao gồm. Mỗi điểm dừng chân hoặc đích đến được chỉ định sẽ có một chặng. Vì vậy, một tuyến đường không có điểm dừng chân sẽ chứa một DirectionsLeg và một tuyến đường có một điểm dừng chân sẽ chứa hai điểm. |
overview_path |
Một mảng gồm các LatLng đại diện cho toàn bộ khoá học của tuyến đường này. Đường dẫn này được đơn giản hoá để phù hợp trong những ngữ cảnh cần một số ít đỉnh (chẳng hạn như URL của Static Maps API). |
overview_polyline |
Loại:
string Biểu thị bằng chuỗi nhiều đường được mã hoá của tuyến đường trong overview_path. Đường nhiều đường này là đường dẫn gần đúng (được làm mịn) của chỉ đường thu được. |
summary |
Loại:
string Chứa nội dung mô tả ngắn bằng văn bản cho tuyến đường, phù hợp để đặt tên và phân biệt tuyến đường với các tuyến đường thay thế. |
warnings |
Loại:
Array<string> Cảnh báo sẽ xuất hiện khi chỉ đường. |
waypoint_order |
Loại:
Array<number> Nếu optimizeWaypoints được đặt thành true , trường này sẽ chứa hoán vị được sắp xếp lại của các điểm tham chiếu đầu vào. Ví dụ: nếu đầu vào là:Điểm xuất phát: Los Angeles Điểm dừng chân: Dallas, Bangor, Phoenix Điểm đến: New York và đầu ra được tối ưu hoá được sắp xếp như sau: Điểm xuất phát: Los Angeles Điểm dừng chân: Phoenix, Dallas, Bangor Điểm đến: New York thì trường này sẽ là một Array chứa các giá trị [2, 0, 1]. Xin lưu ý rằng các điểm đánh dấu được đánh số từ 0.Nếu bất kỳ điểm tham chiếu đầu vào nào có stopover được đặt thành false , thì trường này sẽ trống vì tính năng tối ưu hoá tuyến đường không dùng được cho những truy vấn như vậy. |
fare optional |
Loại:
TransitFare optional Tổng giá vé cho toàn bộ chuyến đi bằng phương tiện công cộng. Chỉ áp dụng cho các yêu cầu về phương tiện công cộng. |
Giao diện DirectionsLeg
google.maps.DirectionsLeg
giao diện
Một chặng bao gồm một nhóm các bước trong một DirectionsResult
. Một số trường trong chặng có thể không được trả về cho tất cả các yêu cầu. Xin lưu ý rằng mặc dù kết quả này có "dạng JSON", nhưng không phải là JSON theo đúng nghĩa, vì kết quả này bao gồm trực tiếp và gián tiếp các đối tượng LatLng
.
Thuộc tính | |
---|---|
end_address |
Loại:
string Địa chỉ của điểm đến trong chặng này. Bạn nên đọc nội dung này như hiện trạng. Đừng phân tích cú pháp địa chỉ được định dạng theo cách lập trình. |
end_location |
Loại:
LatLng DirectionsService tính toán đường đi giữa các vị trí bằng cách sử dụng phương tiện di chuyển gần nhất (thường là đường bộ) tại vị trí bắt đầu và kết thúc. end_location cho biết đích đến thực tế đã được mã hoá địa lý, có thể khác với end_location của bước cuối cùng nếu, chẳng hạn như, đường không gần với đích đến của chặng này. |
start_address |
Loại:
string Địa chỉ của điểm khởi hành của chặng bay này. Bạn nên đọc nội dung này như hiện trạng. Đừng phân tích cú pháp địa chỉ được định dạng theo cách lập trình. |
start_location |
Loại:
LatLng DirectionsService tính toán đường đi giữa các vị trí bằng cách sử dụng phương tiện di chuyển gần nhất (thường là đường bộ) tại vị trí bắt đầu và kết thúc. start_location cho biết vị trí thực tế được mã hoá địa lý, có thể khác với start_location của bước đầu tiên nếu, chẳng hạn như đường không gần với điểm bắt đầu của chặng này. |
steps |
Loại:
|