- void fill_map(AltosStateIterable states) {
- boolean any_gps = false;
- for (AltosState state : states) {
- if (state.gps != null && state.gps.locked && state.gps.nsat >= 4) {
- if (map == null)
- map = new AltosUIMapNew();
- map.show(state, null);
- has_gps = true;
+ void fill_map(AltosFlightSeries flight_series) {
+ boolean any_gps = false;
+ AltosGPSTimeValue gtv_last = null;
+ double gps_pad_altitude = flight_series.cal_data().gps_pad_altitude;;
+
+ if (flight_series.gps_series != null) {
+ for (AltosGPSTimeValue gtv : flight_series.gps_series) {
+ AltosGPS gps = gtv.gps;
+ if (gps != null &&
+ gps.locked &&
+ gps.nsat >= 4) {
+ if (map == null)
+ map = new AltosUIMap();
+ double gps_height = gps.alt - gps_pad_altitude;
+ int state = (int) flight_series.value_before(AltosFlightSeries.state_name, gtv.time);
+ map.show(gps, gtv.time, state, gps_height);
+ this.gps = gps;
+ gtv_last = gtv;
+ has_gps = true;
+ }