summaryrefslogtreecommitdiff
path: root/altoslib/AltosFlightSeries.java
diff options
context:
space:
mode:
Diffstat (limited to 'altoslib/AltosFlightSeries.java')
-rw-r--r--altoslib/AltosFlightSeries.java20
1 files changed, 7 insertions, 13 deletions
diff --git a/altoslib/AltosFlightSeries.java b/altoslib/AltosFlightSeries.java
index 7bedf389..6f4f7bb1 100644
--- a/altoslib/AltosFlightSeries.java
+++ b/altoslib/AltosFlightSeries.java
@@ -18,7 +18,7 @@ import java.util.*;
public class AltosFlightSeries extends AltosDataListener {
- public ArrayList<AltosTimeSeries> series;
+ public ArrayList<AltosTimeSeries> series = new ArrayList<AltosTimeSeries>();
public int[] indices() {
int[] indices = new int[series.size()];
@@ -206,8 +206,9 @@ public class AltosFlightSeries extends AltosDataListener {
altitude_series.add(time(), altitude);
}
- private void compute_height(double ground_altitude) {
- if (height_series == null) {
+ private void compute_height() {
+ double ground_altitude = cal_data.ground_altitude;
+ if (height_series == null && ground_altitude != AltosLib.MISSING) {
height_series = add_series(height_name, AltosConvert.height);
for (AltosTimeValue alt : altitude_series)
height_series.add(alt.time, alt.value - ground_altitude);
@@ -563,25 +564,18 @@ public class AltosFlightSeries extends AltosDataListener {
public void set_companion(AltosCompanion companion) {
}
- public void fill_in() {
+ public void finish() {
compute_speed();
compute_accel();
- if (cal_data.ground_altitude != AltosLib.MISSING)
- compute_height(cal_data.ground_altitude);
- }
-
- public void init() {
- time = AltosLib.MISSING;
- series = new ArrayList<AltosTimeSeries>();
+ compute_height();
}
public AltosTimeSeries[] series() {
- fill_in();
+ finish();
return series.toArray(new AltosTimeSeries[0]);
}
public AltosFlightSeries(AltosCalData cal_data) {
super(cal_data);
- init();
}
}