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 e2257afe15bb26e5ef578d6dc41907debca0fa61..4fe3acb01ce7992813d6b72955d842bfe046887d 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 f394567fcec666a4dfc05dd4fa3669325beccb12..360a964a8936ae0c997924ac3638b1fe7384947c 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 5bed74a2a6f43f84d0f4f6692490452d3418ef6e..c1dc6a9e8b5fc82be6cec6b34434902cef0b97af 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