ui: update DM icon at every frame (#28226)

old-commit-hash: 634280ca5117a014cc7f2620e94ebc62c050d70e
This commit is contained in:
Dean Lee
2023-05-25 11:46:27 +08:00
committed by GitHub
parent cdd5958ab7
commit 7be85a4550
+5 -7
View File
@@ -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) {