Class: Strava::Models::Lap
- Inherits:
-
Response
- Object
- Hashie::Trash
- Strava::Model
- Response
- Strava::Models::Lap
- Includes:
- Mixins::Distance, Mixins::ElapsedTime, Mixins::MovingTime, Mixins::StartDateLocal, Mixins::TotalElevationGain
- Defined in:
- lib/strava/models/lap.rb
Overview
Represents a lap within an activity.
Laps are splits within an activity, either created manually by the athlete or auto-generated by the recording device. Each lap contains metrics like distance, time, speed, and elevation for that specific segment of the activity.
Includes helper mixins for formatting distance, time, and elevation.
Instance Method Summary collapse
-
#activity ⇒ MetaActivity
The activity this lap belongs to.
-
#athlete ⇒ MetaAthlete
The athlete who recorded this lap.
-
#average_cadence ⇒ Float?
Average cadence (RPM for cycling, steps/minute for running).
-
#average_heartrate ⇒ Float?
Average heart rate in beats per minute.
-
#average_speed ⇒ Float
Average speed in meters per second.
-
#average_watts ⇒ Float?
Average power in watts.
-
#device_watts ⇒ Boolean?
Whether the watts are from a power meter (true) or estimated (false).
-
#end_index ⇒ Integer
Ending index in the activity's data stream.
-
#id ⇒ Integer
Lap ID.
-
#lap_index ⇒ Integer
The lap number (1-indexed).
-
#max_heartrate ⇒ Float?
Maximum heart rate in beats per minute.
-
#max_speed ⇒ Float
Maximum speed in meters per second.
-
#name ⇒ String
Lap name (e.g., 'Lap 1', 'Manual Lap').
-
#pace_zone ⇒ Integer?
Pace zone indicator.
-
#resource_state ⇒ Integer?
Resource state indicator.
-
#split ⇒ Integer?
Split number within the lap.
-
#start_date ⇒ Time
Start date and time (UTC).
-
#start_index ⇒ Integer
Starting index in the activity's data stream.
Methods included from Mixins::TotalElevationGain
#total_elevation_gain_in_feet, #total_elevation_gain_in_feet_s, #total_elevation_gain_in_meters, #total_elevation_gain_in_meters_s, #total_elevation_gain_s
Methods included from Mixins::ElapsedTime
Methods included from Mixins::MovingTime
Methods included from Mixins::Distance
#distance_in_feet, #distance_in_kilometers, #distance_in_kilometers_s, #distance_in_meters, #distance_in_meters_s, #distance_in_miles, #distance_in_miles_s, #distance_in_yards, #distance_in_yards_s, #distance_s
Instance Method Details
#activity ⇒ MetaActivity
Returns The activity this lap belongs to.
30 |
# File 'lib/strava/models/lap.rb', line 30 property 'activity', transform_with: ->(v) { Strava::Models::MetaActivity.new(v) } |
#athlete ⇒ MetaAthlete
Returns The athlete who recorded this lap.
33 |
# File 'lib/strava/models/lap.rb', line 33 property 'athlete', transform_with: ->(v) { Strava::Models::MetaAthlete.new(v) } |
#average_cadence ⇒ Float?
Returns Average cadence (RPM for cycling, steps/minute for running).
36 |
# File 'lib/strava/models/lap.rb', line 36 property 'average_cadence' |
#average_heartrate ⇒ Float?
Undocumented in official API
Returns Average heart rate in beats per minute.
86 |
# File 'lib/strava/models/lap.rb', line 86 property 'average_heartrate' |
#average_speed ⇒ Float
Returns Average speed in meters per second.
39 |
# File 'lib/strava/models/lap.rb', line 39 property 'average_speed' |
#average_watts ⇒ Float?
Undocumented in official API
Returns Average power in watts.
82 |
# File 'lib/strava/models/lap.rb', line 82 property 'average_watts' |
#device_watts ⇒ Boolean?
Undocumented in official API
Returns Whether the watts are from a power meter (true) or estimated (false).
78 |
# File 'lib/strava/models/lap.rb', line 78 property 'device_watts' |
#end_index ⇒ Integer
Returns Ending index in the activity's data stream.
49 |
# File 'lib/strava/models/lap.rb', line 49 property 'end_index' |
#id ⇒ Integer
Returns Lap ID.
27 |
# File 'lib/strava/models/lap.rb', line 27 property 'id' |
#lap_index ⇒ Integer
Returns The lap number (1-indexed).
52 |
# File 'lib/strava/models/lap.rb', line 52 property 'lap_index' |
#max_heartrate ⇒ Float?
Undocumented in official API
Returns Maximum heart rate in beats per minute.
90 |
# File 'lib/strava/models/lap.rb', line 90 property 'max_heartrate' |
#max_speed ⇒ Float
Returns Maximum speed in meters per second.
55 |
# File 'lib/strava/models/lap.rb', line 55 property 'max_speed' |
#name ⇒ String
Returns Lap name (e.g., 'Lap 1', 'Manual Lap').
58 |
# File 'lib/strava/models/lap.rb', line 58 property 'name' |
#pace_zone ⇒ Integer?
Returns Pace zone indicator.
61 |
# File 'lib/strava/models/lap.rb', line 61 property 'pace_zone' |
#resource_state ⇒ Integer?
Undocumented in official API
Returns Resource state indicator.
74 |
# File 'lib/strava/models/lap.rb', line 74 property 'resource_state' |
#split ⇒ Integer?
Returns Split number within the lap.
64 |
# File 'lib/strava/models/lap.rb', line 64 property 'split' |
#start_date ⇒ Time
Returns Start date and time (UTC).
67 |
# File 'lib/strava/models/lap.rb', line 67 property 'start_date', transform_with: ->(v) { Time.parse(v) } |
#start_index ⇒ Integer
Returns Starting index in the activity's data stream.
46 |
# File 'lib/strava/models/lap.rb', line 46 property 'start_index' |