class Google::Apis::VectortileV1::FirstDerivativeElevationGrid

A packed representation of a 2D grid of uniformly spaced points containing elevation data. Each point within the grid represents the altitude in meters above average sea level at that location within the tile. Elevations provided are (generally) relative to the EGM96 geoid, however some areas will be relative to NAVD88. EGM96 and NAVD88 are off by no more than 2 meters. The grid is oriented north-west to south-east, as illustrated: rows.a rows .a ----------------- | | | N | | ^ | | | | | W <—–> E | | | | | v | | S | | | ----------------- rows.a rows.a Rather than storing the altitudes directly, we store the diffs between them as integers at some requested level of precision to take advantage of integer packing. The actual altitude values a[] can be reconstructed using the scale and each row's first_altitude and altitude_diff fields. More details in go/elevation-encoding- options-for-enduro under “Recommended implementation”.

Attributes

altitude_multiplier[RW]

A multiplier applied to the altitude fields below to extract the actual altitudes in meters from the elevation grid. Corresponds to the JSON property `altitudeMultiplier` @return [Float]

rows[RW]

Rows of points containing altitude data making up the elevation grid. Each row is the same length. Rows are ordered from north to south. E.g: rows is the north-most row, and rows is the south-most row. Corresponds to the JSON property `rows` @return [Array<Google::Apis::VectortileV1::Row>]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/vectortile_v1/classes.rb, line 346
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/vectortile_v1/classes.rb, line 351
def update!(**args)
  @altitude_multiplier = args[:altitude_multiplier] if args.key?(:altitude_multiplier)
  @rows = args[:rows] if args.key?(:rows)
end