noginn/endurance

PHP library for parsing cycling GPS activities and calculating metrics.

dev-master 2013-07-07 18:31 UTC

This package is not auto-updated.

Last update: 2024-04-27 12:12:37 UTC


README

Endurance is a PHP library for parsing cycling GPS activities and calculating metrics.

Usage

Parse TCX files from Garmin devices

<?php

use Endurance\TCXParser;

$parser = new TCXParser();
$activity = $parser->parse('/path/to/activity.tcx');

Calculate useful metrics

<?php

use Endurance\Calculator\HeartRateZoneCalculator;
use Endurance\Calculator\MetricCalculator;
use Endurance\Metric\AverageMovingSpeedMetric;

$zoneCalculator = new HeartRateZoneCalculator();
$zones = $zoneCalculator->calculateZones(182);

$metricCalculator = new MetricCalculator();
$metrics = $metricCalculator->calculate(array(
    'averageMovingSpeed' => new AverageMovingSpeedMetric()
), $activity->getPoints(), $zones);

// Returns an associative array of the calculated metric values
// $metrics = ['averageMovingSpeed' => 26.43]

Running the Tests

Setup the vendor directory

$ cd endurance
$ php composer.phar install --dev

Launch the test suite

In the root directory:

$ phpunit

Is it green?