import java.lang.Math;
import java.awt.geom.Point2D;
import java.awt.geom.Line2D;
+import java.util.concurrent.*;
public class AltosSiteMap extends JScrollPane implements AltosFlightDisplay {
// preferred vertical step in a tile in naut. miles
return latlng(pt, scale_x, scale_y);
}
- HashMap<Point,AltosSiteMapTile> mapTiles = new HashMap<Point,AltosSiteMapTile>();
+ ConcurrentHashMap<Point,AltosSiteMapTile> mapTiles = new ConcurrentHashMap<Point,AltosSiteMapTile>();
Point2D.Double centre;
private Point2D.Double tileCoordOffset(Point p) {
// nothing
}
+ public void set_font() {
+ // nothing
+ }
+
private void loadMap(final AltosSiteMapTile tile,
File pngfile, String pngurl)
{
last_state = state.state;
}
+ public void draw_circle(double lat, double lon) {
+ final Point2D.Double pt = pt(lat, lon);
+
+ for (Point offset : mapTiles.keySet()) {
+ AltosSiteMapTile tile = mapTiles.get(offset);
+ Point2D.Double ref = translatePoint(pt, tileCoordOffset(offset));
+ tile.draw_circle(ref);
+ }
+ }
+
private AltosSiteMapTile createTile(Point offset) {
AltosSiteMapTile tile = new AltosSiteMapTile(px_size);
mapTiles.put(offset, tile);