X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altosdroid%2Fsrc%2Forg%2Faltusmetrum%2FAltosDroid%2FTabMapOffline.java;h=cbf500187c1fbfbe0063a44898b57add7cdfff38;hp=6742e6060ba1e569596b3b5fc19a6e9fa5c7c0b4;hb=4315b91d7afc2391e3f7444906ac226500bf1345;hpb=103a50db50be55c2293468d273dd94472dd89d94 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TabMapOffline.java b/altosdroid/src/org/altusmetrum/AltosDroid/TabMapOffline.java index 6742e606..cbf50018 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/TabMapOffline.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/TabMapOffline.java @@ -39,6 +39,7 @@ public class TabMapOffline extends AltosDroidTab implements AltosMapInterface { AltosMap map; AltosLatLon here; + AltosLatLon pad; Canvas canvas; Paint paint; @@ -84,6 +85,7 @@ public class TabMapOffline extends AltosDroidTab implements AltosMapInterface { canvas.drawLine((float) rocket_screen.x, (float) rocket_screen.y, (float) here_screen.x, (float) here_screen.y, paint); } + draw_bitmap(pad, pad_bitmap, pad_off_x, pad_off_y); draw_bitmap(map.last_position, rocket_bitmap, rocket_off_x, rocket_off_y); draw_bitmap(here, here_bitmap, here_off_x, here_off_y); } @@ -271,8 +273,6 @@ public class TabMapOffline extends AltosDroidTab implements AltosMapInterface { class MapMark extends AltosMapMark { public void paint(AltosMapTransform t) { - if (state == AltosLib.ao_flight_boost) - draw_bitmap(lat_lon, pad_bitmap, pad_off_x, pad_off_y); } MapMark(double lat, double lon, int state) { @@ -389,6 +389,10 @@ public class TabMapOffline extends AltosDroidTab implements AltosMapInterface { super.onAttach(activity); mAltosDroid = (AltosDroid) activity; mAltosDroid.registerTab(this); + + map = new AltosMap(this); + map.set_maptype(mAltosDroid.map_type); + pad_bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.pad); /* arrow at the bottom of the launchpad image */ pad_off_x = pad_bitmap.getWidth() / 2; @@ -472,6 +476,8 @@ public class TabMapOffline extends AltosDroidTab implements AltosMapInterface { if (state.gps.locked && state.gps.nsat >= 4) center (state.gps.lat, state.gps.lon, 10); } + if (state.pad_lat != AltosLib.MISSING && pad == null) + pad = new AltosLatLon(state.pad_lat, state.pad_lon); } if (receiver != null) { @@ -489,6 +495,11 @@ public class TabMapOffline extends AltosDroidTab implements AltosMapInterface { } + public void set_map_type(int map_type) { + if (map != null) + map.set_maptype(map_type); + } + public TabMapOffline() { } }