nav: check valid flag on PositionGeodetic measurement (#22858)

pull/22869/head
Willem Melching 4 years ago committed by GitHub
parent caad4919ac
commit 306df7f94f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 8
      selfdrive/ui/navd/route_engine.cc
  2. 7
      selfdrive/ui/qt/maps/map.cc

@ -131,14 +131,14 @@ void RouteEngine::timerUpdate() {
}
auto location = (*sm)["liveLocationKalman"].getLiveLocationKalman();
auto pos = location.getPositionGeodetic();
auto orientation = location.getCalibratedOrientationNED();
gps_ok = location.getGpsOK();
localizer_valid = location.getStatus() == cereal::LiveLocationKalman::Status::VALID;
localizer_valid = (location.getStatus() == cereal::LiveLocationKalman::Status::VALID) && pos.getValid();
if (localizer_valid) {
auto pos = location.getPositionGeodetic();
auto orientation = location.getCalibratedOrientationNED();
last_bearing = RAD2DEG(orientation.getValue()[2]);
last_position = QMapbox::Coordinate(pos.getValue()[0], pos.getValue()[1]);
}

@ -112,13 +112,12 @@ void MapWindow::timerUpdate() {
sm->update(0);
if (sm->updated("liveLocationKalman")) {
auto location = (*sm)["liveLocationKalman"].getLiveLocationKalman();
auto pos = location.getPositionGeodetic();
auto orientation = location.getCalibratedOrientationNED();
localizer_valid = location.getStatus() == cereal::LiveLocationKalman::Status::VALID;
localizer_valid = (location.getStatus() == cereal::LiveLocationKalman::Status::VALID) && pos.getValid();
if (localizer_valid) {
auto pos = location.getPositionGeodetic();
auto orientation = location.getCalibratedOrientationNED();
float velocity = location.getVelocityCalibrated().getValue()[0];
float bearing = RAD2DEG(orientation.getValue()[2]);
auto coordinate = QMapbox::Coordinate(pos.getValue()[0], pos.getValue()[1]);

Loading…
Cancel
Save