fix propagation from gui to stream threats

This commit is contained in:
Ruben van de Ven 2025-10-16 17:04:38 +02:00
parent 2d909f771d
commit 1ef2081c47

View file

@ -1230,12 +1230,12 @@ fn laser_mouse_moved(app: &App, model: &mut GuiModel, pos: Point2) {
let point = config.filters.homography.move_dac_point(*map_idx, [laser_x, laser_y]); let point = config.filters.homography.move_dac_point(*map_idx, [laser_x, laser_y]);
// 3. update config in laser stream threat // 3. update config in laser stream threat
let mat = config.filters.homography.homography_matrix.clone(); let homography = config.filters.homography.clone();
let selected_laser_stream = model.laser_streams.get(&dac_id); let selected_laser_stream = model.laser_streams.get(&dac_id);
if let Some(stream) = selected_laser_stream { if let Some(stream) = selected_laser_stream {
stream.send(move |laser_model: &mut LaserModel| { stream.send(move |laser_model: &mut LaserModel| {
laser_model.config.filters.homography.homography_matrix = mat laser_model.config.filters.homography = homography
}).unwrap(); }).unwrap();
} }
@ -1380,11 +1380,11 @@ fn map_mouse_moved(_app: &App, model: &mut GuiModel, pos: Point2) {
// 3. propagate to laser stream threat // 3. propagate to laser stream threat
let selected_laser_stream = model.laser_streams.get(&dac_id); let selected_laser_stream = model.laser_streams.get(&dac_id);
let mat = config.filters.homography.homography_matrix.clone(); let homography = config.filters.homography.clone();
if let Some(stream) = selected_laser_stream { if let Some(stream) = selected_laser_stream {
stream.send(move |laser_model: &mut LaserModel| { stream.send(move |laser_model: &mut LaserModel| {
laser_model.config.filters.homography.homography_matrix = mat; laser_model.config.filters.homography = homography;
}).unwrap(); }).unwrap();
} }
@ -1486,6 +1486,16 @@ fn map_mouse_pressed(app: &App, model: &mut GuiModel, button: MouseButton) {
model.canvas_dragging_homography = Some(index); model.canvas_dragging_homography = Some(index);
} }
} }
// propagate to laser dac streamer
let selected_laser_stream = model.laser_streams.get(&dac_id);
let homography = config.filters.homography.clone();
if let Some(stream) = selected_laser_stream {
stream.send(move |laser_model: &mut LaserModel| {
laser_model.config.filters.homography = homography;
}).unwrap();
}
} }
} }