From 36b506c88038f6a4986a4270f13e8a2dabd862d8 Mon Sep 17 00:00:00 2001 From: Dean Lee Date: Tue, 4 Jan 2022 18:39:18 +0800 Subject: [PATCH] ui/update_model: do not recalculate the max_idx If there is no lead (#23356) old-commit-hash: f561d84c627273537d1e30f66d48fa39ec014950 --- selfdrive/ui/ui.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/selfdrive/ui/ui.cc b/selfdrive/ui/ui.cc index 3d8f50e238..3907daf6fa 100644 --- a/selfdrive/ui/ui.cc +++ b/selfdrive/ui/ui.cc @@ -71,11 +71,11 @@ static void update_model(UIState *s, const cereal::ModelDataV2::Reader &model) { auto model_position = model.getPosition(); float max_distance = std::clamp(model_position.getX()[TRAJECTORY_SIZE - 1], MIN_DRAW_DISTANCE, MAX_DRAW_DISTANCE); + int max_idx = get_path_length_idx(model_position, max_distance); // update lane lines const auto lane_lines = model.getLaneLines(); const auto lane_line_probs = model.getLaneLineProbs(); - int max_idx = get_path_length_idx(lane_lines[0], max_distance); for (int i = 0; i < std::size(scene.lane_line_vertices); i++) { scene.lane_line_probs[i] = lane_line_probs[i]; update_line_data(s, lane_lines[i], 0.025 * scene.lane_line_probs[i], 0, &scene.lane_line_vertices[i], max_idx); @@ -94,8 +94,8 @@ static void update_model(UIState *s, const cereal::ModelDataV2::Reader &model) { if (lead_one.getStatus()) { const float lead_d = lead_one.getDRel() * 2.; max_distance = std::clamp((float)(lead_d - fmin(lead_d * 0.35, 10.)), 0.0f, max_distance); + max_idx = get_path_length_idx(model_position, max_distance); } - max_idx = get_path_length_idx(model_position, max_distance); update_line_data(s, model_position, 0.5, 1.22, &scene.track_vertices, max_idx); }