コード例 #1
0
ファイル: Calculator.php プロジェクト: 9x/Runalyze
 /**
  * Calculate stride length for activity
  * Use this method if trackdata is not available
  * @param \Runalyze\Model\Activity\Object $activity
  * @return int [cm]
  */
 public static function forActivity(Activity\Object $activity)
 {
     if ($activity->cadence() > 0 && $activity->duration() > 0) {
         return round($activity->distance() * 1000 * 100 / ($activity->cadence() * 2 / 60 * $activity->duration()));
     }
     return 0;
 }
コード例 #2
0
ファイル: Inserter.php プロジェクト: 9x/Runalyze
 /**
  * Calculate stride length
  */
 protected function calculateStrideLength()
 {
     if ($this->Object->sportid() == Configuration::General()->runningSport()) {
         if (null !== $this->Trackdata && $this->Trackdata->has(Model\Trackdata\Object::CADENCE)) {
             $Calculator = new \Runalyze\Calculation\StrideLength\Calculator($this->Trackdata);
             $Calculator->calculate();
             $this->Object->set(Object::STRIDE_LENGTH, $Calculator->average());
         } elseif ($this->Object->cadence() > 0) {
             $this->Object->set(Object::STRIDE_LENGTH, \Runalyze\Calculation\StrideLength\Calculator::forActivity($this->Object));
         }
     }
 }