Class: GoogleMapsPlatform::ElevationResult
- Inherits:
-
BaseModel
- Object
- CoreLibrary::BaseModel
- BaseModel
- GoogleMapsPlatform::ElevationResult
- Defined in:
- lib/google_maps_platform/models/elevation_result.rb
Overview
ElevationResult Model.
Instance Attribute Summary collapse
-
#elevation ⇒ Float
The elevation of the location in meters.
-
#location ⇒ LatLngLiteral
An object describing a specific location with Latitude and Longitude in decimal degrees.
-
#resolution ⇒ Float
The value indicating the maximum distance between data points from which the elevation was interpolated, in meters.
Class Method Summary collapse
-
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
-
.names ⇒ Object
A mapping from model property names to API property names.
-
.nullables ⇒ Object
An array for nullable fields.
-
.optionals ⇒ Object
An array for optional fields.
Instance Method Summary collapse
-
#initialize(elevation:, location:, resolution: SKIP, additional_properties: nil) ⇒ ElevationResult
constructor
A new instance of ElevationResult.
-
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
-
#to_s ⇒ Object
Provides a human-readable string representation of the object.
Methods inherited from BaseModel
#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json
Constructor Details
#initialize(elevation:, location:, resolution: SKIP, additional_properties: nil) ⇒ ElevationResult
51 52 53 54 55 56 57 58 59 60 |
# File 'lib/google_maps_platform/models/elevation_result.rb', line 51 def initialize(elevation:, location:, resolution: SKIP, additional_properties: nil) # Add additional model properties to the instance additional_properties = {} if additional_properties.nil? @elevation = elevation @resolution = resolution unless resolution == SKIP @location = location @additional_properties = additional_properties end |
Instance Attribute Details
#elevation ⇒ Float
The elevation of the location in meters.
14 15 16 |
# File 'lib/google_maps_platform/models/elevation_result.rb', line 14 def elevation @elevation end |
#location ⇒ LatLngLiteral
An object describing a specific location with Latitude and Longitude in decimal degrees.
28 29 30 |
# File 'lib/google_maps_platform/models/elevation_result.rb', line 28 def location @location end |
#resolution ⇒ Float
The value indicating the maximum distance between data points from which the elevation was interpolated, in meters. This property will be missing if the resolution is not known. Note that elevation data becomes more coarse (larger resolution values) when multiple points are passed. To obtain the most accurate elevation value for a point, it should be queried independently.
23 24 25 |
# File 'lib/google_maps_platform/models/elevation_result.rb', line 23 def resolution @resolution end |
Class Method Details
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
# File 'lib/google_maps_platform/models/elevation_result.rb', line 63 def self.from_hash(hash) return nil unless hash # Extract variables from the hash. elevation = hash.key?('elevation') ? hash['elevation'] : nil location = LatLngLiteral.from_hash(hash['location']) if hash['location'] resolution = hash.key?('resolution') ? hash['resolution'] : SKIP # Create a new hash for additional properties, removing known properties. new_hash = hash.reject { |k, _| names.value?(k) } additional_properties = APIHelper.get_additional_properties( new_hash, proc { |value| value } ) # Create object from extracted values. ElevationResult.new(elevation: elevation, location: location, resolution: resolution, additional_properties: additional_properties) end |
.names ⇒ Object
A mapping from model property names to API property names.
31 32 33 34 35 36 37 |
# File 'lib/google_maps_platform/models/elevation_result.rb', line 31 def self.names @_hash = {} if @_hash.nil? @_hash['elevation'] = 'elevation' @_hash['resolution'] = 'resolution' @_hash['location'] = 'location' @_hash end |
.nullables ⇒ Object
An array for nullable fields
47 48 49 |
# File 'lib/google_maps_platform/models/elevation_result.rb', line 47 def self.nullables [] end |
.optionals ⇒ Object
An array for optional fields
40 41 42 43 44 |
# File 'lib/google_maps_platform/models/elevation_result.rb', line 40 def self.optionals %w[ resolution ] end |
Instance Method Details
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
93 94 95 96 97 |
# File 'lib/google_maps_platform/models/elevation_result.rb', line 93 def inspect class_name = self.class.name.split('::').last "<#{class_name} elevation: #{@elevation.inspect}, resolution: #{@resolution.inspect},"\ " location: #{@location.inspect}, additional_properties: #{@additional_properties}>" end |
#to_s ⇒ Object
Provides a human-readable string representation of the object.
86 87 88 89 90 |
# File 'lib/google_maps_platform/models/elevation_result.rb', line 86 def to_s class_name = self.class.name.split('::').last "<#{class_name} elevation: #{@elevation}, resolution: #{@resolution}, location:"\ " #{@location}, additional_properties: #{@additional_properties}>" end |