From 3871b9ac036e3adfa1da089245fc7973b268c921 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Wed, 28 May 2014 21:56:52 -0700 Subject: [PATCH] telegps: Add 'Info' tab This contains a summary of the tracking info, including position, speed and course. Signed-off-by: Keith Packard --- altoslib/AltosConvert.java | 26 + altoslib/AltosGreatCircle.java | 26 +- altoslib/AltosState.java | 24 + altosui/Makefile.am | 15 +- {altosui => altosuilib}/AltosCSVUI.java | 7 +- {altosui => altosuilib}/AltosDataChooser.java | 3 +- {altosui => altosuilib}/AltosLed.java | 4 +- {altosui => altosuilib}/AltosLights.java | 4 +- altosuilib/Makefile.am | 20 +- icon/telegps-128.png | Bin 0 -> 8736 bytes icon/telegps-16.png | Bin 0 -> 507 bytes icon/telegps-256.png | Bin 0 -> 21589 bytes icon/telegps-32.png | Bin 0 -> 1475 bytes icon/telegps-48.png | Bin 0 -> 2507 bytes icon/telegps-512.png | Bin 0 -> 56581 bytes icon/telegps-64.png | Bin 0 -> 3678 bytes icon/telegps.ico | Bin 0 -> 285478 bytes icon/telegps.svg | 215 ++++++++ telegps/Makefile.am | 1 + telegps/TeleGPS.java | 13 + telegps/TeleGPSInfo.java | 511 ++++++++++++++++++ 21 files changed, 822 insertions(+), 47 deletions(-) rename {altosui => altosuilib}/AltosCSVUI.java (94%) rename {altosui => altosuilib}/AltosDataChooser.java (97%) rename {altosui => altosuilib}/AltosLed.java (92%) rename {altosui => altosuilib}/AltosLights.java (94%) create mode 100644 icon/telegps-128.png create mode 100644 icon/telegps-16.png create mode 100644 icon/telegps-256.png create mode 100644 icon/telegps-32.png create mode 100644 icon/telegps-48.png create mode 100644 icon/telegps-512.png create mode 100644 icon/telegps-64.png create mode 100644 icon/telegps.ico create mode 100644 icon/telegps.svg create mode 100644 telegps/TeleGPSInfo.java diff --git a/altoslib/AltosConvert.java b/altoslib/AltosConvert.java index 484f6213..a65669da 100644 --- a/altoslib/AltosConvert.java +++ b/altoslib/AltosConvert.java @@ -371,4 +371,30 @@ public class AltosConvert { return 94; return (int) Math.floor (1.0/2.0 * (24.0e6/32.0) / freq + 0.5); } + + public static final int BEARING_LONG = 0; + public static final int BEARING_SHORT = 1; + public static final int BEARING_VOICE = 2; + + public static String bearing_to_words(int length, double bearing) { + String [][] bearing_string = { + { + "North", "North North East", "North East", "East North East", + "East", "East South East", "South East", "South South East", + "South", "South South West", "South West", "West South West", + "West", "West North West", "North West", "North North West" + }, { + "N", "NNE", "NE", "ENE", + "E", "ESE", "SE", "SSE", + "S", "SSW", "SW", "WSW", + "W", "WNW", "NW", "NNW" + }, { + "north", "nor nor east", "north east", "east nor east", + "east", "east sow east", "south east", "sow sow east", + "south", "sow sow west", "south west", "west sow west", + "west", "west nor west", "north west", "nor nor west " + } + }; + return bearing_string[length][(int)((bearing / 90 * 8 + 1) / 2)%16]; + } } diff --git a/altoslib/AltosGreatCircle.java b/altoslib/AltosGreatCircle.java index 39df4fc8..4782c34d 100644 --- a/altoslib/AltosGreatCircle.java +++ b/altoslib/AltosGreatCircle.java @@ -30,30 +30,12 @@ public class AltosGreatCircle implements Cloneable { static final double rad = Math.PI / 180; static final double earth_radius = 6371.2 * 1000; /* in meters */ - public static final int BEARING_LONG = 0; - public static final int BEARING_SHORT = 1; - public static final int BEARING_VOICE = 2; + public static final int BEARING_LONG = AltosConvert.BEARING_LONG; + public static final int BEARING_SHORT = AltosConvert.BEARING_SHORT; + public static final int BEARING_VOICE = AltosConvert.BEARING_VOICE; public String bearing_words(int length) { - String [][] bearing_string = { - { - "North", "North North East", "North East", "East North East", - "East", "East South East", "South East", "South South East", - "South", "South South West", "South West", "West South West", - "West", "West North West", "North West", "North North West" - }, { - "N", "NNE", "NE", "ENE", - "E", "ESE", "SE", "SSE", - "S", "SSW", "SW", "WSW", - "W", "WNW", "NW", "NNW" - }, { - "north", "nor nor east", "north east", "east nor east", - "east", "east sow east", "south east", "sow sow east", - "south", "sow sow west", "south west", "west sow west", - "west", "west nor west", "north west", "nor nor west " - } - }; - return bearing_string[length][(int)((bearing / 90 * 8 + 1) / 2)%16]; + return AltosConvert.bearing_to_words(length, bearing); } public AltosGreatCircle (double start_lat, double start_lon, double start_alt, diff --git a/altoslib/AltosState.java b/altoslib/AltosState.java index 9e8e22ac..1162e522 100644 --- a/altoslib/AltosState.java +++ b/altoslib/AltosState.java @@ -389,6 +389,10 @@ public class AltosState implements Cloneable { private AltosGpsAltitude gps_altitude; + private AltosValue gps_ground_speed; + private AltosValue gps_ascent_rate; + private AltosValue gps_course; + public double altitude() { double a = altitude.value(); if (a != AltosLib.MISSING) @@ -419,6 +423,18 @@ public class AltosState implements Cloneable { gps_altitude.set(new_gps_altitude, time); } + public double gps_ground_speed() { + return gps_ground_speed.value(); + } + + public double gps_ascent_rate() { + return gps_ascent_rate.value(); + } + + public double gps_course() { + return gps_course.value(); + } + class AltosPressure extends AltosValue { void set(double p, double time) { super.set(p, time); @@ -695,6 +711,8 @@ public class AltosState implements Cloneable { gps_altitude = new AltosGpsAltitude(); gps_ground_altitude = new AltosGpsGroundAltitude(); + gps_ground_speed = new AltosValue(); + gps_ascent_rate = new AltosValue(); speak_tick = AltosLib.MISSING; speak_altitude = AltosLib.MISSING; @@ -877,6 +895,12 @@ public class AltosState implements Cloneable { gps_ground_altitude.set(gps.alt, time); } gps_altitude.set(gps.alt, time); + if (gps.climb_rate != AltosLib.MISSING) + gps_ascent_rate.set(gps.climb_rate, time); + if (gps.ground_speed != AltosLib.MISSING) + gps_ground_speed.set(gps.ground_speed, time); + if (gps.course != AltosLib.MISSING) + gps_course.set(gps.course, time); } if (gps.lat != 0 && gps.lon != 0 && pad_lat != AltosLib.MISSING && diff --git a/altosui/Makefile.am b/altosui/Makefile.am index c834646d..9eff1614 100644 --- a/altosui/Makefile.am +++ b/altosui/Makefile.am @@ -20,7 +20,6 @@ altosui_JAVA = \ AltosConfigureUI.java \ AltosConfigTD.java \ AltosConfigTDUI.java \ - AltosCSVUI.java \ AltosDescent.java \ AltosFlashUI.java \ AltosFlightInfoTableModel.java \ @@ -36,8 +35,6 @@ altosui_JAVA = \ AltosLaunchUI.java \ AltosInfoTable.java \ AltosLanded.java \ - AltosLed.java \ - AltosLights.java \ AltosPad.java \ AltosUIPreferencesBackend.java \ AltosRomconfigUI.java \ @@ -45,8 +42,7 @@ altosui_JAVA = \ AltosGraph.java \ AltosGraphDataPoint.java \ AltosGraphDataSet.java \ - AltosGraphUI.java \ - AltosDataChooser.java + AltosGraphUI.java JFREECHART_CLASS= \ jfreechart.jar @@ -94,20 +90,13 @@ JAVA_ICONS=\ $(ICONDIR)/altus-metrum-128.png \ $(ICONDIR)/altus-metrum-256.png -ICONS= $(ICONDIR)/redled.png $(ICONDIR)/redoff.png \ - $(ICONDIR)/greenled.png $(ICONDIR)/greenoff.png \ - $(ICONDIR)/grayled.png $(ICONDIR)/grayoff.png - # icon base names for jar ICONJAR= -C $(ICONDIR) altus-metrum-16.png \ -C $(ICONDIR) altus-metrum-32.png \ -C $(ICONDIR) altus-metrum-48.png \ -C $(ICONDIR) altus-metrum-64.png \ -C $(ICONDIR) altus-metrum-128.png \ - -C $(ICONDIR) altus-metrum-256.png \ - -C $(ICONDIR) redled.png -C $(ICONDIR) redoff.png \ - -C $(ICONDIR) greenled.png -C $(ICONDIR) greenoff.png \ - -C $(ICONDIR) grayon.png -C $(ICONDIR) grayled.png + -C $(ICONDIR) altus-metrum-256.png WINDOWS_ICON=$(ICONDIR)/altus-metrum.ico diff --git a/altosui/AltosCSVUI.java b/altosuilib/AltosCSVUI.java similarity index 94% rename from altosui/AltosCSVUI.java rename to altosuilib/AltosCSVUI.java index a0fceee5..0a5e4fa2 100644 --- a/altosui/AltosCSVUI.java +++ b/altosuilib/AltosCSVUI.java @@ -15,14 +15,13 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -package altosui; +package org.altusmetrum.altosuilib_2; import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*; import org.altusmetrum.altoslib_4.*; -import org.altusmetrum.altosuilib_2.*; public class AltosCSVUI extends AltosUIDialog @@ -43,9 +42,9 @@ public class AltosCSVUI String selected = (String) combo_box.getSelectedItem(); if (selected.contains("CSV")) - new_name = Altos.replace_extension(current_name, ".csv"); + new_name = AltosLib.replace_extension(current_name, ".csv"); else if (selected.contains("KML")) - new_name = Altos.replace_extension(current_name, ".kml"); + new_name = AltosLib.replace_extension(current_name, ".kml"); if (new_name != null) csv_chooser.setSelectedFile(new File(new_name)); } diff --git a/altosui/AltosDataChooser.java b/altosuilib/AltosDataChooser.java similarity index 97% rename from altosui/AltosDataChooser.java rename to altosuilib/AltosDataChooser.java index 43726a44..14d28115 100644 --- a/altosui/AltosDataChooser.java +++ b/altosuilib/AltosDataChooser.java @@ -15,13 +15,12 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -package altosui; +package org.altusmetrum.altosuilib_2; import javax.swing.*; import javax.swing.filechooser.FileNameExtensionFilter; import java.io.*; import org.altusmetrum.altoslib_4.*; -import org.altusmetrum.altosuilib_2.*; public class AltosDataChooser extends JFileChooser { JFrame frame; diff --git a/altosui/AltosLed.java b/altosuilib/AltosLed.java similarity index 92% rename from altosui/AltosLed.java rename to altosuilib/AltosLed.java index 93064f1e..2debb62a 100644 --- a/altosui/AltosLed.java +++ b/altosuilib/AltosLed.java @@ -15,7 +15,7 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -package altosui; +package org.altusmetrum.altosuilib_2; import javax.swing.*; @@ -23,7 +23,7 @@ public class AltosLed extends JLabel { ImageIcon on, off; ImageIcon create_icon(String path) { - java.net.URL imgURL = AltosUI.class.getResource(path); + java.net.URL imgURL = AltosUILib.class.getResource(path); if (imgURL != null) return new ImageIcon(imgURL); System.err.printf("Cannot find icon \"%s\"\n", path); diff --git a/altosui/AltosLights.java b/altosuilib/AltosLights.java similarity index 94% rename from altosui/AltosLights.java rename to altosuilib/AltosLights.java index 7ad22f3e..c91b70e9 100644 --- a/altosui/AltosLights.java +++ b/altosuilib/AltosLights.java @@ -15,7 +15,7 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -package altosui; +package org.altusmetrum.altosuilib_2; import java.awt.*; import javax.swing.*; @@ -27,7 +27,7 @@ public class AltosLights extends JComponent { AltosLed red, green; ImageIcon create_icon(String path, String description) { - java.net.URL imgURL = AltosUI.class.getResource(path); + java.net.URL imgURL = AltosUILib.class.getResource(path); if (imgURL != null) return new ImageIcon(imgURL, description); System.err.printf("Cannot find icon \"%s\"\n", path); diff --git a/altosuilib/Makefile.am b/altosuilib/Makefile.am index 4dc4c47f..f554fd74 100644 --- a/altosuilib/Makefile.am +++ b/altosuilib/Makefile.am @@ -50,6 +50,10 @@ altosuilib_JAVA = \ AltosEepromManage.java \ AltosEepromMonitorUI.java \ AltosEepromSelect.java \ + AltosCSVUI.java \ + AltosDataChooser.java \ + AltosLights.java \ + AltosLed.java \ AltosBTDevice.java \ AltosBTDeviceIterator.java \ AltosBTManage.java \ @@ -58,6 +62,18 @@ altosuilib_JAVA = \ JAR=altosuilib_$(ALTOSUILIB_VERSION).jar +# Icons +ICONDIR=$(top_srcdir)/icon + +ICONS= $(ICONDIR)/redled.png $(ICONDIR)/redoff.png \ + $(ICONDIR)/greenled.png $(ICONDIR)/greenoff.png \ + $(ICONDIR)/grayon.png $(ICONDIR)/grayled.png + +# icon base names for jar +ICONJAR= -C $(ICONDIR) redled.png -C $(ICONDIR) redoff.png \ + -C $(ICONDIR) greenled.png -C $(ICONDIR) greenoff.png \ + -C $(ICONDIR) grayon.png -C $(ICONDIR) grayled.png + all-local: $(JAR) clean-local: @@ -72,5 +88,5 @@ install-altosuilibJAVA: $(JAR) $(JAVAROOT): mkdir -p $(JAVAROOT) -$(JAR): classaltosuilib.stamp - jar cf $@ -C $(JAVAROOT) . +$(JAR): classaltosuilib.stamp $(ICONS) + jar cf $@ $(ICONJAR) -C $(JAVAROOT) . diff --git a/icon/telegps-128.png b/icon/telegps-128.png new file mode 100644 index 0000000000000000000000000000000000000000..f1343d9ecc059687491a91a4e6cbb3492701a07f GIT binary patch literal 8736 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 KMNUMnLSTXxq}R>> literal 0 HcmV?d00001 diff --git a/icon/telegps-16.png b/icon/telegps-16.png new file mode 100644 index 0000000000000000000000000000000000000000..5bd4599998cf30cb4ef545c0387914e86a97c351 GIT binary patch literal 507 zcmVic{^q^g6ZmCt#g}d6d=hxIUqx7Rsc}|QC<&~X#>CtfTO-THz}YEAj|7{ zv!Va)APZoTJ8L#H6p$gcB>)isDeef*#@<1Kf48~&v#|h4k#>+~UY2HFCdo|#ljj@& zWJoPI?Rks^LIsPF1!oI_?k~l5#i!s%fToudzQCOj2;cO2{+V0B7c2_8uQYIs0f0xp zPilIZD2_TYGP|QeRINfZZ+Y`yz+w2(t!kAuNq#4G<+YdFl^4izlepFD>dC^fIux*D ztGX0t{hUfI8O;002ovPDHLkV1jGH(S`s3 literal 0 HcmV?d00001 diff --git a/icon/telegps-256.png b/icon/telegps-256.png new file mode 100644 index 0000000000000000000000000000000000000000..46e1670a2cca9f995670ab6d75b1b7ca677375e7 GIT binary patch literal 21589 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 N002ovPDHLkV1iLboACeu literal 0 HcmV?d00001 diff --git a/icon/telegps-32.png b/icon/telegps-32.png new file mode 100644 index 0000000000000000000000000000000000000000..c8588899856d04873bcce2cf254d601108244696 GIT binary patch literal 1475 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
    w7LRAWbs=O|-ETL?O{KAZdy-q%N-%fIS_a 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 wxz9Dos7HGZ>Ft}bdz!iT57$G zs_mUQsLhpGA$>k?>-oVZ{l9A4r^EGGQ|lg`c{bO|&YtgomwHZ?HRWPYz87-A-m%+V zTfKL_87MzfXXtkWTlackf2YkAeNm15CvRq1l109!p7$4Cn{9lflaKqgyQa74`9PQN zh4g-?_w0C6f4}*;#~XvTydhurc8;vL^8h|)=WodOdw005^STz++<#EMmel!Fo`|8# zEAO_AX>!^wKQp@7S^I*T2W+^$q4Kq)&Od203!clhB5q5`n0Wb_4P~~*AIl#d_t!LY z3(D7$JL5Obf1P&zWBHkf=@&lXYx4Qi&iL%dz+=GA0v~_;wC~CH@!9eKzq85$AD5T! zKg$`PzXjB=aO+vVqkab8s|IAWP)&XBSsvqi^?{KV>OaeO)X(61se!8&l93$sTkenX z-Dtx7)n|W(@3tkL{TuF|#CJvexxecE?5CeJ?fZ+G_U}*=wl$h2;W(*j23n5iUw$!> zFh$b{`J8$t5NH5U|A>Q%=PAb(ZEBV|83*U-QJ_b`79~a$tY2Y7!I~Au7A#h*XKs8o zJ&@`tKcUqM3CmKs^5pzA$`314AHUJQz@UOda`Y)MB4evO_-+8;m(*`u*FNrXF6XkJ z*9XPupT2$AcrW;z(YO6IN82vf9v7`JcoM!>6iD(KYWKX_pk=T7|L)fLrejd+OODY^ zPZ>+A?lN{4ii{tZrtK1Zw=BSGNb2xgm1$I$%_Y|TcTTPS#>nQU9Ru22c68}-)6t^G zEnA^VLl)tSC4fZNP^0Ii;3oY(|G90CyN+HRuQ`UcJm>hh!7)cz`Iz|D85^#{cNzlJ zu}R)P-s9o_Y2J@QLaW67>%%4|9fMn5aP;bMEun4qy9rJD+_M*|`ra~p#_bxa_B`Ld z!GJHGg!I1e=+gC;qhH(03B!ZWI40EI_2kX0Z%5+u^?}U5)BZL-A`brvfwQ|#sr#8e zJov1mf1Aq*T|3`QXx-ypLX+NisKfgM`OS}NsT%fs5EtC%funu*+u~Yr%?YEMo^-sG zJ0u35X#ixhKKsn4U@bW9{OY^^{z21Ijv+12JNmY}n$Vfo(Ct-4t{8Si5p@Sb=LT{~QH z;Kx1$idjFJu2ZM$Mz4<7IaU(h4LR!=+vvDsSjkWC;r&iPPU~~eeF`lwqjz}a9rj7} zJ`-b6v_q?N^6wY7elUISHWv(z_xI3OA2vSWm{W7VqeYHZ+weYEN3!ER*=y>Tr9+Mw z$U<0^oyL^9M;xP@opKCqew=^*BS8NBj6+(S)<-r+n>Rcz{`QKXb+)YjnI_;frGRH0 zbNFbY!*5%zd7o`9v0h(Zal0|A)&a-3y8AulUo5J&$FaK1W@C2lkN<*S z>ILLY^o!5=!q)VoKRlUxg?)SA8e>h+W@Ax>&HVdg0D1pe7F3C~M^xBmY$~zA*k2&Z zcqd)RA-vxZ$N>DNW4hL^_`URVKzzPC`cemwVb z<6`FddZ3nT7Tzxd{Fb)I*Tvy?T^oD(FR5qQZ)IFyoX9%g^Y6cLEJtYkwJf3f{d9AU zecF&8@vQ+s0rTs>{r|(-yEDGmrrZ9eeX8I0n?(IX-X!lo`~B3@;_#mRJG?(p3qFna zS^(5{zsoUKYf~G4Kc0W%p*Atm-~UpZEdKtt+BChYR%jXiXhq=nXnT46emAtSpW_LW;6MI& z4Zk7nLUKR%tKK`Iy}t>v`2R|1ImttKpK1GRHLBmz#{E4~>wXo_y8yr1-r&2*9xJsT zecsjTPQr)k0y(S?r<$sT3>l?0nu_OD0P@5?>PQo%^%yx=dy~4IoYa4o)~eZ3tuys8 zyzb}XIQaPUALq1D2V=DX^!u6t*^X)>_U_k)T)^XCK(+}U{xQdPZQ$r{w5f5mwPMq{ zYc<

    ^~l(HQ9u})(H3`+g{wzaII-k{>?R7uZx?sekXY?g|r+K@n$*T_tbgf?|J#p z@0vFD9OV89^g#SxZRof7OkY6qQ7>QleP24F4WIObWsfFkEso*Wn*z_xaewVq&C|M+ z$KQ|t4tlS=R$w81rvmV2w7tA!zx&$6TNktszrzcRzZ8;h{8?w{+j%isKaTsxz%zKa zzwec8)dsyaNegL*U**03?)K&xt~M1u6JY)AU)A@&;D|30pVdhFuObPlzODaDs#8;d zUj(M(JpHtZvp5T!#TodXxcJL2-=_WLmwy5O4h3%F*Z#?${N)$hnqPh~i25cHa2A+? zGhiKzQ&a}}0nRwZ^LcB$Z?=6}fVwX!q_aNvYubt5k!_vS@AGy34fcmW@Jz>d+VnP8 zGR%qGo_qd=rA3!)om?S$+q-o(#rACw8{4hPp6%^|_it~}>d>|#W%{5k*!F4Jh;7RYFWR;(`^>G8X$B3) z=L-V7muG6H540}nucx22YIZ(TwppKt-?!~~&(XEZEl1z>R~tx;9X&eTU>wCUEaaTy1H?w?%SM;o zVob_4>Q-vapZ*;682!~W!1Elu*9@!j&s(;-+*bRX+WUmKgpRW#N1vsuf55LO2PS>b6@Qc4U>-UADRj+&K!&{Eth{GYqAmU2n z8Xj{jsJ_=REZ=+N`;3J&02tqU-fPEK#KC(=Kfmb08KKqp*grwsY($H*j(1vJOz6Xy z3*tWPgBHCXBsA!C^GWWK?dIY0##l=V{{l|fQ+574?1cExz=MCgaY8A?UsJDmXPo8Q{*_zAZo)zXTwx6M8{ zCFFqPma#jG1Kh){gjSue^7^L(^#FAYrD@sy)|2*#;quxMPZZ;ZNlmTe3e)nTZ;DXu_6?fR?)IMN*+~}C-cglk3 z2aKhzt|Pdy~ZPe7M;7a!AZ^lNvS@-O<2`gj7y&HNgB9hEXw-iXh41quMa*SN<| zxgDuimss=NvdX*k8FdaC)OXYyY)8g{`vf27_0Is<{%+Ubr}f##1EJ?>rzo$y_D|4{ zm``xb4vPE_K0gg;;PE{?{ap{g^#zwitPk33r%lE^IL0?PDz1gG@qtZ`*zwnB2RyGo z?Z6f%e||UQoRIy|%}$DT=e0BbIy~=)yZFur0R0VBZ{g|hdibr%IkDBQz_qq@Wn%QO zN;@61aSf9&ekp^)8XjQ#d%gZ)O+I@JeqfAkbi%=y^}HJUaP6_ihEf}i2AS&Y#P@mw zjF0_MV+TLY;6SB}hw_B|&(6R#_VuMU87nHp8VeDhp7G{E$47N`$m?&2kE-J*?FV)D zKjys4EXYo1)!mNB@`x*!++b`fu=GiQmU@o(X-&(Hvy>S;{6h}^gIT6+W$b%zp;dZJ ziS@?nGFy!BO52SYl{U)p<9Yq*KCQOx=f&0b=;TssgJO)W#nu`73Pu^TvJCqYS4o~j z4oI&2M<0GW(+ux_Gt1)m(>a&v2lGc7jNvmzA66<#z5Z;t5ZRXL!pg4ud3~A9`sU*6 zjh%&88;22dKbt+w=o;|$VSH{NPz?CJZ5Dnq@iA6wp8NAOGyZiu<3js|Y)eFZ{{Zd- zvYq7hZz#Otzk3R=wsWrFWX^EoQr5-B<@7Ub*|dy{@fYYvkn8v-{%e28EB;rtF`s?s zKO_D@+PV6TObd;R*_If4v(K^NuTg$Ee$@6)zc2Tq|DMgU%#Q2UIp6RwV79(l>-!x( z_X$AGM;}P`7asnhhu>js*atr%?##IFU;Jn257N%jPoz@TQ0^F|uY{r@YxtD&v z{c~LRU;U=*oRb)?)jN&P4FyU8zm_B8tIvJ-P0>P1;Tj$@cF!0&ujhs~F3Ib^<3Hiw z>SqyWvlr2_N8&HH2k4*tp?cHH9j3w?`(g>iS>$F!A*GmkLGL1UO(PUeN`L# zP>yTs`scl)y|wa+Hs=3a)IRw8AgxXWK3D&?_VIt@=PvRv}$JtNQwU)PVm460bds<`og=t+v zAOp^8qa5GV#y+W_uV)<;D>twe>h)z+6@G1f$1LZT)_OAD6Lx|!a#kD7`9Ru;W&ruxpJj9Lr@S8iC$*95e}vYcei@ zIi8Hq{?UhDel357i`s_=S7==sL*zBGeTDsnF8v5{dnC1%nsK!tATyBCa*IoF9rLt~ z1u?$=i*f#aIxWpWyi);4-&(7d0Xp;x=*=fZwVWT~wc3Ch8^Y5U;_%0Hp5go@atXHK zidq4Az|)34GG+TAp7Z)^0e>df$Dezq!|${(`f;d@jK0c7lG?P>n-^spLOdg?fv8U0=dMC!u6l^`u%QdANSm-_2sy42)s07 zN8aFZ?c=Qdw7S%ng#p^E7m9Dn>wL~p_urVC+>6IVD*;du)FVZD=9 z#K3>rFH^I|`|*4#?Y~m-{B2rfCgJ=qc~13hR`J|A$0t4);rm9aZ#~cT`MOAsaz9Vu z>%XM>*7N*}^}2bU{;heQ8fcyU%=0Phd>V;W{2eA$@%;Vw=J}s-=9zcS*Z+&eDse`V z70*nz;@K8zp5wDx=OXTB!+P#K*Eip1G8VtjWGwak3l2VaKhqHs9v()fGf(T~P|f=AJg;VY?srSprY!lf&uSb3EZESFicpD#Hn&p*wN$p=xxo3N^59zNmPDXH!>Schu zUS7K#hqBLK$9_gLJlCO)3vV(n#|GP0w)M*}E_jXddU=-PgZIPnk(8alTd&-q_OXYHf@e7{cus0;B&7qM+GsD~2V_5c%0A^j13=kfTd^HESCa!^4hX?~ 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 + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/telegps/Makefile.am b/telegps/Makefile.am index 280b1e40..f8e2e63c 100644 --- a/telegps/Makefile.am +++ b/telegps/Makefile.am @@ -15,6 +15,7 @@ telegps_JAVA= \ TeleGPS.java \ TeleGPSStatus.java \ TeleGPSStatusUpdate.java \ + TeleGPSInfo.java \ TeleGPSConfig.java \ TeleGPSConfigUI.java \ TeleGPSPreferences.java diff --git a/telegps/TeleGPS.java b/telegps/TeleGPS.java index ad46fbdd..1bb505e0 100644 --- a/telegps/TeleGPS.java +++ b/telegps/TeleGPS.java @@ -53,6 +53,7 @@ public class TeleGPS extends AltosUIFrame implements AltosFlightDisplay, AltosFo JTabbedPane pane; AltosSiteMap sitemap; + TeleGPSInfo gps_info; boolean has_map; JMenuBar menu_bar; @@ -115,10 +116,12 @@ public class TeleGPS extends AltosUIFrame implements AltosFlightDisplay, AltosFo public void reset() { sitemap.reset(); + gps_info.reset(); } public void set_font() { sitemap.set_font(); + gps_info.set_font(); } public void font_size_changed(int font_size) { @@ -135,6 +138,7 @@ public class TeleGPS extends AltosUIFrame implements AltosFlightDisplay, AltosFo state = new AltosState(); sitemap.show(state, listener_state); + gps_info.show(state, listener_state); telegps_status.show(state, listener_state); } @@ -225,6 +229,12 @@ public class TeleGPS extends AltosUIFrame implements AltosFlightDisplay, AltosFo } void export() { + AltosDataChooser chooser; + chooser = new AltosDataChooser(this); + AltosStateIterable states = chooser.runDialog(); + if (states == null) + return; + new AltosCSVUI(this, states, chooser.file()); } void graph() { @@ -394,6 +404,9 @@ public class TeleGPS extends AltosUIFrame implements AltosFlightDisplay, AltosFo sitemap = new AltosSiteMap(); pane.add("Site Map", sitemap); + gps_info = new TeleGPSInfo(); + pane.add("Info", gps_info); + setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); AltosUIPreferences.register_font_listener(this); diff --git a/telegps/TeleGPSInfo.java b/telegps/TeleGPSInfo.java new file mode 100644 index 00000000..0fba77d5 --- /dev/null +++ b/telegps/TeleGPSInfo.java @@ -0,0 +1,511 @@ +/* + * Copyright © 2010 Keith Packard + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ + +package org.altusmetrum.telegps; + +import java.awt.*; +import javax.swing.*; +import org.altusmetrum.altoslib_4.*; +import org.altusmetrum.altosuilib_2.*; + +public class TeleGPSInfo extends JComponent implements AltosFlightDisplay { + GridBagLayout layout; + JLabel cur, max; + + public class Info { + JLabel label; + JTextField value; + AltosLights lights; + + void show() { + value.setVisible(true); + lights.setVisible(true); + label.setVisible(true); + } + + void hide() { + value.setVisible(false); + lights.setVisible(false); + label.setVisible(false); + } + + void show(AltosState state, AltosListenerState listener_state) {} + + void show(String s) { + show(); + value.setText(s); + } + + void show(AltosUnits units, double v) { + show(units.show(8, v)); + } + + void show(String format, double v) { + show(String.format(format, v)); + } + + void reset() { + lights.set(false); + value.setText(""); + } + + void set_font() { + label.setFont(AltosUILib.label_font); + value.setFont(AltosUILib.value_font); + } + + public Info (GridBagLayout layout, int y, String text) { + GridBagConstraints c = new GridBagConstraints(); + c.weighty = 1; + + lights = new AltosLights(); + c.gridx = 0; c.gridy = y; + c.anchor = GridBagConstraints.CENTER; + c.fill = GridBagConstraints.VERTICAL; + c.weightx = 0; + layout.setConstraints(lights, c); + add(lights); + + label = new JLabel(text); + label.setFont(AltosUILib.label_font); + label.setHorizontalAlignment(SwingConstants.LEFT); + c.gridx = 1; c.gridy = y; + c.insets = new Insets(AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad); + c.anchor = GridBagConstraints.WEST; + c.fill = GridBagConstraints.VERTICAL; + c.weightx = 0; + layout.setConstraints(label, c); + add(label); + + value = new JTextField(AltosUILib.text_width); + value.setFont(AltosUILib.value_font); + value.setHorizontalAlignment(SwingConstants.RIGHT); + c.gridx = 2; c.gridy = y; + c.gridwidth = 2; + c.anchor = GridBagConstraints.WEST; + c.fill = GridBagConstraints.BOTH; + c.weightx = 1; + layout.setConstraints(value, c); + add(value); + } + } + + public class Value { + JLabel label; + JTextField value; + void show(AltosState state, AltosListenerState listener_state) {} + + void reset() { + value.setText(""); + } + + void show() { + label.setVisible(true); + value.setVisible(true); + } + + void show(String s) { + show(); + value.setText(s); + } + + void show(AltosUnits units, double v) { + show(units.show(8, v)); + } + + void show(String format, double v) { + show(String.format(format, v)); + } + + void hide() { + label.setVisible(false); + value.setVisible(false); + } + void set_font() { + label.setFont(AltosUILib.label_font); + value.setFont(AltosUILib.value_font); + } + + public Value (GridBagLayout layout, int y, String text) { + GridBagConstraints c = new GridBagConstraints(); + c.weighty = 1; + + label = new JLabel(text); + label.setFont(AltosUILib.label_font); + label.setHorizontalAlignment(SwingConstants.LEFT); + c.gridx = 1; c.gridy = y; + c.insets = new Insets(AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad); + c.anchor = GridBagConstraints.WEST; + c.fill = GridBagConstraints.VERTICAL; + c.weightx = 0; + layout.setConstraints(label, c); + add(label); + + value = new JTextField(AltosUILib.text_width); + value.setFont(AltosUILib.value_font); + value.setHorizontalAlignment(SwingConstants.RIGHT); + c.gridx = 2; c.gridy = y; + c.anchor = GridBagConstraints.WEST; + c.fill = GridBagConstraints.BOTH; + c.gridwidth = 2; + c.weightx = 1; + layout.setConstraints(value, c); + add(value); + } + } + + public abstract class DualValue { + JLabel label; + JTextField value1; + JTextField value2; + + void reset() { + value1.setText(""); + value2.setText(""); + } + + void show() { + label.setVisible(true); + value1.setVisible(true); + value2.setVisible(true); + } + + void hide() { + label.setVisible(false); + value1.setVisible(false); + value2.setVisible(false); + } + + void set_font() { + label.setFont(AltosUILib.label_font); + value1.setFont(AltosUILib.value_font); + value2.setFont(AltosUILib.value_font); + } + + abstract void show(AltosState state, AltosListenerState listener_state); + + void show(String v1, String v2) { + show(); + value1.setText(v1); + value2.setText(v2); + } + void show(String f1, double v1, String f2, double v2) { + show(); + value1.setText(String.format(f1, v1)); + value2.setText(String.format(f2, v2)); + } + + public DualValue (GridBagLayout layout, int x, int y, String text) { + GridBagConstraints c = new GridBagConstraints(); + c.weighty = 1; + + label = new JLabel(text); + label.setFont(AltosUILib.label_font); + label.setHorizontalAlignment(SwingConstants.LEFT); + c.gridx = x + 1; c.gridy = y; + c.insets = new Insets(AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad); + c.anchor = GridBagConstraints.WEST; + c.fill = GridBagConstraints.VERTICAL; + c.weightx = 0; + layout.setConstraints(label, c); + add(label); + + value1 = new JTextField(AltosUILib.text_width); + value1.setFont(AltosUILib.value_font); + value1.setHorizontalAlignment(SwingConstants.RIGHT); + c.gridx = x + 2; c.gridy = y; + c.anchor = GridBagConstraints.WEST; + c.fill = GridBagConstraints.BOTH; + c.weightx = 1; + layout.setConstraints(value1, c); + add(value1); + + value2 = new JTextField(AltosUILib.text_width); + value2.setFont(AltosUILib.value_font); + value2.setHorizontalAlignment(SwingConstants.RIGHT); + c.gridx = x + 3; c.gridy = y; + c.anchor = GridBagConstraints.WEST; + c.fill = GridBagConstraints.BOTH; + c.weightx = 1; + c.gridwidth = 1; + layout.setConstraints(value2, c); + add(value2); + } + } + + public class ValueHold { + JLabel label; + JTextField value; + JTextField max_value; + double max; + + void show(AltosState state, AltosListenerState listener_state) {} + + void reset() { + value.setText(""); + max_value.setText(""); + max = AltosLib.MISSING; + } + + void set_font() { + label.setFont(AltosUILib.label_font); + value.setFont(AltosUILib.value_font); + max_value.setFont(AltosUILib.value_font); + } + + void show(AltosUnits units, double v) { + if (v == AltosLib.MISSING) { + value.setText("Missing"); + max_value.setText("Missing"); + } else { + value.setText(units.show(8, v)); + if (v > max || max == AltosLib.MISSING) { + max_value.setText(units.show(8, v)); + max = v; + } + } + } + + void hide() { + label.setVisible(false); + value.setVisible(false); + max_value.setVisible(false); + } + + public ValueHold (GridBagLayout layout, int y, String text) { + GridBagConstraints c = new GridBagConstraints(); + c.weighty = 1; + + label = new JLabel(text); + label.setFont(AltosUILib.label_font); + label.setHorizontalAlignment(SwingConstants.LEFT); + c.gridx = 1; c.gridy = y; + c.insets = new Insets(AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad); + c.anchor = GridBagConstraints.WEST; + c.fill = GridBagConstraints.VERTICAL; + c.weightx = 0; + layout.setConstraints(label, c); + add(label); + + value = new JTextField(AltosUILib.text_width); + value.setFont(AltosUILib.value_font); + value.setHorizontalAlignment(SwingConstants.RIGHT); + c.gridx = 2; c.gridy = y; + c.anchor = GridBagConstraints.EAST; + c.fill = GridBagConstraints.BOTH; + c.weightx = 1; + layout.setConstraints(value, c); + add(value); + + max_value = new JTextField(AltosUILib.text_width); + max_value.setFont(AltosUILib.value_font); + max_value.setHorizontalAlignment(SwingConstants.RIGHT); + c.gridx = 3; c.gridy = y; + c.anchor = GridBagConstraints.EAST; + c.fill = GridBagConstraints.BOTH; + c.weightx = 1; + layout.setConstraints(max_value, c); + add(max_value); + } + } + + + class Altitude extends ValueHold { + void show (AltosState state, AltosListenerState listener_state) { + show(AltosConvert.height, state.altitude()); + } + public Altitude (GridBagLayout layout, int y) { + super (layout, y, "Altitude"); + } + } + + Altitude altitude; + + class AscentRate extends ValueHold { + void show (AltosState state, AltosListenerState listener_state) { + show(AltosConvert.speed, state.gps_ascent_rate()); + } + public AscentRate (GridBagLayout layout, int y) { + super (layout, y, "Ascent Rate"); + } + } + + AscentRate ascent_rate; + + class GroundSpeed extends ValueHold { + void show (AltosState state, AltosListenerState listener_state) { + show(AltosConvert.speed, state.gps_ground_speed()); + } + public GroundSpeed (GridBagLayout layout, int y) { + super (layout, y, "Ground Speed"); + } + } + + GroundSpeed ground_speed; + + String pos(double p, String pos, String neg) { + String h = pos; + if (p < 0) { + h = neg; + p = -p; + } + int deg = (int) Math.floor(p); + double min = (p - Math.floor(p)) * 60.0; + return String.format("%s %4d° %9.6f", h, deg, min); + } + + class Course extends DualValue { + void show (AltosState state, AltosListenerState listener_state) { + double course = state.gps_course(); + if (course != AltosLib.MISSING) + show( String.format("%3.0f°", course), + AltosConvert.bearing_to_words( + AltosConvert.BEARING_LONG, + course)); + } + public Course (GridBagLayout layout, int y) { + super (layout, 0, y, "Course"); + } + } + + Course course; + + class Lat extends Value { + void show (AltosState state, AltosListenerState listener_state) { + if (state.gps != null && state.gps.connected && state.gps.lat != AltosLib.MISSING) + show(pos(state.gps.lat,"N", "S")); + else + show("???"); + } + public Lat (GridBagLayout layout, int y) { + super (layout, y, "Latitude"); + } + } + + Lat lat; + + class Lon extends Value { + void show (AltosState state, AltosListenerState listener_state) { + if (state.gps != null && state.gps.connected && state.gps.lon != AltosLib.MISSING) + show(pos(state.gps.lon,"E", "W")); + else + show("???"); + } + public Lon (GridBagLayout layout, int y) { + super (layout, y, "Longitude"); + } + } + + Lon lon; + + class GPSLocked extends Info { + void show (AltosState state, AltosListenerState listener_state) { + if (state == null || state.gps == null) + hide(); + else { + show("%4d sats", state.gps.nsat); + lights.set(state.gps.locked && state.gps.nsat >= 4); + } + } + public GPSLocked (GridBagLayout layout, int y) { + super (layout, y, "GPS Locked"); + } + } + + GPSLocked gps_locked; + + public void reset() { + lat.reset(); + lon.reset(); + altitude.reset(); + ground_speed.reset(); + ascent_rate.reset(); + course.reset(); + gps_locked.reset(); + } + + public void set_font() { + cur.setFont(AltosUILib.label_font); + max.setFont(AltosUILib.label_font); + lat.set_font(); + lon.set_font(); + altitude.set_font(); + ground_speed.set_font(); + ascent_rate.set_font(); + course.set_font(); + gps_locked.set_font(); + } + + public void show(AltosState state, AltosListenerState listener_state) { + if (state.gps != null && state.gps.connected) { + lat.show(state, listener_state); + lon.show(state, listener_state); + } else { + lat.hide(); + lon.hide(); + } + altitude.show(state, listener_state); + ground_speed.show(state, listener_state); + ascent_rate.show(state, listener_state); + course.show(state, listener_state); + gps_locked.show(state, listener_state); + } + + public void labels(GridBagLayout layout, int y) { + GridBagConstraints c; + + cur = new JLabel("Current"); + cur.setFont(AltosUILib.label_font); + c = new GridBagConstraints(); + c.gridx = 2; c.gridy = y; + c.insets = new Insets(AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad, AltosUILib.tab_elt_pad); + layout.setConstraints(cur, c); + add(cur); + + max = new JLabel("Maximum"); + max.setFont(AltosUILib.label_font); + c.gridx = 3; c.gridy = y; + layout.setConstraints(max, c); + add(max); + } + + public String getName() { + return "Info"; + } + + public TeleGPSInfo() { + layout = new GridBagLayout(); + + setLayout(layout); + + /* Elements in ascent display: + * + * lat + * lon + * height + */ + int y = 0; + labels(layout, y++); + altitude = new Altitude(layout, y++); + ground_speed = new GroundSpeed(layout, y++); + ascent_rate = new AscentRate(layout, y++); + course = new Course(layout, y++); + lat = new Lat(layout, y++); + lon = new Lon(layout, y++); + gps_locked = new GPSLocked(layout, y++); + } +} -- 2.30.2