Module: Strava::Models::Mixins::ElevationDifference
- Extended by:
- ActiveSupport::Concern
- Included in:
- Split
- Defined in:
- lib/strava/models/mixins/elevation_difference.rb
Overview
Provides elevation difference conversion and formatting methods.
Elevation difference represents the net elevation change (can be positive or negative) for a split or segment. This differs from elevation_gain which only counts upward movement.
This mixin adds the elevation_difference property and helper methods to convert and format it in meters or feet.
Instance Method Summary collapse
-
#elevation_difference_in_feet ⇒ Float
Returns elevation difference in feet.
-
#elevation_difference_in_feet_s ⇒ String?
Returns formatted elevation difference in feet.
-
#elevation_difference_in_meters ⇒ Float
Returns elevation difference in meters (same as elevation_difference).
-
#elevation_difference_in_meters_s ⇒ String?
Returns formatted elevation difference in meters.
-
#elevation_difference_s ⇒ String?
Returns default formatted elevation difference (meters).
Instance Method Details
#elevation_difference_in_feet ⇒ Float
Returns elevation difference in feet.
35 36 37 |
# File 'lib/strava/models/mixins/elevation_difference.rb', line 35 def elevation_difference_in_feet elevation_difference * 3.28084 end |
#elevation_difference_in_feet_s ⇒ String?
Returns formatted elevation difference in feet.
64 65 66 67 68 |
# File 'lib/strava/models/mixins/elevation_difference.rb', line 64 def elevation_difference_in_feet_s return if elevation_difference.nil? format('%gft', format('%.1f', elevation_difference_in_feet)) end |
#elevation_difference_in_meters ⇒ Float
Returns elevation difference in meters (same as elevation_difference).
44 45 46 |
# File 'lib/strava/models/mixins/elevation_difference.rb', line 44 def elevation_difference_in_meters elevation_difference end |
#elevation_difference_in_meters_s ⇒ String?
Returns formatted elevation difference in meters.
53 54 55 56 57 |
# File 'lib/strava/models/mixins/elevation_difference.rb', line 53 def elevation_difference_in_meters_s return if elevation_difference.nil? format('%gm', format('%.1f', elevation_difference_in_meters)) end |
#elevation_difference_s ⇒ String?
Returns default formatted elevation difference (meters).
75 76 77 |
# File 'lib/strava/models/mixins/elevation_difference.rb', line 75 def elevation_difference_s elevation_difference_in_meters_s end |