From a093ec31453f783fe4b61e7e87476f42304eb10d Mon Sep 17 00:00:00 2001 From: Daniel Schramm <xschramm@fi.muni.cz> Date: Wed, 6 Oct 2021 13:16:57 +0200 Subject: [PATCH] Repeated scene rendering eliminated --- .../java/cz/fidentis/analyst/distance/DistanceAction.java | 2 -- .../cz/fidentis/analyst/registration/RegistrationAction.java | 1 - .../java/cz/fidentis/analyst/toolbar/FaceToFaceToolBar.java | 5 +++++ 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/GUI/src/main/java/cz/fidentis/analyst/distance/DistanceAction.java b/GUI/src/main/java/cz/fidentis/analyst/distance/DistanceAction.java index e2257afe..4fe3acb0 100644 --- a/GUI/src/main/java/cz/fidentis/analyst/distance/DistanceAction.java +++ b/GUI/src/main/java/cz/fidentis/analyst/distance/DistanceAction.java @@ -138,10 +138,8 @@ public class DistanceAction extends ControlPanelAction { updateHausdorffDistanceInformation(); getSecondaryDrawableFace().setRenderHeatmap(heatmapRender); - renderScene(); } else { weightedFeaturePoints.hide(); - renderScene(); } }); topControlPanel.setSelectedComponent(controlPanel); // Focus Hausdorff distance panel diff --git a/GUI/src/main/java/cz/fidentis/analyst/registration/RegistrationAction.java b/GUI/src/main/java/cz/fidentis/analyst/registration/RegistrationAction.java index f394567f..360a964a 100644 --- a/GUI/src/main/java/cz/fidentis/analyst/registration/RegistrationAction.java +++ b/GUI/src/main/java/cz/fidentis/analyst/registration/RegistrationAction.java @@ -72,7 +72,6 @@ public class RegistrationAction extends ControlPanelAction { calculateFeaturePoints(); setHeatmap(); getSecondaryDrawableFace().setRenderHeatmap(heatmapRender); - renderScene(); } }); topControlPanel.setSelectedComponent(controlPanel); // Focus registration panel diff --git a/GUI/src/main/java/cz/fidentis/analyst/toolbar/FaceToFaceToolBar.java b/GUI/src/main/java/cz/fidentis/analyst/toolbar/FaceToFaceToolBar.java index 5bed74a2..c1dc6a9e 100644 --- a/GUI/src/main/java/cz/fidentis/analyst/toolbar/FaceToFaceToolBar.java +++ b/GUI/src/main/java/cz/fidentis/analyst/toolbar/FaceToFaceToolBar.java @@ -23,6 +23,11 @@ public class FaceToFaceToolBar extends RenderingToolBar { super(canvas); addPrimaryFaceButton(); addSecondaryFaceButton(); + + // (Re)render scene after all change listeners have been called + // (the first added litener is called last) + controlPanel.addChangeListener(e -> getCanvas().renderScene()); + // Add distance panel to the control panel new DistanceAction(getCanvas(), controlPanel); // Add registration panel to the control panel -- GitLab