File: viewport.proto

package info (click to toggle)
golang-github-gogo-googleapis 1.4.0-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bookworm-proposed-updates, forky, sid, trixie
  • size: 1,128 kB
  • sloc: makefile: 208; sh: 6
file content (69 lines) | stat: -rw-r--r-- 2,356 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
// Copyright 2019 Google LLC.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//

syntax = "proto3";

package google.geo.type;

import "google/type/latlng.proto";

option go_package = "type";
option java_multiple_files = true;
option java_outer_classname = "ViewportProto";
option java_package = "com.google.geo.type";
option objc_class_prefix = "GGTP";

// A latitude-longitude viewport, represented as two diagonally opposite `low`
// and `high` points. A viewport is considered a closed region, i.e. it includes
// its boundary. The latitude bounds must range between -90 to 90 degrees
// inclusive, and the longitude bounds must range between -180 to 180 degrees
// inclusive. Various cases include:
//
//  - If `low` = `high`, the viewport consists of that single point.
//
//  - If `low.longitude` > `high.longitude`, the longitude range is inverted
//    (the viewport crosses the 180 degree longitude line).
//
//  - If `low.longitude` = -180 degrees and `high.longitude` = 180 degrees,
//    the viewport includes all longitudes.
//
//  - If `low.longitude` = 180 degrees and `high.longitude` = -180 degrees,
//    the longitude range is empty.
//
//  - If `low.latitude` > `high.latitude`, the latitude range is empty.
//
// Both `low` and `high` must be populated, and the represented box cannot be
// empty (as specified by the definitions above). An empty viewport will result
// in an error.
//
// For example, this viewport fully encloses New York City:
//
// {
//     "low": {
//         "latitude": 40.477398,
//         "longitude": -74.259087
//     },
//     "high": {
//         "latitude": 40.91618,
//         "longitude": -73.70018
//     }
// }
message Viewport {
  // Required. The low point of the viewport.
  google.type.LatLng low = 1;

  // Required. The high point of the viewport.
  google.type.LatLng high = 2;
}