From 634280ca5117a014cc7f2620e94ebc62c050d70e Mon Sep 17 00:00:00 2001 From: Dean Lee Date: Thu, 25 May 2023 11:46:27 +0800 Subject: [PATCH] ui: update DM icon at every frame (#28226) --- selfdrive/ui/qt/onroad.cc | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/selfdrive/ui/qt/onroad.cc b/selfdrive/ui/qt/onroad.cc index 51c3f3dbbb..af07f179c4 100644 --- a/selfdrive/ui/qt/onroad.cc +++ b/selfdrive/ui/qt/onroad.cc @@ -281,14 +281,12 @@ void AnnotatedCameraWidget::updateState(const UIState &s) { // update engageability/experimental mode button experimental_btn->updateState(s); - // update DM icons at 2Hz - if (sm.frame % (UI_FREQ / 2) == 0) { - setProperty("dmActive", sm["driverMonitoringState"].getDriverMonitoringState().getIsActiveMode()); - setProperty("rightHandDM", sm["driverMonitoringState"].getDriverMonitoringState().getIsRHD()); - } - + // update DM icon + auto dm_state = sm["driverMonitoringState"].getDriverMonitoringState(); + setProperty("dmActive", dm_state.getIsActiveMode()); + setProperty("rightHandDM", dm_state.getIsRHD()); // DM icon transition - dm_fade_state = fmax(0.0, fmin(1.0, dm_fade_state+0.2*(0.5-(float)(dmActive)))); + dm_fade_state = std::clamp(dm_fade_state+0.2*(0.5-dmActive), 0.0, 1.0); } void AnnotatedCameraWidget::drawHud(QPainter &p) {