projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
telegps: Get telegps application working again
[fw/altos]
/
altoslib
/
AltosFlightSeries.java
diff --git
a/altoslib/AltosFlightSeries.java
b/altoslib/AltosFlightSeries.java
index 7bedf38903eeadb209cc7616220a02a049795c45..5cf552fcf00d178048f56fbafe3f2815b279820e 100644
(file)
--- a/
altoslib/AltosFlightSeries.java
+++ b/
altoslib/AltosFlightSeries.java
@@
-18,7
+18,7
@@
import java.util.*;
public class AltosFlightSeries extends AltosDataListener {
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()];
public int[] indices() {
int[] indices = new int[series.size()];
@@
-86,6
+86,14
@@
public class AltosFlightSeries extends AltosDataListener {
return AltosLib.MISSING;
}
return AltosLib.MISSING;
}
+ public double value(String name, double time) {
+ for (AltosTimeSeries s : series) {
+ if (s.label.equals(name))
+ return s.value(time);
+ }
+ return AltosLib.MISSING;
+ }
+
public double value_before(String name, double time) {
for (AltosTimeSeries s : series) {
if (s.label.equals(name))
public double value_before(String name, double time) {
for (AltosTimeSeries s : series) {
if (s.label.equals(name))
@@
-206,8
+214,9
@@
public class AltosFlightSeries extends AltosDataListener {
altitude_series.add(time(), altitude);
}
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 && altitude_series != null) {
height_series = add_series(height_name, AltosConvert.height);
for (AltosTimeValue alt : altitude_series)
height_series.add(alt.time, alt.value - ground_altitude);
height_series = add_series(height_name, AltosConvert.height);
for (AltosTimeValue alt : altitude_series)
height_series.add(alt.time, alt.value - ground_altitude);
@@
-563,25
+572,18
@@
public class AltosFlightSeries extends AltosDataListener {
public void set_companion(AltosCompanion companion) {
}
public void set_companion(AltosCompanion companion) {
}
- public void fi
ll_in
() {
+ public void fi
nish
() {
compute_speed();
compute_accel();
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() {
}
public AltosTimeSeries[] series() {
- fi
ll_in
();
+ fi
nish
();
return series.toArray(new AltosTimeSeries[0]);
}
public AltosFlightSeries(AltosCalData cal_data) {
super(cal_data);
return series.toArray(new AltosTimeSeries[0]);
}
public AltosFlightSeries(AltosCalData cal_data) {
super(cal_data);
- init();
}
}
}
}