Route

Đóng gói một tuyến đường, bao gồm một loạt các đoạn đường được kết nối với nhau, nối các điểm bắt đầu, điểm kết thúc và điểm trung gian.

Biểu diễn dưới dạng JSON
{
  "legs": [
    {
      object (RouteLeg)
    }
  ],
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "description": string,
  "warnings": [
    string
  ],
  "viewport": {
    object (Viewport)
  },
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  },
  "optimizedIntermediateWaypointIndex": [
    integer
  ]
}
Trường
legs[]

object (RouteLeg)

Tập hợp các chặng (phân đoạn đường dẫn giữa các điểm trung gian) tạo nên tuyến đường. Mỗi chặng tương ứng với chuyến đi giữa hai Điểm trung gian không phải via. Ví dụ: một tuyến đường không có điểm trung gian chỉ có một chặng. Tuyến bao gồm một điểm trung gian không phải via có hai chân. Một tuyến đường có một điểm trung gian via sẽ có một chặng. Thứ tự của các chặng khớp với thứ tự của Điểm trung gian từ origin đến intermediates đến destination.

distanceMeters

integer

Khoảng cách đi lại của tuyến đường, tính bằng mét.

duration

string (Duration format)

Khoảng thời gian cần thiết để điều hướng tuyến đường. Nếu bạn đặt routingPreference thành TRAFFIC_UNAWARE, thì giá trị này sẽ giống với staticDuration. Nếu bạn đặt routingPreference thành TRAFFIC_AWARE hoặc TRAFFIC_AWARE_OPTIMAL, thì giá trị này sẽ được tính toán có tính đến điều kiện giao thông.

Thời lượng tính bằng giây với tối đa 9 chữ số phân số, kết thúc bằng "s". Ví dụ: "3.5s".

staticDuration

string (Duration format)

Thời gian di chuyển qua tuyến đường mà không tính đến tình trạng giao thông.

Thời lượng tính bằng giây, có tối đa 9 chữ số thập phân, kết thúc bằng "s". Ví dụ: "3.5s".

polyline

object (Polyline)

Hình nhiều đường của tuyến đường tổng thể. Hình nhiều đường này là hình nhiều đường kết hợp của tất cả legs.

description

string

Nội dung mô tả tuyến đường.

warnings[]

string

Một mảng cảnh báo cần xuất hiện khi hiện tuyến đường.

viewport

object (Viewport)

Hộp giới hạn khung nhìn của đường đa tuyến.

travelAdvisory

object (RouteTravelAdvisory)

Thông tin bổ sung về tuyến đường.

optimizedIntermediateWaypointIndex[]

integer

Nếu bạn đặt ComputeRoutesRequest.optimize_waypoint_order thành true, trường này sẽ chứa thứ tự tối ưu hoá của các điểm trung gian. Nếu không, trường này sẽ trống. Ví dụ: giả sử dữ liệu đầu vào là Origin: LA; Trung cấp: Dallas, Bangor, Phoenix; Điểm đến: New York; và thứ tự điểm trung gian được tối ưu hoá là: Phoenix, Dallas, Bangor. Sau đó, trường này chứa các giá trị [2, 0, 1]. Chỉ mục bắt đầu bằng 0 cho điểm trung gian đầu tiên.

RouteLeg

Đóng gói một đoạn giữa các điểm trung gian không phải via.

Biểu diễn dưới dạng JSON
{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  }
}
Trường
distanceMeters

integer

Khoảng cách đi lại của chặng của tuyến đường, tính bằng mét.

duration

string (Duration format)

Khoảng thời gian cần thiết để di chuyển một chặng. Nếu bạn đặt route_preference thành TRAFFIC_UNAWARE thì giá trị này sẽ giống với staticDuration. Nếu route_preferenceTRAFFIC_AWARE hoặc TRAFFIC_AWARE_OPTIMAL, thì giá trị này sẽ được tính toán dựa trên điều kiện giao thông.

Thời lượng tính bằng giây, có tối đa 9 chữ số thập phân, kết thúc bằng "s". Ví dụ: "3.5s".

staticDuration

string (Duration format)

Thời gian di chuyển qua đoạn đường đó, được tính mà không tính đến tình trạng giao thông.

Thời lượng tính bằng giây, có tối đa 9 chữ số thập phân, kết thúc bằng "s". Ví dụ: "3.5s".

polyline

object (Polyline)

Hình nhiều đường tổng thể của đoạn đường này. Điều này bao gồm cả đường đa tuyến của mỗi step.

startLocation

object (Location)

Vị trí bắt đầu của chặng này. Mã này có thể khác với origin được cung cấp. Ví dụ: khi origin được cung cấp không nằm gần một con đường, thì đây là một điểm trên đường.

