Merge branch 'sitemap' into buttonbox
authorAnthony Towns <aj@erisian.com.au>
Sun, 21 Nov 2010 01:15:02 +0000 (11:15 +1000)
committerAnthony Towns <aj@erisian.com.au>
Sun, 21 Nov 2010 01:15:02 +0000 (11:15 +1000)
Conflicts:
ao-tools/altosui/AltosSiteMap.java

ao-tools/altosui/AltosFlightUI.java
ao-tools/altosui/AltosSiteMap.java

index a3a28782ce13a223e5cf2455c5d1bc3fdff23612..732f7395565eee41b2d0388c4474cd4f8ddb99b1 100644 (file)
@@ -145,12 +145,12 @@ public class AltosFlightUI extends JFrame implements AltosFlightDisplay {
                        // Channel menu
                        channels = new AltosChannelMenu(AltosPreferences.channel(serial));
                        channels.addActionListener(new ActionListener() {
-                                       public void actionPerformed(ActionEvent e) {
-                                               int channel = channels.getSelectedIndex();
-                                               reader.set_channel(channel);
-                                               AltosPreferences.set_channel(serial, channel);
-                                       }
-                               });
+                               public void actionPerformed(ActionEvent e) {
+                                       int channel = channels.getSelectedIndex();
+                                       reader.set_channel(channel);
+                                       AltosPreferences.set_channel(serial, channel);
+                               }
+                       });
                        c.gridx = 0;
                        c.gridy = 0;
                        c.anchor = GridBagConstraints.WEST;
index 50177d4e84b9a564c16bc64349a58cfd33af3b46..2c5420619eda46a36ae29a1b91eda1a7a371c047 100644 (file)
@@ -33,8 +33,10 @@ import java.awt.geom.Point2D;
 import java.awt.geom.Line2D;
 
 public class AltosSiteMap extends JScrollPane implements AltosFlightDisplay {
-       // max vertical step in a tile in naut. miles
-       static final double tile_size_nmi = 1.0;
+       // preferred vertical step in a tile in naut. miles
+       // will actually choose a step size between x and 2x, where this
+       // is 1.5x
+       static final double tile_size_nmi = 1.5;
 
        static final int px_size = 512;
 
@@ -117,7 +119,7 @@ public class AltosSiteMap extends JScrollPane implements AltosFlightDisplay {
                        scale_x = 256/360.0 * Math.pow(2, zoom);
                        scale_y = 256/(2.0*Math.PI) * Math.pow(2, zoom);
                        locn = pt(lat, lng);
-                       north_step = pt(lat+tile_size_nmi/60.0, lng);
+                       north_step = pt(lat+tile_size_nmi*4/3/60.0, lng);
                        if (locn.y - north_step.y > px_size)
                                break;
                } while (zoom < 22);
@@ -211,10 +213,12 @@ public class AltosSiteMap extends JScrollPane implements AltosFlightDisplay {
        boolean initialised = false;
        public void show(AltosState state, int crc_errors) {
                // if insufficient gps data, nothing to update
-               if (state.gps == null || !state.gps.locked) {
+               if (state.gps == null)
+                       return;
+               if (!state.gps.locked) {
                        if (state.pad_lat == 0 && state.pad_lon == 0)
                                return;
-                       if (state.ngps < 3)
+                       if (state.gps.nsat < 4)
                                return;
                }