diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index 8750cbe03f..cc1411e52d 100644 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -165,7 +165,10 @@ class BuildVolume(SceneNode): if self._active_instance: self._width = self._active_instance.getMachineSettingValue("machine_width") - self._height = self._active_instance.getMachineSettingValue("machine_height") + if Application.getInstance().getMachineManager().getWorkingProfile().getSettingValue("print_sequence") == "one_at_a_time": + self._height = Application.getInstance().getMachineManager().getWorkingProfile().getSettingValue("gantry_height") + else: + self._height = self._active_instance.getMachineSettingValue("machine_depth") self._depth = self._active_instance.getMachineSettingValue("machine_depth") self._updateDisallowedAreas() @@ -182,11 +185,19 @@ class BuildVolume(SceneNode): self._updateDisallowedAreas() self.rebuild() - def _onSettingValueChanged(self, setting): - if setting in self._skirt_settings: + def _onSettingValueChanged(self, setting_key): + if setting_key == "print_sequence": + if Application.getInstance().getMachineManager().getWorkingProfile().getSettingValue("print_sequence") == "one_at_a_time": + self._height = Application.getInstance().getMachineManager().getWorkingProfile().getSettingValue("gantry_height") + else: + self._height = self._active_instance.getMachineSettingValue("machine_depth") + self.rebuild() + if setting_key in self._skirt_settings: self._updateDisallowedAreas() self.rebuild() + + def _updateDisallowedAreas(self): if not self._active_instance or not self._active_profile: return diff --git a/cura/ConvexHullNode.py b/cura/ConvexHullNode.py index 107dbebe5c..dc02a97dc6 100644 --- a/cura/ConvexHullNode.py +++ b/cura/ConvexHullNode.py @@ -89,6 +89,4 @@ class ConvexHullNode(SceneNode): self._color = Color(35, 35, 35, 0.5) if not node: - return - - \ No newline at end of file + return \ No newline at end of file diff --git a/cura/PlatformPhysics.py b/cura/PlatformPhysics.py index 95951f78dd..5299f4c5d0 100644 --- a/cura/PlatformPhysics.py +++ b/cura/PlatformPhysics.py @@ -65,11 +65,6 @@ class PlatformPhysics: # Mark the node as outside the build volume if the bounding box test fails. if build_volume_bounding_box.intersectsBox(bbox) != AxisAlignedBox.IntersectionResult.FullIntersection: node._outside_buildarea = True - else: - # When printing one at a time too high objects are not printable. - if Application.getInstance().getMachineManager().getWorkingProfile().getSettingValue("print_sequence") == "one_at_a_time": - if node.getBoundingBox().height > Application.getInstance().getMachineManager().getWorkingProfile().getSettingValue("gantry_height"): - node._outside_buildarea = True # Move it downwards if bottom is above platform move_vector = Vector()