google-api-client 0.41.0 → 0.41.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (167) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +72 -0
  3. data/generated/google/apis/admin_directory_v1.rb +1 -1
  4. data/generated/google/apis/admin_directory_v1/classes.rb +31 -0
  5. data/generated/google/apis/admin_directory_v1/representations.rb +16 -0
  6. data/generated/google/apis/admin_directory_v1/service.rb +3 -5
  7. data/generated/google/apis/apigee_v1.rb +1 -1
  8. data/generated/google/apis/apigee_v1/classes.rb +132 -42
  9. data/generated/google/apis/apigee_v1/representations.rb +16 -0
  10. data/generated/google/apis/apigee_v1/service.rb +23 -24
  11. data/generated/google/apis/bigquery_v2.rb +1 -1
  12. data/generated/google/apis/bigquery_v2/classes.rb +36 -6
  13. data/generated/google/apis/bigquery_v2/representations.rb +4 -0
  14. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  15. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +6 -6
  16. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  17. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  18. data/generated/google/apis/civicinfo_v2.rb +2 -2
  19. data/generated/google/apis/civicinfo_v2/classes.rb +12 -800
  20. data/generated/google/apis/civicinfo_v2/representations.rb +0 -295
  21. data/generated/google/apis/civicinfo_v2/service.rb +27 -62
  22. data/generated/google/apis/cloudasset_v1.rb +1 -1
  23. data/generated/google/apis/cloudasset_v1/classes.rb +391 -3
  24. data/generated/google/apis/cloudasset_v1/representations.rb +101 -0
  25. data/generated/google/apis/cloudasset_v1/service.rb +178 -0
  26. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  27. data/generated/google/apis/cloudbilling_v1/classes.rb +38 -6
  28. data/generated/google/apis/cloudbilling_v1/representations.rb +16 -0
  29. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  30. data/generated/google/apis/cloudbuild_v1/service.rb +0 -42
  31. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  32. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  33. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  34. data/generated/google/apis/cloudfunctions_v1/classes.rb +6 -6
  35. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  36. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  37. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  38. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +2 -3
  39. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  40. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +2 -3
  41. data/generated/google/apis/cloudscheduler_v1.rb +1 -1
  42. data/generated/google/apis/cloudscheduler_v1/classes.rb +2 -1
  43. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  44. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +2 -1
  45. data/generated/google/apis/composer_v1beta1.rb +1 -1
  46. data/generated/google/apis/composer_v1beta1/classes.rb +4 -3
  47. data/generated/google/apis/composer_v1beta1/service.rb +13 -0
  48. data/generated/google/apis/compute_alpha.rb +1 -1
  49. data/generated/google/apis/compute_alpha/classes.rb +45 -31
  50. data/generated/google/apis/compute_alpha/service.rb +9 -4
  51. data/generated/google/apis/compute_beta.rb +1 -1
  52. data/generated/google/apis/compute_beta/classes.rb +262 -31
  53. data/generated/google/apis/compute_beta/representations.rb +70 -0
  54. data/generated/google/apis/compute_beta/service.rb +233 -4
  55. data/generated/google/apis/compute_v1.rb +1 -1
  56. data/generated/google/apis/compute_v1/classes.rb +592 -29
  57. data/generated/google/apis/compute_v1/representations.rb +182 -0
  58. data/generated/google/apis/compute_v1/service.rb +501 -4
  59. data/generated/google/apis/container_v1.rb +1 -1
  60. data/generated/google/apis/container_v1/classes.rb +29 -3
  61. data/generated/google/apis/container_v1/representations.rb +15 -0
  62. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  63. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +1 -1
  64. data/generated/google/apis/content_v2_1.rb +1 -1
  65. data/generated/google/apis/content_v2_1/classes.rb +172 -0
  66. data/generated/google/apis/content_v2_1/representations.rb +71 -0
  67. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  68. data/generated/google/apis/datacatalog_v1beta1/classes.rb +34 -10
  69. data/generated/google/apis/datacatalog_v1beta1/representations.rb +13 -0
  70. data/generated/google/apis/datacatalog_v1beta1/service.rb +37 -0
  71. data/generated/google/apis/dialogflow_v2.rb +1 -1
  72. data/generated/google/apis/dialogflow_v2/classes.rb +194 -20
  73. data/generated/google/apis/dialogflow_v2/representations.rb +77 -0
  74. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  75. data/generated/google/apis/dialogflow_v2beta1/classes.rb +194 -20
  76. data/generated/google/apis/dialogflow_v2beta1/representations.rb +77 -0
  77. data/generated/google/apis/displayvideo_v1.rb +1 -1
  78. data/generated/google/apis/displayvideo_v1/classes.rb +105 -2
  79. data/generated/google/apis/displayvideo_v1/representations.rb +11 -0
  80. data/generated/google/apis/displayvideo_v1/service.rb +78 -1
  81. data/generated/google/apis/dlp_v2.rb +1 -1
  82. data/generated/google/apis/documentai_v1beta2.rb +1 -1
  83. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  84. data/generated/google/apis/doubleclicksearch_v2.rb +4 -4
  85. data/generated/google/apis/doubleclicksearch_v2/classes.rb +127 -111
  86. data/generated/google/apis/doubleclicksearch_v2/representations.rb +4 -6
  87. data/generated/google/apis/doubleclicksearch_v2/service.rb +47 -78
  88. data/generated/google/apis/fcm_v1.rb +1 -1
  89. data/generated/google/apis/healthcare_v1.rb +1 -1
  90. data/generated/google/apis/healthcare_v1/classes.rb +6 -6
  91. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  92. data/generated/google/apis/healthcare_v1beta1/classes.rb +6 -6
  93. data/generated/google/apis/logging_v2.rb +1 -1
  94. data/generated/google/apis/logging_v2/classes.rb +69 -21
  95. data/generated/google/apis/ml_v1.rb +1 -1
  96. data/generated/google/apis/ml_v1/classes.rb +8 -0
  97. data/generated/google/apis/ml_v1/representations.rb +1 -0
  98. data/generated/google/apis/monitoring_v3.rb +1 -1
  99. data/generated/google/apis/monitoring_v3/classes.rb +2 -2
  100. data/generated/google/apis/people_v1.rb +4 -1
  101. data/generated/google/apis/playablelocations_v3.rb +31 -0
  102. data/generated/google/apis/playablelocations_v3/classes.rb +633 -0
  103. data/generated/google/apis/playablelocations_v3/representations.rb +273 -0
  104. data/generated/google/apis/playablelocations_v3/service.rb +157 -0
  105. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  106. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +19 -0
  107. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +14 -0
  108. data/generated/google/apis/pubsub_v1.rb +1 -1
  109. data/generated/google/apis/pubsub_v1/classes.rb +4 -2
  110. data/generated/google/apis/realtimebidding_v1.rb +40 -0
  111. data/generated/google/apis/realtimebidding_v1/classes.rb +1436 -0
  112. data/generated/google/apis/realtimebidding_v1/representations.rb +565 -0
  113. data/generated/google/apis/realtimebidding_v1/service.rb +661 -0
  114. data/generated/google/apis/redis_v1.rb +1 -1
  115. data/generated/google/apis/redis_v1/classes.rb +1 -1
  116. data/generated/google/apis/redis_v1/service.rb +1 -1
  117. data/generated/google/apis/redis_v1beta1.rb +1 -1
  118. data/generated/google/apis/redis_v1beta1/classes.rb +1 -1
  119. data/generated/google/apis/redis_v1beta1/service.rb +1 -1
  120. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  121. data/generated/google/apis/remotebuildexecution_v1/classes.rb +1 -1
  122. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  123. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +1 -1
  124. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  125. data/generated/google/apis/remotebuildexecution_v2/classes.rb +1 -1
  126. data/generated/google/apis/run_v1.rb +2 -2
  127. data/generated/google/apis/run_v1/classes.rb +4 -1
  128. data/generated/google/apis/run_v1/service.rb +1 -1
  129. data/generated/google/apis/run_v1alpha1.rb +2 -2
  130. data/generated/google/apis/run_v1alpha1/service.rb +1 -1
  131. data/generated/google/apis/run_v1beta1.rb +2 -2
  132. data/generated/google/apis/run_v1beta1/service.rb +1 -1
  133. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  134. data/generated/google/apis/sasportal_v1alpha1/classes.rb +19 -0
  135. data/generated/google/apis/sasportal_v1alpha1/representations.rb +14 -0
  136. data/generated/google/apis/secretmanager_v1.rb +1 -1
  137. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  138. data/generated/google/apis/securitycenter_v1.rb +1 -1
  139. data/generated/google/apis/securitycenter_v1/service.rb +4 -5
  140. data/generated/google/apis/securitycenter_v1p1beta1.rb +1 -1
  141. data/generated/google/apis/securitycenter_v1p1beta1/service.rb +2 -5
  142. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  143. data/generated/google/apis/servicecontrol_v1/classes.rb +6 -0
  144. data/generated/google/apis/servicecontrol_v1/representations.rb +1 -0
  145. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  146. data/generated/google/apis/servicemanagement_v1/classes.rb +1 -0
  147. data/generated/google/apis/sheets_v4.rb +1 -1
  148. data/generated/google/apis/sheets_v4/classes.rb +90 -0
  149. data/generated/google/apis/spanner_v1.rb +1 -1
  150. data/generated/google/apis/spanner_v1/classes.rb +25 -20
  151. data/generated/google/apis/spanner_v1/service.rb +2 -0
  152. data/generated/google/apis/speech_v1.rb +1 -1
  153. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  154. data/generated/google/apis/storage_v1.rb +1 -1
  155. data/generated/google/apis/storage_v1/service.rb +2 -3
  156. data/generated/google/apis/texttospeech_v1.rb +1 -1
  157. data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
  158. data/generated/google/apis/vectortile_v1.rb +31 -0
  159. data/generated/google/apis/vectortile_v1/classes.rb +881 -0
  160. data/generated/google/apis/vectortile_v1/representations.rb +329 -0
  161. data/generated/google/apis/vectortile_v1/service.rb +268 -0
  162. data/generated/google/apis/webfonts_v1.rb +5 -5
  163. data/generated/google/apis/webfonts_v1/classes.rb +4 -3
  164. data/generated/google/apis/webfonts_v1/representations.rb +1 -2
  165. data/generated/google/apis/webfonts_v1/service.rb +14 -21
  166. data/lib/google/apis/version.rb +1 -1
  167. metadata +15 -3
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/text-to-speech/
26
26
  module TexttospeechV1beta1
