updated for every layer

CURA-7647
This commit is contained in:
saumya.jain 2023-11-07 18:42:41 +05:30
parent 6301926885
commit efda0aaba4

View file

@ -78,6 +78,8 @@ class SimulationView(CuraView):
self._minimum_path_num = 0
self.currentLayerNumChanged.connect(self._onCurrentLayerNumChanged)
self._current_feedrates = {}
self._visible_lengths ={}
self._busy = False
self._simulation_running = False
@ -401,7 +403,7 @@ class SimulationView(CuraView):
return self._max_feedrate
def getSimulationTime(self) -> list:
return [length / feedrate for length, feedrate in zip(self._visible_lengths, self._current_feedrates)]
return [length / feedrate for length, feedrate in zip(self._visible_lengths[self._current_layer_num], self._current_feedrates[self._current_layer_num])]
def getMinThickness(self) -> float:
if abs(self._min_thickness - sys.float_info.max) < 10: # Some lenience due to floating point rounding.
@ -527,10 +529,10 @@ class SimulationView(CuraView):
visible_indicies_with_extrusion = numpy.where(numpy.isin(polyline.types, visible_line_types_with_extrusion))[0]
if visible_indices.size == 0: # No items to take maximum or minimum of.
continue
self._visible_lengths = numpy.take(polyline.lineLengths, visible_indices)
self._visible_lengths[layer_index] = numpy.take(polyline.lineLengths, visible_indices)
visible_feedrates = numpy.take(polyline.lineFeedrates, visible_indices)
visible_feedrates_with_extrusion = numpy.take(polyline.lineFeedrates, visible_indicies_with_extrusion)
self._current_feedrates = visible_feedrates
self._current_feedrates[layer_index] = visible_feedrates
visible_linewidths = numpy.take(polyline.lineWidths, visible_indices)
visible_linewidths_with_extrusion = numpy.take(polyline.lineWidths, visible_indicies_with_extrusion)
visible_thicknesses = numpy.take(polyline.lineThicknesses, visible_indices)