class GpxRuby::Gpx::Track
Attributes
comment[RW]
description[RW]
name[RW]
number[RW]
segments[RW]
source[RW]
time[RW]
url[RW]
url_name[RW]
Public Class Methods
new(a_hash)
click to toggle source
# File lib/gpx_ruby/gpx/track.rb, line 11 def initialize(a_hash) @name = a_hash[:name] @time = a_hash[:time] @segments = a_hash[:segments] || [] @number = a_hash[:number] @source = a_hash[:source] @url = a_hash[:url] @url_name = a_hash[:url_name] @comment = a_hash[:comment] @description = a_hash[:description] end
Public Instance Methods
center_of_gravity()
click to toggle source
# File lib/gpx_ruby/gpx/track.rb, line 37 def center_of_gravity track_points = points len = track_points.size center = track_points.reduce(:+) center / len end
distance()
click to toggle source
# File lib/gpx_ruby/gpx/track.rb, line 27 def distance @distance ||= @segments.map {|segment| segment.distance }.reduce(:+) end
points()
click to toggle source
# File lib/gpx_ruby/gpx/track.rb, line 23 def points @points ||= @segments.map {|segment| segment.points }.reduce(:+) end
total_time()
click to toggle source
# File lib/gpx_ruby/gpx/track.rb, line 31 def total_time start_time = @segments.first.points.first.time end_time = @segments.last.points.last.time end_time - start_time rescue 0 end