mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-20 21:27:50 -06:00
Fix the layer view when there is a print job with only one layer.
Contributes to CURA-5789.
This commit is contained in:
parent
46e0a39c15
commit
6db1342255
2 changed files with 12 additions and 2 deletions
|
@ -234,6 +234,11 @@ Item
|
||||||
UM.SimulationView.setCurrentLayer(value)
|
UM.SimulationView.setCurrentLayer(value)
|
||||||
|
|
||||||
var diff = (value - sliderRoot.maximumValue) / (sliderRoot.minimumValue - sliderRoot.maximumValue)
|
var diff = (value - sliderRoot.maximumValue) / (sliderRoot.minimumValue - sliderRoot.maximumValue)
|
||||||
|
// In case there is only one layer, the diff value results in a NaN, so this is for catching this specific case
|
||||||
|
if (isNaN(diff))
|
||||||
|
{
|
||||||
|
diff = 0
|
||||||
|
}
|
||||||
var newUpperYPosition = Math.round(diff * (sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize)))
|
var newUpperYPosition = Math.round(diff * (sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize)))
|
||||||
y = newUpperYPosition
|
y = newUpperYPosition
|
||||||
|
|
||||||
|
@ -339,6 +344,11 @@ Item
|
||||||
UM.SimulationView.setMinimumLayer(value)
|
UM.SimulationView.setMinimumLayer(value)
|
||||||
|
|
||||||
var diff = (value - sliderRoot.maximumValue) / (sliderRoot.minimumValue - sliderRoot.maximumValue)
|
var diff = (value - sliderRoot.maximumValue) / (sliderRoot.minimumValue - sliderRoot.maximumValue)
|
||||||
|
// In case there is only one layer, the diff value results in a NaN, so this is for catching this specific case
|
||||||
|
if (isNaN(diff))
|
||||||
|
{
|
||||||
|
diff = 0
|
||||||
|
}
|
||||||
var newLowerYPosition = Math.round((sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize) + diff * (sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize)))
|
var newLowerYPosition = Math.round((sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize) + diff * (sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize)))
|
||||||
y = newLowerYPosition
|
y = newLowerYPosition
|
||||||
|
|
||||||
|
|
|
@ -334,7 +334,7 @@ class SimulationView(View):
|
||||||
|
|
||||||
self._old_max_layers = self._max_layers
|
self._old_max_layers = self._max_layers
|
||||||
## Recalculate num max layers
|
## Recalculate num max layers
|
||||||
new_max_layers = 0
|
new_max_layers = -1
|
||||||
for node in DepthFirstIterator(scene.getRoot()):
|
for node in DepthFirstIterator(scene.getRoot()):
|
||||||
layer_data = node.callDecoration("getLayerData")
|
layer_data = node.callDecoration("getLayerData")
|
||||||
if not layer_data:
|
if not layer_data:
|
||||||
|
@ -369,7 +369,7 @@ class SimulationView(View):
|
||||||
if new_max_layers < layer_count:
|
if new_max_layers < layer_count:
|
||||||
new_max_layers = layer_count
|
new_max_layers = layer_count
|
||||||
|
|
||||||
if new_max_layers > 0 and new_max_layers != self._old_max_layers:
|
if new_max_layers >= 0 and new_max_layers != self._old_max_layers:
|
||||||
self._max_layers = new_max_layers
|
self._max_layers = new_max_layers
|
||||||
|
|
||||||
# The qt slider has a bit of weird behavior that if the maxvalue needs to be changed first
|
# The qt slider has a bit of weird behavior that if the maxvalue needs to be changed first
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue