[chronojump] Photocell and encoder races export lap times in .csv



commit 6b107b95049e2b6eef5337c3d28bd07ccbf58524
Author: Xavier Padullés <testing chronojump org>
Date:   Sun Apr 25 00:24:30 2021 +0200

    Photocell and encoder races export lap times in .csv

 r-scripts/sprintEncoder.R    |  4 ++--
 r-scripts/sprintPhotocells.R |  2 +-
 r-scripts/sprintUtil.R       | 51 ++++++++++++++++++++++++--------------------
 3 files changed, 31 insertions(+), 26 deletions(-)
---
diff --git a/r-scripts/sprintEncoder.R b/r-scripts/sprintEncoder.R
index ab73dc21..c1e4c2ef 100644
--- a/r-scripts/sprintEncoder.R
+++ b/r-scripts/sprintEncoder.R
@@ -260,7 +260,7 @@ getSprintFromEncoder <- function(filename, testLength, Mass, Temperature = 25, H
                     time = time, rawPosition = position + P0, rawSpeed = speed, rawAccel = accel, rawForce = 
totalForce, rawPower = power,
                     rawVmax = max(speed[trimmingSamples$start:trimmingSamples$end]), rawAmax = 
max(accel[trimmingSamples$start:trimmingSamples$end]), rawFmax = 
max(totalForce[trimmingSamples$start:trimmingSamples$end]), rawPmax = 
max(power[trimmingSamples$start:trimmingSamples$end]),
                     startSample = trimmingSamples$start, startTime = totalTime[trimmingSamples$start] + T0, 
endSample = trimmingSamples$end, testLength = testLength, longEnough = longEnough, regressionDone = 
regression$regressionDone, timeBefore = T0, startAccel = startAccel,
-                    splitPosition = splitPosition, splitTime = splitTime, meanSpeed = meanSpeed, meanForde = 
meanForce, meanPower = meanPower))
+                    splitTime = splitTime, splitPosition = splitPosition, meanSpeed = meanSpeed, meanForde = 
meanForce, meanPower = meanPower))
 }
 
 plotSprintFromEncoder <- function(sprintRawDynamics, sprintFittedDynamics,
@@ -783,7 +783,7 @@ testEncoderCJ <- function(filename, testLength, splitLength, mass, personHeight,
                                      startAccel = startAccel,
                                       plotStartDetection = TRUE)
 
-                exportRow = exportSprintDynamicsPrepareRow(sprintFittedDynamics)
+                exportRow = exportSprintDynamicsPrepareRow(sprintFittedDynamics, 
sprintRawDynamics$splitTime, sprintRawDynamics$splitPosition)
         } else
                print("Couldn't calculate the sprint model")
 
diff --git a/r-scripts/sprintPhotocells.R b/r-scripts/sprintPhotocells.R
index 50ab9a86..cb0e55e1 100644
--- a/r-scripts/sprintPhotocells.R
+++ b/r-scripts/sprintPhotocells.R
@@ -265,7 +265,7 @@ drawSprintFromPhotocells <- function(sprintDynamics, splitTimes, positions, titl
                 text.col = c("black", "black", "black", "magenta", "blue", "red"))
         
         #exportSprintDynamics(sprintDynamics)
-        return (exportSprintDynamicsPrepareRow(sprintDynamics))
+        return (exportSprintDynamicsPrepareRow(sprintDynamics, splitTimes, positions))
 }
 
 testPhotocellsCJ <- function(positions, splitTimes, mass, personHeight, tempC, personName)
diff --git a/r-scripts/sprintUtil.R b/r-scripts/sprintUtil.R
index cc4e2c49..0dea6b32 100644
--- a/r-scripts/sprintUtil.R
+++ b/r-scripts/sprintUtil.R
@@ -104,30 +104,35 @@ exportSprintDynamics <- function(sprintDynamics)
        exportRow = exportSprintDynamicsPrepareRow (sprintDynamics)
        exportSprintDynamicsWriteRow (exportRow)
 }
-exportSprintDynamicsPrepareRow <- function(sprintDynamics)
+exportSprintDynamicsPrepareRow <- function(sprintDynamics, splitTime, splitPosition)
 {
-        return(list(Mass = sprintDynamics$Mass,
-                          Height = sprintDynamics$Height,
-                          Temperature = sprintDynamics$Temperature,
-                          Vw = sprintDynamics$Vw,
-                          Ka = sprintDynamics$Ka,
-                          K.fitted = sprintDynamics$K.fitted,
-                          Vmax.fitted = sprintDynamics$Vmax,
-                          amax.fitted = sprintDynamics$amax.fitted,
-                          fmax.fitted = sprintDynamics$fmax.fitted,
-                          fmax.rel.fitted = sprintDynamics$fmax.rel.fitted,
-                          sfv.fitted = sprintDynamics$sfv.fitted,
-                          sfv.rel.fitted = sprintDynamics$sfv.rel.fitted,
-                          sfv.lm = sprintDynamics$sfv.lm,
-                          sfv.rel.lm = sprintDynamics$sfv.rel.lm,
-                          pmax.fitted = sprintDynamics$pmax.fitted,
-                          pmax.rel.fitted = sprintDynamics$pmax.rel.fitted,
-                          tpmax.fitted = sprintDynamics$tpmax.fitted,
-                          F0 = sprintDynamics$F0,
-                          F0.rel = sprintDynamics$F0.rel,
-                          V0 = sprintDynamics$V0,
-                          pmax.lm = sprintDynamics$pmax.lm,
-                          pmax.rel.lm = sprintDynamics$pmax.rel.lm))
+        splits = as.list(splitTime)
+        names(splits) = paste(splitPosition, "m", sep="")
+        raw = c(list(Mass = sprintDynamics$Mass,
+                   Height = sprintDynamics$Height,
+                   Temperature = sprintDynamics$Temperature,
+                   Vw = sprintDynamics$Vw,
+                   Ka = sprintDynamics$Ka,
+                   K.fitted = sprintDynamics$K.fitted,
+                   Vmax.fitted = sprintDynamics$Vmax,
+                   amax.fitted = sprintDynamics$amax.fitted,
+                   fmax.fitted = sprintDynamics$fmax.fitted,
+                   fmax.rel.fitted = sprintDynamics$fmax.rel.fitted,
+                   sfv.fitted = sprintDynamics$sfv.fitted,
+                   sfv.rel.fitted = sprintDynamics$sfv.rel.fitted,
+                   sfv.lm = sprintDynamics$sfv.lm,
+                   sfv.rel.lm = sprintDynamics$sfv.rel.lm,
+                   pmax.fitted = sprintDynamics$pmax.fitted,
+                   pmax.rel.fitted = sprintDynamics$pmax.rel.fitted,
+                   tpmax.fitted = sprintDynamics$tpmax.fitted,
+                   F0 = sprintDynamics$F0,
+                   F0.rel = sprintDynamics$F0.rel,
+                   V0 = sprintDynamics$V0,
+                   pmax.lm = sprintDynamics$pmax.lm,
+                   pmax.rel.lm = sprintDynamics$pmax.rel.lm), splits)
+        print(raw)
+        
+        return(raw)
 }
 
 exportSprintDynamicsWriteRow <- function(exportRow)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]