Updated documentation of route modifiers.

Introduction of the documentation of speed reading intervals.

PiperOrigin-RevId: 318318689
This commit is contained in:
Google APIs 2020-06-25 12:00:50 -07:00 committed by Copybara-Service
parent 8f57b47897
commit 275eb1955c
2 changed files with 57 additions and 7 deletions

View File

@ -40,7 +40,8 @@ message ComputeRoutesRequest {
Waypoint destination = 2;
// Optional. A set of waypoints along the route (excluding terminal points),
// for either stopping at or passing by.
// for either stopping at or passing by. Up to 25 intermediate waypoints are
// supported.
repeated Waypoint intermediates = 3;
// Optional. Specifies the mode of transportation.
@ -130,20 +131,24 @@ enum RoutingPreference {
// Encapsulates a set of optional conditions to satisfy when calculating the
// routes.
message RouteModifiers {
// Specifies whether to avoid toll roads. Applies only to the `DRIVE` and
// Specifies whether to avoid toll roads where reasonable. Preference will be
// given to routes not containing toll roads. Applies only to the `DRIVE` and
// `TWO_WHEELER` travel modes.
bool avoid_tolls = 1;
// Specifies whether to avoid highways. Applies only to the `DRIVE` and
// Specifies whether to avoid highways where reasonable. Preference will be
// given to routes not containing highways. Applies only to the `DRIVE` and
// `TWO_WHEELER` travel modes.
bool avoid_highways = 2;
// Specifies whether to avoid ferries. Applies only to the `DRIVE` and
// `TWO_WHEELER` travel modes.
// Specifies whether to avoid ferries where reasonable. Preference will be
// given to routes not containing travel by ferries.
// Applies only to the `DRIVE` and`TWO_WHEELER` travel modes.
bool avoid_ferries = 3;
// Specifies whether to avoid navigating indoors. Applies only to the `WALK`
// travel mode.
// Specifies whether to avoid navigating indoors where reasonable. Preference
// will be given to routes not containing indoor navigation.
// Applies only to the `WALK` travel mode.
bool avoid_indoor = 4;
// Optional. Specifies the vehicle information.

View File

@ -88,6 +88,16 @@ message RouteTravelAdvisory {
// we expect that road contains tolls but we do not know an estimated price.
// If this field is not set, then we expect there is no toll on the Route.
TollInfo toll_info = 2;
// Speed reading intervals detailing traffic density. Applicable in case of
// TRAFFIC_AWARE and TRAFFIC_AWARE_OPTIMAL routing preferences.
// The intervals cover the entire polyline of the route without overlaps, i.e.
// the start point of a given interval coincides with the end point of the
// preceding interval.
// Example:
// polyline: A ---- B ---- C ---- D ---- E ---- F ---- G
// speed_reading_intervals: [A,C), [C,D), [D,G).
repeated SpeedReadingInterval speed_reading_intervals = 3;
}
// Encapsulates the additional information that the user should be informed
@ -261,3 +271,38 @@ enum Maneuver {
// Turn right at the roundabout.
ROUNDABOUT_RIGHT = 18;
}
// Traffic density indicator on a contiguous segment of a polyline.
// Given a polyline with polyline points P_0, P_1, ... , P_N
// (the indexing is zero-based), the SpeedReadingInterval defines an
// interval (including the start, exclusing the end point) and describes the
// traffic density on the respective interval using the below style categories.
message SpeedReadingInterval {
// The classification of polyline speed based on traffic data.
enum Speed {
// Default value. This value is unused.
SPEED_UNSPECIFIED = 0;
// Normal speed, no slowdown is detected.
NORMAL = 1;
// Slowdown detected, but no traffic jam formed.
SLOW = 2;
// Traffic jam detected.
TRAFFIC_JAM = 3;
}
// The index of the starting polyline point of the interval
// in the ordered list of polyline points.
// In JSON, when the index is 0, the field will appear to be unpopulated.
int32 start_polyline_point_index = 1;
// The index of the ending polyline point of the interval
// (with off-by-one ending) in the ordered list of polyline points.
// In JSON, when the index is 0, the field will appear to be unpopulated.
int32 end_polyline_point_index = 2;
// Traffic information speed at the interval.
Speed speed = 3;
}