summaryrefslogtreecommitdiff
path: root/altoslib/AltosFlightStats.java
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2017-10-04 13:42:16 -0700
committerKeith Packard <keithp@keithp.com>2017-10-04 13:42:16 -0700
commit730ee7bf91f607ece42c010a10c53d0013492b96 (patch)
tree75ec3efd39013d3d58483df90089ce07bd66231b /altoslib/AltosFlightStats.java
parent98dc29a7a964f8d653b73989c6751695d168844c (diff)
altoslib: Adapt KML output to make TRA record people happier
Provide two paths, one using GPS data the other baro. Replace separate path segments for each state with markers so that the path is a single unit, able to be displayed in the elevation profile widget. Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altoslib/AltosFlightStats.java')
-rw-r--r--altoslib/AltosFlightStats.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/altoslib/AltosFlightStats.java b/altoslib/AltosFlightStats.java
index ea1a9675..6bb83581 100644
--- a/altoslib/AltosFlightStats.java
+++ b/altoslib/AltosFlightStats.java
@@ -27,6 +27,8 @@ public class AltosFlightStats {
public double max_acceleration;
public double[] state_speed = new double[AltosLib.ao_flight_invalid + 1];
public double[] state_enter_speed = new double[AltosLib.ao_flight_invalid + 1];
+ public double[] state_enter_height = new double[AltosLib.ao_flight_invalid + 1];
+ public double[] state_enter_gps_height = new double[AltosLib.ao_flight_invalid + 1];
public double[] state_accel = new double[AltosLib.ao_flight_invalid + 1];
public double[] state_time = new double[AltosLib.ao_flight_invalid + 1];
public String product;
@@ -134,6 +136,11 @@ public class AltosFlightStats {
if (0 <= state && state <= AltosLib.ao_flight_invalid && delta_time > 0) {
if (state_enter_speed[state] == AltosLib.MISSING)
state_enter_speed[state] = series.speed_series.value(start_time);
+ if (state_enter_height[state] == AltosLib.MISSING)
+ state_enter_height[state] = series.height_series.value(start_time);
+ if (state_enter_gps_height[state] == AltosLib.MISSING)
+ if (series.gps_height != null)
+ state_enter_gps_height[state] = series.gps_height.value(start_time);
speeds[state].value += series.speed_series.average(start_time, end_time) * delta_time;
speeds[state].time += delta_time;
accels[state].value += series.accel_series.average(start_time, end_time) * delta_time;