pub struct Route {
pub legs: Vec<RouteLeg>,
pub distance_meters: i32,
pub duration: Option<Duration>,
pub static_duration: Option<Duration>,
pub polyline: Option<Polyline>,
pub description: String,
pub warnings: Vec<String>,
pub viewport: Option<Viewport>,
pub travel_advisory: Option<RouteTravelAdvisory>,
pub optimized_intermediate_waypoint_index: Vec<i32>,
}
Expand description
Encapsulates a route, which consists of a series of connected road segments that join beginning, ending, and intermediate waypoints.
Fields§
§legs: Vec<RouteLeg>
A collection of legs (path segments between waypoints) that make-up the
route. Each leg corresponds to the trip between two non-via
Waypoints.
For example, a route with no intermediate waypoints has only one leg. A
route that includes one non-via
intermediate waypoint has two legs. A
route that includes one via
intermediate waypoint has one leg. The order
of the legs matches the order of Waypoints from origin
to intermediates
to destination
.
distance_meters: i32
The travel distance of the route, in meters.
duration: Option<Duration>
The length of time needed to navigate the route. If you set the
routing_preference
to TRAFFIC_UNAWARE
, then this value is the same as
static_duration
. If you set the routing_preference
to either
TRAFFIC_AWARE
or TRAFFIC_AWARE_OPTIMAL
, then this value is calculated
taking traffic conditions into account.
static_duration: Option<Duration>
The duration of traveling through the route without taking traffic conditions into consideration.
polyline: Option<Polyline>
The overall route polyline. This polyline is the combined polyline of all
legs
.
description: String
A description of the route.
warnings: Vec<String>
An array of warnings to show when displaying the route.
viewport: Option<Viewport>
The viewport bounding box of the polyline.
travel_advisory: Option<RouteTravelAdvisory>
Additional information about the route.
optimized_intermediate_waypoint_index: Vec<i32>
If ComputeRoutesRequest.optimize_waypoint_order
is set to true, this
field contains the optimized ordering of intermediates waypoints.
otherwise, this field is empty.
For example, suppose the input is Origin: LA; Intermediates: Dallas,
Bangor, Phoenix; Destination: New York; and the optimized intermediate
waypoint order is: Phoenix, Dallas, Bangor. Then this field contains the
values [2, 0, 1]. The index starts with 0 for the first intermediate
waypoint.
Trait Implementations§
Source§impl Message for Route
impl Message for Route
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.impl StructuralPartialEq for Route
Auto Trait Implementations§
impl Freeze for Route
impl RefUnwindSafe for Route
impl Send for Route
impl Sync for Route
impl Unpin for Route
impl UnwindSafe for Route
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request