GPS + orientation for Sonde (#1757)

* RadioSonde has gpsdata
* Orientation update in Sonde
This commit is contained in:
Totoo
2024-01-11 22:17:06 +01:00
committed by GitHub
parent 831dbeaab5
commit 3943848add
4 changed files with 43 additions and 6 deletions

View File

@@ -516,8 +516,12 @@ void GeoMap::update_my_position(float lat, float lon, int32_t altitude) {
markerListUpdated = true;
set_dirty();
}
void GeoMap::update_my_orientation(uint16_t angle) {
void GeoMap::update_my_orientation(uint16_t angle, bool refresh) {
my_angle = angle;
if (refresh) {
markerListUpdated = true;
set_dirty();
}
}
void GeoMapView::focus() {
@@ -530,8 +534,8 @@ void GeoMapView::focus() {
void GeoMapView::update_my_position(float lat, float lon, int32_t altitude) {
geomap.update_my_position(lat, lon, altitude);
}
void GeoMapView::update_my_orientation(uint16_t angle) {
geomap.update_my_orientation(angle);
void GeoMapView::update_my_orientation(uint16_t angle, bool refresh) {
geomap.update_my_orientation(angle, refresh);
}
void GeoMapView::update_position(float lat, float lon, uint16_t angle, int32_t altitude, int32_t speed) {

View File

@@ -186,7 +186,7 @@ class GeoMap : public Widget {
bool on_keyboard(const KeyboardEvent event) override;
void update_my_position(float lat, float lon, int32_t altitude);
void update_my_orientation(uint16_t angle);
void update_my_orientation(uint16_t angle, bool refresh = false);
bool init();
void set_mode(GeoMapMode mode);
@@ -278,7 +278,7 @@ class GeoMapView : public View {
void update_position(float lat, float lon, uint16_t angle, int32_t altitude, int32_t speed = 0);
void update_my_position(float lat, float lon, int32_t altitude);
void update_my_orientation(uint16_t angle);
void update_my_orientation(uint16_t angle, bool refresh = false);
std::string title() const override { return "Map view"; };