mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-08-07 22:13:58 -06:00
Merge remote-tracking branch 'origin/3.6' into CURA-5821_fix_camera_memory_leak
This commit is contained in:
commit
31bdeb8b73
5 changed files with 45 additions and 30 deletions
|
@ -195,10 +195,6 @@ class FlavorParser:
|
|||
self._previous_z = z
|
||||
elif self._previous_extrusion_value > e[self._extruder_number]:
|
||||
path.append([x, y, z, f, e[self._extruder_number] + self._extrusion_length_offset[self._extruder_number], LayerPolygon.MoveRetractionType])
|
||||
|
||||
# This case only for initial start, for the first coordinate in GCode
|
||||
elif e[self._extruder_number] == 0 and self._previous_extrusion_value == 0:
|
||||
path.append([x, y, z, f, e[self._extruder_number] + self._extrusion_length_offset[self._extruder_number], LayerPolygon.MoveRetractionType])
|
||||
else:
|
||||
path.append([x, y, z, f, e[self._extruder_number] + self._extrusion_length_offset[self._extruder_number], LayerPolygon.MoveCombingType])
|
||||
return self._position(x, y, z, f, e)
|
||||
|
@ -235,6 +231,9 @@ class FlavorParser:
|
|||
# Sometimes a G92 E0 is introduced in the middle of the GCode so we need to keep those offsets for calculate the line_width
|
||||
self._extrusion_length_offset[self._extruder_number] += position.e[self._extruder_number] - params.e
|
||||
position.e[self._extruder_number] = params.e
|
||||
self._previous_extrusion_value = params.e
|
||||
else:
|
||||
self._previous_extrusion_value = 0.0
|
||||
return self._position(
|
||||
params.x if params.x is not None else position.x,
|
||||
params.y if params.y is not None else position.y,
|
||||
|
@ -243,7 +242,6 @@ class FlavorParser:
|
|||
position.e)
|
||||
|
||||
def processGCode(self, G: int, line: str, position: Position, path: List[List[Union[float, int]]]) -> Position:
|
||||
self._previous_extrusion_value = 0.0
|
||||
func = getattr(self, "_gCode%s" % G, None)
|
||||
line = line.split(";", 1)[0] # Remove comments (if any)
|
||||
if func is not None:
|
||||
|
@ -295,7 +293,7 @@ class FlavorParser:
|
|||
self._cancelled = False
|
||||
# We obtain the filament diameter from the selected extruder to calculate line widths
|
||||
global_stack = CuraApplication.getInstance().getGlobalContainerStack()
|
||||
|
||||
|
||||
if not global_stack:
|
||||
return None
|
||||
|
||||
|
@ -338,6 +336,7 @@ class FlavorParser:
|
|||
min_layer_number = 0
|
||||
negative_layers = 0
|
||||
previous_layer = 0
|
||||
self._previous_extrusion_value = 0.0
|
||||
|
||||
for line in stream.split("\n"):
|
||||
if self._cancelled:
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Copyright (c) 2018 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from . import FlavorParser
|
||||
|
||||
# This parser is intented for interpret the RepRap Firmware flavor
|
||||
## This parser is intended to interpret the RepRap Firmware g-code flavor.
|
||||
class RepRapFlavorParser(FlavorParser.FlavorParser):
|
||||
|
||||
def __init__(self):
|
||||
|
|
|
@ -8,9 +8,6 @@ import UM 1.1 as UM
|
|||
|
||||
UM.Dialog {
|
||||
id: base;
|
||||
property var printersModel: {
|
||||
return ListModel{};
|
||||
}
|
||||
height: minimumHeight;
|
||||
leftButtons: [
|
||||
Button {
|
||||
|
@ -87,7 +84,9 @@ UM.Dialog {
|
|||
id: printerSelectionCombobox;
|
||||
Behavior on height { NumberAnimation { duration: 100 } }
|
||||
height: 40 * screenScaleFactor;
|
||||
model: base.printersModel;
|
||||
model: ListModel {
|
||||
id: printersModel;
|
||||
}
|
||||
textRole: "name";
|
||||
width: parent.width;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue