class Stressfactor::Interval
Attributes
end_point[RW]
start_point[RW]
Public Class Methods
new(start_point, end_point)
click to toggle source
# File lib/stressfactor/interval.rb, line 5 def initialize(start_point, end_point) @start_point = start_point @end_point = end_point end
Public Instance Methods
distance()
click to toggle source
distance in km
# File lib/stressfactor/interval.rb, line 18 def distance end_point.haversine_distance_from(start_point) end
grade()
click to toggle source
grade in percent incline/decline
# File lib/stressfactor/interval.rb, line 23 def grade elevation_change = end_point.elevation - start_point.elevation # Normalize to meters distance_change = distance * 1000 radians = Math.atan(elevation_change / distance_change) 180 * radians / Math::PI end
time(options={})
click to toggle source
time in seconds
# File lib/stressfactor/interval.rb, line 11 def time(options={}) delta = end_point.time - start_point.time delta /= 60.0 if options[:units] == :minutes delta end
to_s()
click to toggle source
# File lib/stressfactor/interval.rb, line 31 def to_s "i: #{time}s | #{distance * 1000}m | #{grade}%" end