#[non_exhaustive]pub struct Transition {
pub travel_duration: Option<Duration>,
pub travel_distance_meters: f64,
pub traffic_info_unavailable: bool,
pub delay_duration: Option<Duration>,
pub break_duration: Option<Duration>,
pub wait_duration: Option<Duration>,
pub total_duration: Option<Duration>,
pub start_time: Option<Timestamp>,
pub route_polyline: Option<EncodedPolyline>,
pub vehicle_loads: HashMap<String, VehicleLoad>,
pub loads: Vec<CapacityQuantity>,
}Expand description
Transition between two events on the route. See the description of ShipmentRoute.
If the vehicle does not have a start_location and/or end_location, the
corresponding travel metrics are 0.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.travel_duration: Option<Duration>Travel duration during this transition.
travel_distance_meters: f64Distance traveled during the transition.
When traffic is requested via
[OptimizeToursRequest.consider_road_traffic]
[google.cloud.optimization.v1.OptimizeToursRequest.consider_road_traffic],
and the traffic info couldn’t be retrieved for a Transition, this
boolean is set to true. This may be temporary (rare hiccup in the
realtime traffic servers) or permanent (no data for this location).
delay_duration: Option<Duration>Sum of the delay durations applied to this transition. If any, the delay
starts exactly delay_duration seconds before the next event (visit or
vehicle end). See
TransitionAttributes.delay.
break_duration: Option<Duration>Sum of the duration of the breaks occurring during this transition, if any. Details about each break’s start time and duration are stored in ShipmentRoute.breaks.
wait_duration: Option<Duration>Time spent waiting during this transition. Wait duration corresponds to idle time and does not include break time. Also note that this wait time may be split into several non-contiguous intervals.
total_duration: Option<Duration>Total duration of the transition, provided for convenience. It is equal to:
- next visit
start_time(orvehicle_end_timeif this is the last transition) - this transition’sstart_time; - if
ShipmentRoute.has_traffic_infeasibilitiesis false, the following additionally holds: `total_duration = travel_duration + delay_duration
- break_duration + wait_duration`.
start_time: Option<Timestamp>Start time of this transition.
route_polyline: Option<EncodedPolyline>The encoded polyline representation of the route followed during the transition. This field is only populated if [populate_transition_polylines] [google.cloud.optimization.v1.OptimizeToursRequest.populate_transition_polylines] is set to true.
vehicle_loads: HashMap<String, VehicleLoad>Vehicle loads during this transition, for each type that either appears in this vehicle’s Vehicle.load_limits, or that have non-zero Shipment.load_demands on some shipment performed on this route.
The loads during the first transition are the starting loads of the
vehicle route. Then, after each visit, the visit’s load_demands are
either added or subtracted to get the next transition’s loads, depending
on whether the visit was a pickup or a delivery.
loads: Vec<CapacityQuantity>Deprecated: Use Transition.vehicle_loads instead.
Implementations§
Source§impl Transition
impl Transition
pub fn new() -> Self
Sourcepub fn set_travel_duration<T: Into<Option<Duration>>>(self, v: T) -> Self
pub fn set_travel_duration<T: Into<Option<Duration>>>(self, v: T) -> Self
Sets the value of travel_duration.
Sourcepub fn set_travel_distance_meters<T: Into<f64>>(self, v: T) -> Self
pub fn set_travel_distance_meters<T: Into<f64>>(self, v: T) -> Self
Sets the value of travel_distance_meters.
Sets the value of traffic_info_unavailable.
Sourcepub fn set_delay_duration<T: Into<Option<Duration>>>(self, v: T) -> Self
pub fn set_delay_duration<T: Into<Option<Duration>>>(self, v: T) -> Self
Sets the value of delay_duration.
Sourcepub fn set_break_duration<T: Into<Option<Duration>>>(self, v: T) -> Self
pub fn set_break_duration<T: Into<Option<Duration>>>(self, v: T) -> Self
Sets the value of break_duration.
Sourcepub fn set_wait_duration<T: Into<Option<Duration>>>(self, v: T) -> Self
pub fn set_wait_duration<T: Into<Option<Duration>>>(self, v: T) -> Self
Sets the value of wait_duration.
Sourcepub fn set_total_duration<T: Into<Option<Duration>>>(self, v: T) -> Self
pub fn set_total_duration<T: Into<Option<Duration>>>(self, v: T) -> Self
Sets the value of total_duration.
Sourcepub fn set_start_time<T: Into<Option<Timestamp>>>(self, v: T) -> Self
pub fn set_start_time<T: Into<Option<Timestamp>>>(self, v: T) -> Self
Sets the value of start_time.
Sourcepub fn set_route_polyline<T: Into<Option<EncodedPolyline>>>(self, v: T) -> Self
pub fn set_route_polyline<T: Into<Option<EncodedPolyline>>>(self, v: T) -> Self
Sets the value of route_polyline.
Sourcepub fn set_vehicle_loads<T, K, V>(self, v: T) -> Self
pub fn set_vehicle_loads<T, K, V>(self, v: T) -> Self
Sets the value of vehicle_loads.
Trait Implementations§
Source§impl Clone for Transition
impl Clone for Transition
Source§fn clone(&self) -> Transition
fn clone(&self) -> Transition
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more