1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC 2*d5c09012SAndroid Build Coastguard Worker// 3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*d5c09012SAndroid Build Coastguard Worker// 7*d5c09012SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*d5c09012SAndroid Build Coastguard Worker// 9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*d5c09012SAndroid Build Coastguard Worker// limitations under the License. 14*d5c09012SAndroid Build Coastguard Worker 15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3"; 16*d5c09012SAndroid Build Coastguard Worker 17*d5c09012SAndroid Build Coastguard Workerpackage google.maps.routing.v2; 18*d5c09012SAndroid Build Coastguard Worker 19*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/struct.proto"; 20*d5c09012SAndroid Build Coastguard Worker 21*d5c09012SAndroid Build Coastguard Workeroption cc_enable_arenas = true; 22*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Maps.Routing.V2"; 23*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/maps/routing/apiv2/routingpb;routingpb"; 24*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 25*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "PolylineProto"; 26*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.maps.routing.v2"; 27*d5c09012SAndroid Build Coastguard Workeroption objc_class_prefix = "GMRV2"; 28*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Maps\\Routing\\V2"; 29*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Maps::Routing::V2"; 30*d5c09012SAndroid Build Coastguard Worker 31*d5c09012SAndroid Build Coastguard Worker// Encapsulates an encoded polyline. 32*d5c09012SAndroid Build Coastguard Workermessage Polyline { 33*d5c09012SAndroid Build Coastguard Worker // Encapsulates the type of polyline. Defaults to encoded_polyline. 34*d5c09012SAndroid Build Coastguard Worker oneof polyline_type { 35*d5c09012SAndroid Build Coastguard Worker // The string encoding of the polyline using the [polyline encoding 36*d5c09012SAndroid Build Coastguard Worker // algorithm](https://developers.google.com/maps/documentation/utilities/polylinealgorithm) 37*d5c09012SAndroid Build Coastguard Worker string encoded_polyline = 1; 38*d5c09012SAndroid Build Coastguard Worker 39*d5c09012SAndroid Build Coastguard Worker // Specifies a polyline using the [GeoJSON LineString 40*d5c09012SAndroid Build Coastguard Worker // format](https://tools.ietf.org/html/rfc7946#section-3.1.4). 41*d5c09012SAndroid Build Coastguard Worker google.protobuf.Struct geo_json_linestring = 2; 42*d5c09012SAndroid Build Coastguard Worker } 43*d5c09012SAndroid Build Coastguard Worker} 44*d5c09012SAndroid Build Coastguard Worker 45*d5c09012SAndroid Build Coastguard Worker// A set of values that specify the quality of the polyline. 46*d5c09012SAndroid Build Coastguard Workerenum PolylineQuality { 47*d5c09012SAndroid Build Coastguard Worker // No polyline quality preference specified. Defaults to `OVERVIEW`. 48*d5c09012SAndroid Build Coastguard Worker POLYLINE_QUALITY_UNSPECIFIED = 0; 49*d5c09012SAndroid Build Coastguard Worker 50*d5c09012SAndroid Build Coastguard Worker // Specifies a high-quality polyline - which is composed using more points 51*d5c09012SAndroid Build Coastguard Worker // than `OVERVIEW`, at the cost of increased response size. Use this value 52*d5c09012SAndroid Build Coastguard Worker // when you need more precision. 53*d5c09012SAndroid Build Coastguard Worker HIGH_QUALITY = 1; 54*d5c09012SAndroid Build Coastguard Worker 55*d5c09012SAndroid Build Coastguard Worker // Specifies an overview polyline - which is composed using a small number of 56*d5c09012SAndroid Build Coastguard Worker // points. Use this value when displaying an overview of the route. Using this 57*d5c09012SAndroid Build Coastguard Worker // option has a lower request latency compared to using the 58*d5c09012SAndroid Build Coastguard Worker // `HIGH_QUALITY` option. 59*d5c09012SAndroid Build Coastguard Worker OVERVIEW = 2; 60*d5c09012SAndroid Build Coastguard Worker} 61*d5c09012SAndroid Build Coastguard Worker 62*d5c09012SAndroid Build Coastguard Worker// Specifies the preferred type of polyline to be returned. 63*d5c09012SAndroid Build Coastguard Workerenum PolylineEncoding { 64*d5c09012SAndroid Build Coastguard Worker // No polyline type preference specified. Defaults to `ENCODED_POLYLINE`. 65*d5c09012SAndroid Build Coastguard Worker POLYLINE_ENCODING_UNSPECIFIED = 0; 66*d5c09012SAndroid Build Coastguard Worker 67*d5c09012SAndroid Build Coastguard Worker // Specifies a polyline encoded using the [polyline encoding 68*d5c09012SAndroid Build Coastguard Worker // algorithm](/maps/documentation/utilities/polylinealgorithm). 69*d5c09012SAndroid Build Coastguard Worker ENCODED_POLYLINE = 1; 70*d5c09012SAndroid Build Coastguard Worker 71*d5c09012SAndroid Build Coastguard Worker // Specifies a polyline using the [GeoJSON LineString 72*d5c09012SAndroid Build Coastguard Worker // format](https://tools.ietf.org/html/rfc7946#section-3.1.4) 73*d5c09012SAndroid Build Coastguard Worker GEO_JSON_LINESTRING = 2; 74*d5c09012SAndroid Build Coastguard Worker} 75