X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altoslib%2FAltosCalData.java;h=fff6ba67a1eee973dbbcccd30542b861b7b5f6e6;hp=3da0e4009f5da00480cf786c42877a84e7d58552;hb=3d29882f5c70e627b0bbfe42c0a31d6cb5f6b6bf;hpb=fd738d47bbc46d36698350d5450abe1125d990a3 diff --git a/altoslib/AltosCalData.java b/altoslib/AltosCalData.java index 3da0e400..fff6ba67 100644 --- a/altoslib/AltosCalData.java +++ b/altoslib/AltosCalData.java @@ -206,9 +206,13 @@ public class AltosCalData { public AltosGPS gps_pad = null; + public double gps_pad_altitude = AltosLib.MISSING; + public void set_gps(AltosGPS gps) { if ((state != AltosLib.MISSING && state < AltosLib.ao_flight_boost) || gps_pad == null) gps_pad = gps; + if (gps_pad_altitude == AltosLib.MISSING && gps.alt != AltosLib.MISSING) + gps_pad_altitude = gps.alt; } /* @@ -226,8 +230,8 @@ public class AltosCalData { if (temp_gps != null) { if (temp_gps.locked && temp_gps.nsat >= 4) set_gps(temp_gps); + temp_gps = null; } - temp_gps = null; } public boolean gps_pending() { @@ -235,9 +239,8 @@ public class AltosCalData { } public AltosGPS make_temp_gps(int tick, boolean sats) { - if (temp_gps == null) { + if (temp_gps == null) temp_gps = new AltosGPS(); - } if (sats) { if (tick != temp_gps_sat_tick) temp_gps.cc_gps_sat = null;