From f1feff28796fa0dd3c2ecb4457fc3044d14325fb Mon Sep 17 00:00:00 2001 From: Hanno Braun Date: Fri, 18 Mar 2022 14:01:40 +0100 Subject: [PATCH] Consolidate duplicated code --- fj-app/src/main.rs | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/fj-app/src/main.rs b/fj-app/src/main.rs index 9462d6e3d..e4385dbcd 100644 --- a/fj-app/src/main.rs +++ b/fj-app/src/main.rs @@ -201,11 +201,7 @@ fn main() -> anyhow::Result<()> { let mut input_handler = input::Handler::new(previous_time); let mut renderer = block_on(Renderer::new(&window))?; - renderer.update_geometry( - (&processed_shape.triangles).into(), - (&processed_shape.debug_info).into(), - processed_shape.aabb, - ); + processed_shape.update_geometry(&mut renderer); let mut draw_config = DrawConfig::default(); let mut camera = Camera::new(&processed_shape.aabb); @@ -220,12 +216,7 @@ fn main() -> anyhow::Result<()> { match watcher_rx.try_recv() { Ok(shape) => { processed_shape = shape_processor.process(&shape); - - renderer.update_geometry( - (&processed_shape.triangles).into(), - (&processed_shape.debug_info).into(), - processed_shape.aabb, - ); + processed_shape.update_geometry(&mut renderer); } Err(mpsc::TryRecvError::Empty) => { // Nothing to receive from the channel. We don't care. @@ -392,3 +383,13 @@ struct ProcessedShape { triangles: Vec>, debug_info: DebugInfo, } + +impl ProcessedShape { + fn update_geometry(&self, renderer: &mut Renderer) { + renderer.update_geometry( + (&self.triangles).into(), + (&self.debug_info).into(), + self.aabb, + ); + } +}