X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altoslib%2FAltosKML.java;h=131bdf4982584c8240fd6d25fb93e0b7905cf44f;hp=4738ac9104925fab8af6eefb57f5a7a214dd600a;hb=ec46adee44ea08120b1940ca55a5fbdf56874bb1;hpb=730ee7bf91f607ece42c010a10c53d0013492b96 diff --git a/altoslib/AltosKML.java b/altoslib/AltosKML.java index 4738ac91..131bdf49 100644 --- a/altoslib/AltosKML.java +++ b/altoslib/AltosKML.java @@ -16,7 +16,7 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -package org.altusmetrum.altoslib_12; +package org.altusmetrum.altoslib_14; import java.io.*; import java.util.*; @@ -244,6 +244,8 @@ public class AltosKML implements AltosWriter { public void write(AltosGPS gps, double alt) { + if (gps == null) + return; if (gps.lat == AltosLib.MISSING) return; if (gps.lon == AltosLib.MISSING) @@ -306,19 +308,23 @@ public class AltosKML implements AltosWriter { stats = new AltosFlightStats(series); cal_data = series.cal_data(); start(); - folder_start("Barometric Altitude"); - path_style_start("baro", style_color(0)); - out.printf("Barometric Altitude\n"); - out.printf("Max height: %s\n", AltosConvert.height.show(6, stats.max_height)); - path_style_end(); - path_start("Barometric Altitude", "baro"); - for (AltosGPSTimeValue gtv : series.gps_series) - write(gtv.gps, baro_altitude(series, gtv.time)); - path_end(); - for (AltosTimeValue tv : series.state_series) { - write_point(tv, false); + if (series.height_series != null) { + folder_start("Barometric Altitude"); + path_style_start("baro", style_color(0)); + out.printf("Barometric Altitude\n"); + out.printf("Max height: %s\n", AltosConvert.height.show(6, stats.max_height)); + path_style_end(); + path_start("Barometric Altitude", "baro"); + for (AltosGPSTimeValue gtv : series.gps_series) + write(gtv.gps, baro_altitude(series, gtv.time)); + path_end(); + if (series.state_series != null) { + for (AltosTimeValue tv : series.state_series) { + write_point(tv, false); + } + } + folder_end(); } - folder_end(); folder_start("GPS Altitude"); path_style_start("gps", style_color(1)); out.printf("GPS Altitude"); @@ -328,8 +334,10 @@ public class AltosKML implements AltosWriter { for (AltosGPSTimeValue gtv : series.gps_series) write(gtv.gps, gtv.gps.alt); path_end(); - for (AltosTimeValue tv : series.state_series) { - write_point(tv, true); + if (series.state_series != null) { + for (AltosTimeValue tv : series.state_series) { + write_point(tv, true); + } } folder_end(); end();