From: Keith Packard Date: Wed, 2 Jan 2013 20:24:44 +0000 (-0800) Subject: micropeak: Add view of raw data in GUI X-Git-Tag: 1.1.9.3~8^2~9^2~16 X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=commitdiff_plain;h=31fa139578a86821844e3e2efb1a84bdea4f1370;hp=2c423d9287c6b9ea7233f5e3430682cb1c865da1 micropeak: Add view of raw data in GUI Looks just like the export file Signed-off-by: Keith Packard --- diff --git a/micropeak/Makefile.am b/micropeak/Makefile.am index f5f8ccd9..89ff2fb3 100644 --- a/micropeak/Makefile.am +++ b/micropeak/Makefile.am @@ -15,6 +15,7 @@ micropeak_JAVA= \ MicroExport.java \ MicroFrame.java \ MicroGraph.java \ + MicroRaw.java \ MicroSave.java \ MicroSerial.java \ MicroStats.java \ diff --git a/micropeak/MicroExport.java b/micropeak/MicroExport.java index 06a03469..219184da 100644 --- a/micropeak/MicroExport.java +++ b/micropeak/MicroExport.java @@ -78,9 +78,9 @@ public class MicroExport extends JFileChooser { try { FileWriter fw = new FileWriter(file); PrintWriter pw = new PrintWriter(fw); - pw.printf(" Time, Press, Height, Speed, Accel\n"); + pw.printf(" Time, Press, Height, Speed, Accel\n"); for (MicroDataPoint point : data.points()) { - pw.printf("%5.2f,%6.0f,%7.1f,%7.2f,%7.2f\n", + pw.printf("%6.3f,%6.0f,%7.1f,%7.2f,%7.2f\n", point.time, point.pressure, point.height, point.speed, point.accel); } fw.close(); diff --git a/micropeak/MicroPeak.java b/micropeak/MicroPeak.java index f2f09a10..290511e7 100644 --- a/micropeak/MicroPeak.java +++ b/micropeak/MicroPeak.java @@ -31,6 +31,7 @@ public class MicroPeak extends MicroFrame implements ActionListener, ItemListene File filename; MicroGraph graph; MicroStatsTable stats; + MicroRaw raw; MicroData data; Container container; JTabbedPane pane; @@ -45,6 +46,7 @@ public class MicroPeak extends MicroFrame implements ActionListener, ItemListene this.data = data; graph.setData(data); stats.setData(data); + raw.setData(data); setTitle(data.name); return this; } @@ -209,8 +211,10 @@ public class MicroPeak extends MicroFrame implements ActionListener, ItemListene graph = new MicroGraph(); stats = new MicroStatsTable(); + raw = new MicroRaw(); pane.add(graph.panel, "Graph"); pane.add(stats, "Statistics"); + pane.add(raw, "Raw Data"); pane.doLayout(); pane.validate(); container.add(pane); diff --git a/micropeak/MicroRaw.java b/micropeak/MicroRaw.java new file mode 100644 index 00000000..6b006f32 --- /dev/null +++ b/micropeak/MicroRaw.java @@ -0,0 +1,41 @@ +/* + * Copyright © 2013 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.micropeak; + +import java.awt.*; +import javax.swing.*; +import org.altusmetrum.AltosLib.*; +import org.altusmetrum.altosuilib.*; + +public class MicroRaw extends TextArea { + + public void setData(MicroData data) { + setRows(data.pressures.length); + setText(" Time, Press, Height, Speed, Accel\n"); + for (MicroDataPoint point : data.points()) { + append(String.format( + "%6.3f,%6.0f,%7.1f,%7.2f,%7.2f\n", + point.time, point.pressure, point.height, point.speed, point.accel)); + } + } + + public MicroRaw() { + super(1, 30); + setFont(AltosUILib.table_value_font); + } +}