endLocation

object (Location)

Vị trí kết thúc của chặng này. Mã này có thể khác với destination được cung cấp. Ví dụ: khi destination được cung cấp không nằm gần một con đường, thì đây là một điểm trên đường.

steps[]

object (RouteLegStep)

Một dãy các bước biểu thị các đoạn trong chặng này. Mỗi bước đại diện cho một lệnh điều hướng.

travelAdvisory

object (RouteLegTravelAdvisory)

Đóng gói thông tin bổ sung mà người dùng cần được thông báo, chẳng hạn như quy định hạn chế có thể có đối với khu vực giao thông, v.v. trên một chặng đường.

Hình nhiều đường

Đóng gói một hình nhiều đường được mã hoá.

Biểu diễn dưới dạng JSON
{

  // Union field polyline_type can be only one of the following:
  "encodedPolyline": string,
  "geoJsonLinestring": {
    object
  }
  // End of list of possible types for union field polyline_type.
}
Trường
Trường hợp hợp nhất polyline_type. Đóng gói loại hình nhiều đường. Giá trị mặc định là encoded_polyline. polyline_type chỉ có thể là một trong những trạng thái sau đây:
encodedPolyline

string

Mã hoá chuỗi của đa tuyến bằng thuật toán mã hoá đa tuyến.

geoJsonLinestring

object (Struct format)

Chỉ định một hình nhiều đường bằng định dạng GeoJSON LineString.

RouteLegStep

Đóng gói một phân đoạn của RouteLeg. Mỗi bước tương ứng với một lệnh điều hướng. Các chặng đường bao gồm các bước.

Biểu diễn dưới dạng JSON
{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelAdvisory": {
    object (RouteLegStepTravelAdvisory)
  }
}
Trường
distanceMeters

integer

Khoảng cách đi lại của bước này, tính bằng mét. Trong một số trường hợp, trường này có thể không có giá trị.

staticDuration

string (Duration format)

Thời gian di chuyển qua bước này mà không tính đến tình trạng giao thông. Trong một số trường hợp, trường này có thể không có giá trị.

Thời lượng tính bằng giây, có tối đa 9 chữ số thập phân, kết thúc bằng "s". Ví dụ: "3.5s".

polyline

object (Polyline)

Đường đa tuyến liên kết với bước này.

startLocation

object (Location)

Vị trí bắt đầu của bước này.

endLocation

object (Location)

Vị trí kết thúc của bước này.

navigationInstruction

object (NavigationInstruction)

Hướng dẫn điều hướng.

travelAdvisory

object (RouteLegStepTravelAdvisory)

Trình bày thông tin bổ sung mà người dùng cần biết, chẳng hạn như khả năng hạn chế khu vực giao thông đối với một chặng chân.

RouteLegStepTravelAdvisory

Đóng gói thông tin bổ sung mà người dùng cần được thông báo, chẳng hạn như quy định hạn chế có thể có đối với khu vực giao thông trên một bước đi.

Biểu diễn dưới dạng JSON
{
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Trường
speedReadingIntervals[]

object (SpeedReadingInterval)

LƯU Ý: Trường này hiện chưa được điền sẵn.

RouteLegTravelAdvisory

Đóng gói thông tin bổ sung mà người dùng cần được thông báo, chẳng hạn như quy định hạn chế có thể có đối với khu vực giao thông, v.v. trên một chặng đường.

Biểu diễn dưới dạng JSON
{
  "tollInfo": {
    object (TollInfo)
  },
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Trường
tollInfo

object (TollInfo)

Đóng gói thông tin về phí cầu đường trên RouteLeg cụ thể. Trường này chỉ được điền sẵn nếu chúng tôi dự kiến sẽ có thu phí trên RouteLeg. Nếu bạn đặt trường này nhưng trường phụ estimatedPrice không được điền thì chúng tôi dự kiến rằng đường đó có thu phí nhưng chúng tôi không biết giá ước tính. Nếu trường này không tồn tại, thì không có phí cầu đường trên RouteLeg.

speedReadingIntervals[]

object (SpeedReadingInterval)

Khoảng thời gian đọc nhanh nêu chi tiết mật độ lưu lượng truy cập. Áp dụng trong trường hợp có lựa chọn ưu tiên về định tuyến TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL. Các khoảng này bao gồm toàn bộ hình nhiều đường của RouteLeg mà không chồng chéo nhau. Điểm bắt đầu của một khoảng thời gian được chỉ định giống với điểm kết thúc của khoảng thời gian trước đó.

Ví dụ:

polyline: A ---- B ---- C ---- D ---- E ---- F ---- G
speedReadingIntervals: [A,C), [C,D), [D,G).