27
27
  VERSION = 'V1beta1'
28
- REVISION = '20200605'
28
+ REVISION = '20200619'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -0,0 +1,31 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/vectortile_v1/service.rb'
16
+ require 'google/apis/vectortile_v1/classes.rb'
17
+ require 'google/apis/vectortile_v1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Semantic Tile API
22
+ #
23
+ # Serves vector tiles containing geospatial data.
24
+ #
25
+ # @see https://developers.google.com/maps/contact-sales/
26
+ module VectortileV1
27
+ VERSION = 'V1'
28
+ REVISION = '20200622'
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,881 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module VectortileV1
24
+
25
+ # Represents an area. Used to represent regions such as water, parks, etc.
26
+ class Area
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # True if the polygon is not entirely internal to the feature that it belongs
30
+ # to: that is, some of the edges are bordering another feature.
31
+ # Corresponds to the JSON property `hasExternalEdges`
32
+ # @return [Boolean]
33
+ attr_accessor :has_external_edges
34
+ alias_method :has_external_edges?, :has_external_edges
35
+
36
+ # When has_external_edges is true, the polygon has some edges that border
37
+ # another feature. This field indicates the internal edges that do not border
38
+ # another feature. Each value is an index into the vertices array, and
39
+ # denotes the start vertex of the internal edge (the next vertex in the
40
+ # boundary loop is the end of the edge). If the selected vertex is the last
41
+ # vertex in the boundary loop, then the edge between that vertex and the
42
+ # starting vertex of the loop is internal.
43
+ # This field may be used for styling. For example, building parapets could be
44
+ # placed only on the external edges of a building polygon, or water could be
45
+ # lighter colored near the external edges of a body of water.
46
+ # If has_external_edges is false, all edges are internal and this field will
47
+ # be empty.
48
+ # Corresponds to the JSON property `internalEdges`
49
+ # @return [Array<Fixnum>]
50
+ attr_accessor :internal_edges
51
+
52
+ # Identifies the boundary loops of the polygon. Only set for INDEXED_TRIANGLE
53
+ # polygons. Each value is an index into the vertices array indicating the
54
+ # beginning of a loop. For instance, values of [2, 5] would indicate
55
+ # loop_data contained 3 loops with indices 0-1, 2-4, and 5-end.
56
+ # This may be used in conjunction with the internal_edges field for styling
57
+ # polygon boundaries. Note that an edge may be on a polygon boundary but
58
+ # still internal to the feature. For example, a feature split across multiple
59
+ # tiles will have an internal polygon boundary edge along the edge of the
60
+ # tile.
61
+ # Corresponds to the JSON property `loopBreaks`
62
+ # @return [Array<Fixnum>]
63
+ attr_accessor :loop_breaks
64
+
65
+ # When the polygon encoding is of type INDEXED_TRIANGLES, this contains the
66
+ # indices of the triangle vertices in the vertex_offsets field. There are 3
67
+ # vertex indices per triangle.
68
+ # Corresponds to the JSON property `triangleIndices`
69
+ # @return [Array<Fixnum>]
70
+ attr_accessor :triangle_indices
71
+
72
+ # The polygon encoding type used for this area.
73
+ # Corresponds to the JSON property `type`
74
+ # @return [String]
75
+ attr_accessor :type
76
+
77
+ # 2D vertex list used for lines and areas. Each entry represents an offset from
78
+ # the previous one in local tile coordinates. The first entry is offset from
79
+ # (0, 0).
80
+ # For example, the list of vertices [(1,1), (2, 2), (1, 2)] would be encoded
81
+ # in vertex offsets as [(1, 1), (1, 1), (-1, 0)].
82
+ # Corresponds to the JSON property `vertexOffsets`
83
+ # @return [Google::Apis::VectortileV1::Vertex2DList]
84
+ attr_accessor :vertex_offsets
85
+
86
+ # The z-ordering of this area. Areas with a lower z-order should be rendered
87
+ # beneath areas with a higher z-order. This z-ordering does not imply
88
+ # anything about the altitude of the line relative to the ground, but it
89
+ # can be used to prevent z-fighting during rendering on the client. This
90
+ # z-ordering can only be used to compare areas, and cannot be compared with
91
+ # the z_order field in the Line message.
92
+ # The z-order may be negative or zero.
93
+ # Corresponds to the JSON property `zOrder`
94
+ # @return [Fixnum]
95
+ attr_accessor :z_order
96
+
97
+ def initialize(**args)
98
+ update!(**args)
99
+ end
100
+
101
+ # Update properties of this object
102
+ def update!(**args)
103
+ @has_external_edges = args[:has_external_edges] if args.key?(:has_external_edges)
104
+ @internal_edges = args[:internal_edges] if args.key?(:internal_edges)
105
+ @loop_breaks = args[:loop_breaks] if args.key?(:loop_breaks)
106
+ @triangle_indices = args[:triangle_indices] if args.key?(:triangle_indices)
107
+ @type = args[:type] if args.key?(:type)
108
+ @vertex_offsets = args[:vertex_offsets] if args.key?(:vertex_offsets)
109
+ @z_order = args[:z_order] if args.key?(:z_order)
110
+ end
111
+ end
112
+
113
+ # Represents a height-extruded area: a 3D prism with a constant X-Y plane cross
114
+ # section. Used to represent extruded buildings. A single building may consist
115
+ # of several extruded areas.
116
+ # The min_z and max_z fields are scaled to the size of the tile. An extruded
117
+ # area with a max_z value of 4096 has the same height as the width of the tile
118
+ # that it is on.
119
+ class ExtrudedArea
120
+ include Google::Apis::Core::Hashable
121
+
122
+ # Represents an area. Used to represent regions such as water, parks, etc.
123
+ # Corresponds to the JSON property `area`
124
+ # @return [Google::Apis::VectortileV1::Area]
125
+ attr_accessor :area
126
+
127
+ # The z-value in local tile coordinates where the extruded area ends.
128
+ # Corresponds to the JSON property `maxZ`
129
+ # @return [Fixnum]
130
+ attr_accessor :max_z
131
+
132
+ # The z-value in local tile coordinates where the extruded area begins. This
133
+ # is non-zero for extruded areas that begin off the ground. For example, a
134
+ # building with a skybridge may have an extruded area component with a
135
+ # non-zero min_z.
136
+ # Corresponds to the JSON property `minZ`
137
+ # @return [Fixnum]
138
+ attr_accessor :min_z
139
+
140
+ def initialize(**args)
141
+ update!(**args)
142
+ end
143
+
144
+ # Update properties of this object
145
+ def update!(**args)
146
+ @area = args[:area] if args.key?(:area)
147
+ @max_z = args[:max_z] if args.key?(:max_z)
148
+ @min_z = args[:min_z] if args.key?(:min_z)
149
+ end
150
+ end
151
+
152
+ # A feature representing a single geographic entity.
153
+ class Feature
154
+ include Google::Apis::Core::Hashable
155
+
156
+ # The localized name of this feature. Currently only returned for roads.
157
+ # Corresponds to the JSON property `displayName`
158
+ # @return [String]
159
+ attr_accessor :display_name
160
+
161
+ # Represents the geometry of a feature, that is, the shape that it has on the
162
+ # map. The local tile coordinate system has the origin at the north-west
163
+ # (upper-left) corner of the tile, and is scaled to 4096 units across each
164
+ # edge. The height (Z) axis has the same scale factor: an extruded area with a
165
+ # max_z value of 4096 has the same height as the width of the tile that it is
166
+ # on.
167
+ # There is no clipping boundary, so it is possible that some coordinates will
168
+ # lie outside the tile boundaries.
169
+ # Corresponds to the JSON property `geometry`
170
+ # @return [Google::Apis::VectortileV1::Geometry]
171
+ attr_accessor :geometry
172
+
173
+ # Place ID of this feature, suitable for use in Places API details
174
+ # requests.
175
+ # Corresponds to the JSON property `placeId`
176
+ # @return [String]
177
+ attr_accessor :place_id
178
+
179
+ # Relations to other features.
180
+ # Corresponds to the JSON property `relations`
181
+ # @return [Array<Google::Apis::VectortileV1::Relation>]
182
+ attr_accessor :relations
183
+
184
+ # Extra metadata relating to segments.
185
+ # Corresponds to the JSON property `segmentInfo`
186
+ # @return [Google::Apis::VectortileV1::SegmentInfo]
187
+ attr_accessor :segment_info
188
+
189
+ # The type of this feature.
190
+ # Corresponds to the JSON property `type`
191
+ # @return [String]
192
+ attr_accessor :type
193
+
194
+ def initialize(**args)
195
+ update!(**args)
196
+ end
197
+
198
+ # Update properties of this object
199
+ def update!(**args)
200
+ @display_name = args[:display_name] if args.key?(:display_name)
201
+ @geometry = args[:geometry] if args.key?(:geometry)
202
+ @place_id = args[:place_id] if args.key?(:place_id)
203
+ @relations = args[:relations] if args.key?(:relations)
204
+ @segment_info = args[:segment_info] if args.key?(:segment_info)
205
+ @type = args[:type] if args.key?(:type)
206
+ end
207
+ end
208
+
209
+ # A tile containing information about the map features located in the region it
210
+ # covers.
211
+ class FeatureTile
212
+ include Google::Apis::Core::Hashable
213
+
214
+ # Global tile coordinates. Global tile coordinates reference a specific tile on
215
+ # the map at a specific zoom level.
216
+ # The origin of this coordinate system is always at the northwest corner of the
217
+ # map, with x values increasing from west to east and y values increasing from
218
+ # north to south. Tiles are indexed using x, y coordinates from that origin.
219
+ # The zoom level containing the entire world in a tile is 0, and it increases
220
+ # as you zoom in. Zoom level n + 1 will contain 4 times as many tiles as zoom
221
+ # level n.
222
+ # The zoom level controls the level of detail of the data that is returned. In
223
+ # particular, this affects the set of feature types returned, their density,
224
+ # and geometry simplification. The exact tile contents may change over time,
225
+ # but care will be taken to keep supporting the most important use cases. For
226
+ # example, zoom level 15 shows roads for orientation and planning in the local
227
+ # neighborhood and zoom level 17 shows buildings to give users on foot a sense
228
+ # of situational awareness.
229
+ # Corresponds to the JSON property `coordinates`
230
+ # @return [Google::Apis::VectortileV1::TileCoordinates]
231
+ attr_accessor :coordinates
232
+
233
+ # Features present on this map tile.
234
+ # Corresponds to the JSON property `features`
235
+ # @return [Array<Google::Apis::VectortileV1::Feature>]
236
+ attr_accessor :features
237
+
238
+ # Resource name of the tile. The tile resource name is prefixed by its
239
+ # collection ID `tiles/` followed by the resource ID, which encodes the
240
+ # tile's global x and y coordinates and zoom level as `@<x>,<y>,<zoom>z`. For
241
+ # example, `tiles/@1,2,3z`.
242
+ # Corresponds to the JSON property `name`
243
+ # @return [String]
244
+ attr_accessor :name
245
+
246
+ # Data providers for the data contained in this tile.
247
+ # Corresponds to the JSON property `providers`
248
+ # @return [Array<Google::Apis::VectortileV1::ProviderInfo>]
249
+ attr_accessor :providers
250
+
251
+ # Tile response status code to support tile caching.
252
+ # Corresponds to the JSON property `status`
253
+ # @return [String]
254
+ attr_accessor :status
255
+
256
+ # An opaque value, usually less than 30 characters, that contains version
257
+ # info about this tile and the data that was used to generate it.
258
+ # The client should store this value in its tile cache and pass it back to
259
+ # the API in the client_tile_version_id field of subsequent tile requests in
260
+ # order to enable the API to detect when the new tile would be the same as
261
+ # the one the client already has in its cache.
262
+ # Also see STATUS_OK_DATA_UNCHANGED.
263
+ # Corresponds to the JSON property `versionId`
264
+ # @return [String]
265
+ attr_accessor :version_id
266
+
267
+ def initialize(**args)
268
+ update!(**args)
269
+ end
270
+
271
+ # Update properties of this object
272
+ def update!(**args)
273
+ @coordinates = args[:coordinates] if args.key?(:coordinates)
274
+ @features = args[:features] if args.key?(:features)
275
+ @name = args[:name] if args.key?(:name)
276
+ @providers = args[:providers] if args.key?(:providers)
277
+ @status = args[:status] if args.key?(:status)
278
+ @version_id = args[:version_id] if args.key?(:version_id)
279
+ end
280
+ end
281
+
282
+ # A packed representation of a 2D grid of uniformly spaced points containing
283
+ # elevation data. Each point within the grid represents the altitude in
284
+ # meters above average sea level at that location within the tile.
285
+ # Elevations provided are (generally) relative to the EGM96 geoid, however
286
+ # some areas will be relative to NAVD88. EGM96 and NAVD88 are off by no more
287
+ # than 2 meters.
288
+ # The grid is oriented north-west to south-east, as illustrated:
289
+ # rows[0].a[0] rows[0].a[m]
290
+ # +-----------------+
291
+ # | |
292
+ # | N |
293
+ # | ^ |
294
+ # | | |
295
+ # | W <-----> E |
296
+ # | | |
297
+ # | v |
298
+ # | S |
299
+ # | |
300
+ # +-----------------+
301
+ # rows[n].a[0] rows[n].a[m]
302
+ # Rather than storing the altitudes directly, we store the diffs between them
303
+ # as integers at some requested level of precision to take advantage of
304
+ # integer packing. The actual altitude values a[] can be reconstructed using
305
+ # the scale and each row's first_altitude and altitude_diff fields.
306
+ class FirstDerivativeElevationGrid
307
+ include Google::Apis::Core::Hashable
308
+
309
+ # A multiplier applied to the altitude fields below to extract the actual
310
+ # altitudes in meters from the elevation grid.
311
+ # Corresponds to the JSON property `altitudeMultiplier`
312
+ # @return [Float]
313
+ attr_accessor :altitude_multiplier
314
+
315
+ # Rows of points containing altitude data making up the elevation grid.
316
+ # Each row is the same length. Rows are ordered from north to south. E.g:
317
+ # rows[0] is the north-most row, and rows[n] is the south-most row.
318
+ # Corresponds to the JSON property `rows`
319
+ # @return [Array<Google::Apis::VectortileV1::Row>]
320
+ attr_accessor :rows
321
+
322
+ def initialize(**args)
323
+ update!(**args)
324
+ end
325
+
326
+ # Update properties of this object
327
+ def update!(**args)
328
+ @altitude_multiplier = args[:altitude_multiplier] if args.key?(:altitude_multiplier)
329
+ @rows = args[:rows] if args.key?(:rows)
330
+ end
331
+ end
332
+
333
+ # Represents the geometry of a feature, that is, the shape that it has on the
334
+ # map. The local tile coordinate system has the origin at the north-west
335
+ # (upper-left) corner of the tile, and is scaled to 4096 units across each
336
+ # edge. The height (Z) axis has the same scale factor: an extruded area with a
337
+ # max_z value of 4096 has the same height as the width of the tile that it is
338
+ # on.
339
+ # There is no clipping boundary, so it is possible that some coordinates will
340
+ # lie outside the tile boundaries.
341
+ class Geometry
342
+ include Google::Apis::Core::Hashable
343
+
344
+ # The areas present in this geometry.
345
+ # Corresponds to the JSON property `areas`
346
+ # @return [Array<Google::Apis::VectortileV1::Area>]
347
+ attr_accessor :areas
348
+
349
+ # The extruded areas present in this geometry.
350
+ # Corresponds to the JSON property `extrudedAreas`
351
+ # @return [Array<Google::Apis::VectortileV1::ExtrudedArea>]
352
+ attr_accessor :extruded_areas
353
+
354
+ # The lines present in this geometry.
355
+ # Corresponds to the JSON property `lines`
356
+ # @return [Array<Google::Apis::VectortileV1::Line>]
357
+ attr_accessor :lines
358
+
359
+ # The modeled volumes present in this geometry.
360
+ # Corresponds to the JSON property `modeledVolumes`
361
+ # @return [Array<Google::Apis::VectortileV1::ModeledVolume>]
362
+ attr_accessor :modeled_volumes
363
+
364
+ def initialize(**args)
365
+ update!(**args)
366
+ end
367
+
368
+ # Update properties of this object
369
+ def update!(**args)
370
+ @areas = args[:areas] if args.key?(:areas)
371
+ @extruded_areas = args[:extruded_areas] if args.key?(:extruded_areas)
372
+ @lines = args[:lines] if args.key?(:lines)
373
+ @modeled_volumes = args[:modeled_volumes] if args.key?(:modeled_volumes)
374
+ end
375
+ end
376
+
377
+ # Represents a 2D polyline. Used to represent segments such as roads, train
378
+ # tracks, etc.
379
+ class Line
380
+ include Google::Apis::Core::Hashable
381
+
382
+ # 2D vertex list used for lines and areas. Each entry represents an offset from
383
+ # the previous one in local tile coordinates. The first entry is offset from
384
+ # (0, 0).
385
+ # For example, the list of vertices [(1,1), (2, 2), (1, 2)] would be encoded
386
+ # in vertex offsets as [(1, 1), (1, 1), (-1, 0)].
387
+ # Corresponds to the JSON property `vertexOffsets`
388
+ # @return [Google::Apis::VectortileV1::Vertex2DList]
389
+ attr_accessor :vertex_offsets
390
+
391
+ # The z-order of the line. Lines with a lower z-order should be rendered
392
+ # beneath lines with a higher z-order. This z-ordering does not imply
393
+ # anything about the altitude of the area relative to the ground, but it
394
+ # can be used to prevent z-fighting during rendering on the client. In
395
+ # general, larger and more important road features will have a higher z-order
396
+ # line associated with them. This z-ordering can only be used to compare
397
+ # lines, and cannot be compared with the z_order field in the Area message.
398
+ # The z-order may be negative or zero.
399
+ # Corresponds to the JSON property `zOrder`
400
+ # @return [Fixnum]
401
+ attr_accessor :z_order
402
+
403
+ def initialize(**args)
404
+ update!(**args)
405
+ end
406
+
407
+ # Update properties of this object
408
+ def update!(**args)
409
+ @vertex_offsets = args[:vertex_offsets] if args.key?(:vertex_offsets)
410
+ @z_order = args[:z_order] if args.key?(:z_order)
411
+ end
412
+ end
413
+
414
+ # Represents a modeled volume in 3D space. Used to represent 3D buildings.
415
+ class ModeledVolume
416
+ include Google::Apis::Core::Hashable
417
+
418
+ # The triangle strips present in this mesh.
419
+ # Corresponds to the JSON property `strips`
420
+ # @return [Array<Google::Apis::VectortileV1::TriangleStrip>]
421
+ attr_accessor :strips
422
+
423
+ # 3D vertex list used for modeled volumes. Each entry represents an offset from
424
+ # the previous one in local tile coordinates. The first coordinate is offset
425
+ # from (0, 0, 0).
426
+ # Corresponds to the JSON property `vertexOffsets`
427
+ # @return [Google::Apis::VectortileV1::Vertex3DList]
428
+ attr_accessor :vertex_offsets
429
+
430
+ def initialize(**args)
431
+ update!(**args)
432
+ end
433
+
434
+ # Update properties of this object
435
+ def update!(**args)
436
+ @strips = args[:strips] if args.key?(:strips)
437
+ @vertex_offsets = args[:vertex_offsets] if args.key?(:vertex_offsets)
438
+ end
439
+ end
440
+
441
+ # Information about the data providers that should be included in the
442
+ # attribution string shown by the client.
443
+ class ProviderInfo
444
+ include Google::Apis::Core::Hashable
445
+
446
+ # Attribution string for this provider. This string is not localized.
447
+ # Corresponds to the JSON property `description`
448
+ # @return [String]
449
+ attr_accessor :description
450
+
451
+ def initialize(**args)
452
+ update!(**args)
453
+ end
454
+
455
+ # Update properties of this object
456
+ def update!(**args)
457
+ @description = args[:description] if args.key?(:description)
458
+ end
459
+ end
460
+
461
+ # Represents a relation to another feature in the tile. For example, a building
462
+ # might be occupied by a given POI. The related feature can be retrieved using
463
+ # the related feature index.
464
+ class Relation
465
+ include Google::Apis::Core::Hashable
466
+
467
+ # Zero-based index to look up the related feature from the list of features
468
+ # in the tile.
469
+ # Corresponds to the JSON property `relatedFeatureIndex`
470
+ # @return [Fixnum]
471
+ attr_accessor :related_feature_index
472
+
473
+ # Relation type between the origin feature to the related feature.
474
+ # Corresponds to the JSON property `relationType`
475
+ # @return [String]
476
+ attr_accessor :relation_type
477
+
478
+ def initialize(**args)
479
+ update!(**args)
480
+ end
481
+
482
+ # Update properties of this object
483
+ def update!(**args)
484
+ @related_feature_index = args[:related_feature_index] if args.key?(:related_feature_index)
485
+ @relation_type = args[:relation_type] if args.key?(:relation_type)
486
+ end
487
+ end
488
+
489
+ # Extra metadata relating to roads.
490
+ class RoadInfo
491
+ include Google::Apis::Core::Hashable
492
+
493
+ # Road has signage discouraging or prohibiting use by the general public.
494
+ # E.g., roads with signs that say "Private", or "No trespassing."
495
+ # Corresponds to the JSON property `isPrivate`
496
+ # @return [Boolean]
497
+ attr_accessor :is_private
498
+ alias_method :is_private?, :is_private
499
+
500
+ def initialize(**args)
501
+ update!(**args)
502
+ end
503
+
504
+ # Update properties of this object
505
+ def update!(**args)
506
+ @is_private = args[:is_private] if args.key?(:is_private)
507
+ end
508
+ end
509
+
510
+ # A row of altitude points in the elevation grid, ordered from west to
511
+ # east.
512
+ class Row
513
+ include Google::Apis::Core::Hashable
514
+
515
+ # The difference between each successive pair of altitudes, from west to
516
+ # east. The first, westmost point, is just the altitude rather than a
517
+ # diff. The units are specified by the altitude_multiplier parameter
518
+ # above; the value in meters is given by altitude_multiplier *
519
+ # altitude_diffs[n]. The altitude row (in metres above sea level) can be
520
+ # reconstructed with: a[0] = altitude_diffs[0] * altitude_multiplier when
521
+ # n > 0, a[n] = a[n-1] + altitude_diffs[n-1] * altitude_multiplier.
522
+ # Corresponds to the JSON property `altitudeDiffs`
523
+ # @return [Array<Fixnum>]
524
+ attr_accessor :altitude_diffs
525
+
526
+ def initialize(**args)
527
+ update!(**args)
528
+ end
529
+
530
+ # Update properties of this object
531
+ def update!(**args)
532
+ @altitude_diffs = args[:altitude_diffs] if args.key?(:altitude_diffs)
533
+ end
534
+ end
535
+
536
+ # A packed representation of a 2D grid of uniformly spaced points containing
537
+ # elevation data. Each point within the grid represents the altitude in
538
+ # meters above average sea level at that location within the tile.
539
+ # Elevations provided are (generally) relative to the EGM96 geoid, however
540
+ # some areas will be relative to NAVD88. EGM96 and NAVD88 are off by no more
541
+ # than 2 meters.
542
+ # The grid is oriented north-west to south-east, as illustrated:
543
+ # rows[0].a[0] rows[0].a[m]
544
+ # +-----------------+
545
+ # | |
546
+ # | N |
547
+ # | ^ |
548
+ # | | |
549
+ # | W <-----> E |
550
+ # | | |
551
+ # | v |
552
+ # | S |
553
+ # | |
554
+ # +-----------------+
555
+ # rows[n].a[0] rows[n].a[m]
556
+ # Rather than storing the altitudes directly, we store the diffs of the diffs
557
+ # between them as integers at some requested level of precision to take
558
+ # advantage of integer packing.
559
+ # Note that the data is packed in such a way that is fast to decode in
560
+ # Unity and that further optimizes wire size.
561
+ class SecondDerivativeElevationGrid
562
+ include Google::Apis::Core::Hashable
563
+
564
+ # A multiplier applied to the elements in the encoded data to extract the
565
+ # actual altitudes in meters.
566
+ # Corresponds to the JSON property `altitudeMultiplier`
567
+ # @return [Float]
568
+ attr_accessor :altitude_multiplier
569
+
570
+ # The number of columns included in the encoded elevation data (i.e. the
571
+ # horizontal resolution of the grid).
572
+ # Corresponds to the JSON property `columnCount`
573
+ # @return [Fixnum]
574
+ attr_accessor :column_count
575
+
576
+ # A stream of elements each representing a point on the tile running across
577
+ # each row from left to right, top to bottom.
578
+ # There will be precisely horizontal_resolution * vertical_resolution
579
+ # elements in the stream.
580
+ # The elements are not the heights, rather the second order derivative of
581
+ # the values one would expect in a stream of height data.
582
+ # Each element is a varint with the following encoding:
583
+ # ------------------------------------------------------------------------|
584
+ # | Head Nibble |
585
+ # ------------------------------------------------------------------------|
586
+ # | Bit 0 | Bit 1 | Bits 2-3 |
587
+ # | Terminator| Sign (1=neg) | Least significant 2 bits of absolute error |
588
+ # ------------------------------------------------------------------------|
589
+ # | Tail Nibble #1 |
590
+ # ------------------------------------------------------------------------|
591
+ # | Bit 0 | Bit 1-3 |
592
+ # | Terminator| Least significant 3 bits of absolute error |
593
+ # ------------------------------------------------------------------------|
594
+ # | ...
595
+ # | Tail Nibble #n |
596
+ # ------------------------------------------------------------------------|
597
+ # | Bit 0 | Bit 1-3 |
598
+ # | Terminator| Least significant 3 bits of absolute error |
599
+ # ------------------------------------------------------------------------|
600
+ # Corresponds to the JSON property `encodedData`
601
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
602
+ # @return [String]
603
+ attr_accessor :encoded_data
604
+
605
+ # The number of rows included in the encoded elevation data (i.e. the
606
+ # vertical resolution of the grid).
607
+ # Corresponds to the JSON property `rowCount`
608
+ # @return [Fixnum]
609
+ attr_accessor :row_count
610
+
611
+ def initialize(**args)
612
+ update!(**args)
613
+ end
614
+
615
+ # Update properties of this object
616
+ def update!(**args)
617
+ @altitude_multiplier = args[:altitude_multiplier] if args.key?(:altitude_multiplier)
618
+ @column_count = args[:column_count] if args.key?(:column_count)
619
+ @encoded_data = args[:encoded_data] if args.key?(:encoded_data)
620
+ @row_count = args[:row_count] if args.key?(:row_count)
621
+ end
622
+ end
623
+
624
+ # Extra metadata relating to segments.
625
+ class SegmentInfo
626
+ include Google::Apis::Core::Hashable
627
+
628
+ # Extra metadata relating to roads.
629
+ # Corresponds to the JSON property `roadInfo`
630
+ # @return [Google::Apis::VectortileV1::RoadInfo]
631
+ attr_accessor :road_info
632
+
633
+ def initialize(**args)
634
+ update!(**args)
635
+ end
636
+
637
+ # Update properties of this object
638
+ def update!(**args)
639
+ @road_info = args[:road_info] if args.key?(:road_info)
640
+ end
641
+ end
642
+
643
+ # A tile containing information about the terrain located in the region it
644
+ # covers.
645
+ class TerrainTile
646
+ include Google::Apis::Core::Hashable
647
+
648
+ # Global tile coordinates. Global tile coordinates reference a specific tile on
649
+ # the map at a specific zoom level.
650
+ # The origin of this coordinate system is always at the northwest corner of the
651
+ # map, with x values increasing from west to east and y values increasing from
652
+ # north to south. Tiles are indexed using x, y coordinates from that origin.
653
+ # The zoom level containing the entire world in a tile is 0, and it increases
654
+ # as you zoom in. Zoom level n + 1 will contain 4 times as many tiles as zoom
655
+ # level n.
656
+ # The zoom level controls the level of detail of the data that is returned. In
657
+ # particular, this affects the set of feature types returned, their density,
658
+ # and geometry simplification. The exact tile contents may change over time,
659
+ # but care will be taken to keep supporting the most important use cases. For
660
+ # example, zoom level 15 shows roads for orientation and planning in the local
661
+ # neighborhood and zoom level 17 shows buildings to give users on foot a sense
662
+ # of situational awareness.
663
+ # Corresponds to the JSON property `coordinates`
664
+ # @return [Google::Apis::VectortileV1::TileCoordinates]
665
+ attr_accessor :coordinates
666
+
667
+ # A packed representation of a 2D grid of uniformly spaced points containing
668
+ # elevation data. Each point within the grid represents the altitude in
669
+ # meters above average sea level at that location within the tile.
670
+ # Elevations provided are (generally) relative to the EGM96 geoid, however
671
+ # some areas will be relative to NAVD88. EGM96 and NAVD88 are off by no more
672
+ # than 2 meters.
673
+ # The grid is oriented north-west to south-east, as illustrated:
674
+ # rows[0].a[0] rows[0].a[m]
675
+ # +-----------------+
676
+ # | |
677
+ # | N |
678
+ # | ^ |
679
+ # | | |
680
+ # | W <-----> E |
681
+ # | | |
682
+ # | v |
683
+ # | S |
684
+ # | |
685
+ # +-----------------+
686
+ # rows[n].a[0] rows[n].a[m]
687
+ # Rather than storing the altitudes directly, we store the diffs between them
688
+ # as integers at some requested level of precision to take advantage of
689
+ # integer packing. The actual altitude values a[] can be reconstructed using
690
+ # the scale and each row's first_altitude and altitude_diff fields.
691
+ # Corresponds to the JSON property `firstDerivative`
692
+ # @return [Google::Apis::VectortileV1::FirstDerivativeElevationGrid]
693
+ attr_accessor :first_derivative
694
+
695
+ # Resource name of the tile. The tile resource name is prefixed by its
696
+ # collection ID `terrain/` followed by the resource ID, which encodes the
697
+ # tile's global x and y coordinates and zoom level as `@<x>,<y>,<zoom>z`.
698
+ # For example, `terrain/@1,2,3z`.
699
+ # Corresponds to the JSON property `name`
700
+ # @return [String]
701
+ attr_accessor :name
702
+
703
+ # A packed representation of a 2D grid of uniformly spaced points containing
704
+ # elevation data. Each point within the grid represents the altitude in
705
+ # meters above average sea level at that location within the tile.
706
+ # Elevations provided are (generally) relative to the EGM96 geoid, however
707
+ # some areas will be relative to NAVD88. EGM96 and NAVD88 are off by no more
708
+ # than 2 meters.
709
+ # The grid is oriented north-west to south-east, as illustrated:
710
+ # rows[0].a[0] rows[0].a[m]
711
+ # +-----------------+
712
+ # | |
713
+ # | N |
714
+ # | ^ |
715
+ # | | |
716
+ # | W <-----> E |
717
+ # | | |
718
+ # | v |
719
+ # | S |
720
+ # | |
721
+ # +-----------------+
722
+ # rows[n].a[0] rows[n].a[m]
723
+ # Rather than storing the altitudes directly, we store the diffs of the diffs
724
+ # between them as integers at some requested level of precision to take
725
+ # advantage of integer packing.
726
+ # Note that the data is packed in such a way that is fast to decode in
727
+ # Unity and that further optimizes wire size.
728
+ # Corresponds to the JSON property `secondDerivative`
729
+ # @return [Google::Apis::VectortileV1::SecondDerivativeElevationGrid]
730
+ attr_accessor :second_derivative
731
+
732
+ def initialize(**args)
733
+ update!(**args)
734
+ end
735
+
736
+ # Update properties of this object
737
+ def update!(**args)
738
+ @coordinates = args[:coordinates] if args.key?(:coordinates)
739
+ @first_derivative = args[:first_derivative] if args.key?(:first_derivative)
740
+ @name = args[:name] if args.key?(:name)
741
+ @second_derivative = args[:second_derivative] if args.key?(:second_derivative)
742
+ end
743
+ end
744
+
745
+ # Global tile coordinates. Global tile coordinates reference a specific tile on
746
+ # the map at a specific zoom level.
747
+ # The origin of this coordinate system is always at the northwest corner of the
748
+ # map, with x values increasing from west to east and y values increasing from
749
+ # north to south. Tiles are indexed using x, y coordinates from that origin.
750
+ # The zoom level containing the entire world in a tile is 0, and it increases
751
+ # as you zoom in. Zoom level n + 1 will contain 4 times as many tiles as zoom
752
+ # level n.
753
+ # The zoom level controls the level of detail of the data that is returned. In
754
+ # particular, this affects the set of feature types returned, their density,
755
+ # and geometry simplification. The exact tile contents may change over time,
756
+ # but care will be taken to keep supporting the most important use cases. For
757
+ # example, zoom level 15 shows roads for orientation and planning in the local
758
+ # neighborhood and zoom level 17 shows buildings to give users on foot a sense
759
+ # of situational awareness.
760
+ class TileCoordinates
761
+ include Google::Apis::Core::Hashable
762
+
763
+ # Required. The x coordinate.
764
+ # Corresponds to the JSON property `x`
765
+ # @return [Fixnum]
766
+ attr_accessor :x
767
+
768
+ # Required. The y coordinate.
769
+ # Corresponds to the JSON property `y`
770
+ # @return [Fixnum]
771
+ attr_accessor :y
772
+
773
+ # Required. The Google Maps API zoom level.
774
+ # Corresponds to the JSON property `zoom`
775
+ # @return [Fixnum]
776
+ attr_accessor :zoom
777
+
778
+ def initialize(**args)
779
+ update!(**args)
780
+ end
781
+
782
+ # Update properties of this object
783
+ def update!(**args)
784
+ @x = args[:x] if args.key?(:x)
785
+ @y = args[:y] if args.key?(:y)
786
+ @zoom = args[:zoom] if args.key?(:zoom)
787
+ end
788
+ end
789
+
790
+ # Represents a strip of triangles. Each triangle uses the last edge of the
791
+ # previous one. The following diagram shows an example of a triangle strip,
792
+ # with each vertex labeled with its index in the vertex_index array.
793
+ # (1)-----(3)
794
+ # / \ / \
795
+ # / \ / \
796
+ # / \ / \
797
+ # (0)-----(2)-----(4)
798
+ # Vertices may be in either clockwise or counter-clockwise order.
799
+ class TriangleStrip
800
+ include Google::Apis::Core::Hashable
801
+
802
+ # Index into the vertex_offset array representing the next vertex in the
803
+ # triangle strip.
804
+ # Corresponds to the JSON property `vertexIndices`
805
+ # @return [Array<Fixnum>]
806
+ attr_accessor :vertex_indices
807
+
808
+ def initialize(**args)
809
+ update!(**args)
810
+ end
811
+
812
+ # Update properties of this object
813
+ def update!(**args)
814
+ @vertex_indices = args[:vertex_indices] if args.key?(:vertex_indices)
815
+ end
816
+ end
817
+
818
+ # 2D vertex list used for lines and areas. Each entry represents an offset from
819
+ # the previous one in local tile coordinates. The first entry is offset from
820
+ # (0, 0).
821
+ # For example, the list of vertices [(1,1), (2, 2), (1, 2)] would be encoded
822
+ # in vertex offsets as [(1, 1), (1, 1), (-1, 0)].
823
+ class Vertex2DList
824
+ include Google::Apis::Core::Hashable
825
+
826
+ # List of x-offsets in local tile coordinates.
827
+ # Corresponds to the JSON property `xOffsets`
828
+ # @return [Array<Fixnum>]
829
+ attr_accessor :x_offsets
830
+
831
+ # List of y-offsets in local tile coordinates.
832
+ # Corresponds to the JSON property `yOffsets`
833
+ # @return [Array<Fixnum>]
834
+ attr_accessor :y_offsets
835
+
836
+ def initialize(**args)
837
+ update!(**args)
838
+ end
839
+
840
+ # Update properties of this object
841
+ def update!(**args)
842
+ @x_offsets = args[:x_offsets] if args.key?(:x_offsets)
843
+ @y_offsets = args[:y_offsets] if args.key?(:y_offsets)
844
+ end
845
+ end
846
+
847
+ # 3D vertex list used for modeled volumes. Each entry represents an offset from
848
+ # the previous one in local tile coordinates. The first coordinate is offset
849
+ # from (0, 0, 0).
850
+ class Vertex3DList
851
+ include Google::Apis::Core::Hashable
852
+
853
+ # List of x-offsets in local tile coordinates.
854
+ # Corresponds to the JSON property `xOffsets`
855
+ # @return [Array<Fixnum>]
856
+ attr_accessor :x_offsets
857
+
858
+ # List of y-offsets in local tile coordinates.
859
+ # Corresponds to the JSON property `yOffsets`
860
+ # @return [Array<Fixnum>]
861
+ attr_accessor :y_offsets
862
+
863
+ # List of z-offsets in local tile coordinates.
864
+ # Corresponds to the JSON property `zOffsets`
865
+ # @return [Array<Fixnum>]
866
+ attr_accessor :z_offsets
867
+
868
+ def initialize(**args)
869
+ update!(**args)
870
+ end
871
+
872
+ # Update properties of this object
873
+ def update!(**args)
874
+ @x_offsets = args[:x_offsets] if args.key?(:x_offsets)
875
+ @y_offsets = args[:y_offsets] if args.key?(:y_offsets)
876
+ @z_offsets = args[:z_offsets] if args.key?(:z_offsets)
877
+ end
878
+ end
879
+ end
880
+ end
881
+ end