From b00ea4719a268ec4b000375343bbc4082783b435 Mon Sep 17 00:00:00 2001 From: Lipu Fei Date: Wed, 24 Oct 2018 15:42:43 +0200 Subject: [PATCH 01/10] WIP: Add custom CameraView for UM camera feed CURA-5821 --- cura/CuraApplication.py | 3 +++ cura/PrinterOutput/CameraView.py | 41 ++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 cura/PrinterOutput/CameraView.py diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py index 01cabcfb90..41dadc2d84 100755 --- a/cura/CuraApplication.py +++ b/cura/CuraApplication.py @@ -959,6 +959,9 @@ class CuraApplication(QtApplication): qmlRegisterType(QualityManagementModel, "Cura", 1, 0, "QualityManagementModel") qmlRegisterType(MachineManagementModel, "Cura", 1, 0, "MachineManagementModel") + from cura.PrinterOutput.CameraView import CameraView + qmlRegisterType(CameraView, "Cura", 1, 0, "CameraView") + qmlRegisterSingletonType(QualityProfilesDropDownMenuModel, "Cura", 1, 0, "QualityProfilesDropDownMenuModel", self.getQualityProfilesDropDownMenuModel) qmlRegisterSingletonType(CustomQualityProfilesDropDownMenuModel, "Cura", 1, 0, diff --git a/cura/PrinterOutput/CameraView.py b/cura/PrinterOutput/CameraView.py new file mode 100644 index 0000000000..4a604b7abe --- /dev/null +++ b/cura/PrinterOutput/CameraView.py @@ -0,0 +1,41 @@ +# Copyright (c) 2018 Ultimaker B.V. +# Cura is released under the terms of the LGPLv3 or higher. + +from PyQt5.QtCore import pyqtProperty, pyqtSignal +from PyQt5.QtGui import QImage +from PyQt5.QtQuick import QQuickPaintedItem + + +# +# A custom camera view that uses QQuickPaintedItem to present (or "paint") the image frames from a printer's +# network camera feed. +# +class CameraView(QQuickPaintedItem): + + def __init__(self, *args, **kwargs) -> None: + super().__init__(*args, **kwargs) + + self._image = QImage() + + imageChanged = pyqtSignal() + + def setImage(self, image: "QImage") -> None: + self._image = image + self.imageChanged.emit() + self.update() + + def getImage(self) -> "QImage": + return self._image + + image = pyqtProperty(QImage, fget = getImage, fset = setImage, notify = imageChanged) + + @pyqtProperty(int, notify = imageChanged) + def imageWidth(self) -> int: + return self._image.width() + + @pyqtProperty(int, notify = imageChanged) + def imageHeight(self) -> int: + return self._image.height() + + def paint(self, painter): + painter.drawImage(self.contentsBoundingRect(), self._image) From 9d07409cce48cbb7ce0923c75d8c81f092f3da1c Mon Sep 17 00:00:00 2001 From: Lipu Fei Date: Wed, 24 Oct 2018 15:46:16 +0200 Subject: [PATCH 02/10] WIP: Use CameraView for UM camera feeds CURA-5821 The original implementation that refreshes a QImage seems to cause memory overflow on MacOSX and Windows. This is a different implementation. It doesn't cause memory overflow, but it does consume a lot of CPU power. --- cura/PrinterOutput/NetworkCamera.py | 13 +++------- .../resources/qml/MonitorItem.qml | 24 ++++++++++++------- .../resources/qml/PrinterVideoStream.qml | 20 ++++++++++------ 3 files changed, 31 insertions(+), 26 deletions(-) diff --git a/cura/PrinterOutput/NetworkCamera.py b/cura/PrinterOutput/NetworkCamera.py index 5b28ffd30d..1fff9945c8 100644 --- a/cura/PrinterOutput/NetworkCamera.py +++ b/cura/PrinterOutput/NetworkCamera.py @@ -16,7 +16,6 @@ class NetworkCamera(QObject): self._image_request = None self._image_reply = None self._image = QImage() - self._image_id = 0 self._target = target self._started = False @@ -33,15 +32,9 @@ class NetworkCamera(QObject): if restart_required: self.start() - @pyqtProperty(QUrl, notify=newImage) + @pyqtProperty(QImage, notify=newImage) def latestImage(self): - self._image_id += 1 - # There is an image provider that is called "camera". In order to ensure that the image qml object, that - # requires a QUrl to function, updates correctly we add an increasing number. This causes to see the QUrl - # as new (instead of relying on cached version and thus forces an update. - temp = "image://camera/" + str(self._image_id) - - return QUrl(temp, QUrl.TolerantMode) + return self._image @pyqtSlot() def start(self): @@ -116,4 +109,4 @@ class NetworkCamera(QObject): self._stream_buffer_start_index = -1 self._image.loadFromData(jpg_data) - self.newImage.emit() + self.newImage.emit() diff --git a/plugins/UM3NetworkPrinting/resources/qml/MonitorItem.qml b/plugins/UM3NetworkPrinting/resources/qml/MonitorItem.qml index 4b863ff9ed..7aff32e424 100644 --- a/plugins/UM3NetworkPrinting/resources/qml/MonitorItem.qml +++ b/plugins/UM3NetworkPrinting/resources/qml/MonitorItem.qml @@ -10,7 +10,7 @@ Component { height: maximumHeight; width: maximumWidth; - Image { + Cura.CameraView { id: cameraImage; anchors { horizontalCenter: parent.horizontalCenter; @@ -21,7 +21,7 @@ Component { OutputDevice.activePrinter.camera.start(); } } - height: Math.floor((sourceSize.height === 0 ? 600 * screenScaleFactor : sourceSize.height) * width / sourceSize.width); + height: Math.floor((imageHeight === 0 ? 600 * screenScaleFactor : imageHeight) * width / imageWidth); onVisibleChanged: { if (visible) { if (OutputDevice.activePrinter != null && OutputDevice.activePrinter.camera != null) { @@ -33,14 +33,20 @@ Component { } } } - source: { - if (OutputDevice.activePrinter != null && OutputDevice.activePrinter.camera != null && OutputDevice.activePrinter.camera.latestImage) { - return OutputDevice.activePrinter.camera.latestImage; - } - return ""; - } - width: Math.min(sourceSize.width === 0 ? 800 * screenScaleFactor : sourceSize.width, maximumWidth); + width: Math.min(imageWidth === 0 ? 800 * screenScaleFactor : imageWidth, maximumWidth); z: 1; + + Connections + { + target: OutputDevice.activePrinter.camera; + onNewImage: + { + if (cameraImage.visible) { + cameraImage.image = OutputDevice.activePrinter.camera.latestImage; + cameraImage.update(); + } + } + } } } } \ No newline at end of file diff --git a/plugins/UM3NetworkPrinting/resources/qml/PrinterVideoStream.qml b/plugins/UM3NetworkPrinting/resources/qml/PrinterVideoStream.qml index b9e2525dd5..71104872a1 100644 --- a/plugins/UM3NetworkPrinting/resources/qml/PrinterVideoStream.qml +++ b/plugins/UM3NetworkPrinting/resources/qml/PrinterVideoStream.qml @@ -5,6 +5,7 @@ import QtQuick 2.2 import QtQuick.Controls 1.4 import QtQuick.Controls.Styles 1.4 import UM 1.3 as UM +import Cura 1.0 as Cura Item { property var camera: null; @@ -33,11 +34,11 @@ Item { z: 999; } - Image { + Cura.CameraView { id: cameraImage anchors.horizontalCenter: parent.horizontalCenter; anchors.verticalCenter: parent.verticalCenter; - height: Math.round((sourceSize.height === 0 ? 600 * screenScaleFactor : sourceSize.height) * width / sourceSize.width); + height: Math.round((imageHeight === 0 ? 600 * screenScaleFactor : imageHeight) * width / imageWidth); onVisibleChanged: { if (visible) { if (camera != null) { @@ -49,13 +50,18 @@ Item { } } } - source: { - if (camera != null && camera.latestImage != null) { - return camera.latestImage; + + Connections + { + target: camera + onNewImage: { + if (cameraImage.visible) { + cameraImage.image = camera.latestImage; + cameraImage.update(); + } } - return ""; } - width: Math.min(sourceSize.width === 0 ? 800 * screenScaleFactor : sourceSize.width, maximumWidth); + width: Math.min(imageWidth === 0 ? 800 * screenScaleFactor : imageWidth, maximumWidth); z: 1 } From 6fd7b49937cc4a19ad2a0b214a6a97e4841dc70a Mon Sep 17 00:00:00 2001 From: Lipu Fei Date: Thu, 25 Oct 2018 15:11:02 +0200 Subject: [PATCH 03/10] Fix setting extruder material diameter in Machine Settings dialog CURA-5857 It should update the value of the selected Extruder TAB, not the active extruder on the printer. --- plugins/MachineSettingsAction/MachineSettingsAction.qml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/MachineSettingsAction/MachineSettingsAction.qml b/plugins/MachineSettingsAction/MachineSettingsAction.qml index 5109aa05cb..ffd3a8cb47 100644 --- a/plugins/MachineSettingsAction/MachineSettingsAction.qml +++ b/plugins/MachineSettingsAction/MachineSettingsAction.qml @@ -410,7 +410,11 @@ Cura.MachineAction } function setValueFunction(value) { - Cura.MachineManager.activeStack.compatibleMaterialDiameter = value + if (settingsTabs.currentIndex > 0) + { + var extruderIndex = (settingsTabs.currentIndex - 1).toString(); + Cura.MachineManager.extruders[extruderIndex].compatibleMaterialDiameter = value; + } } property bool isExtruderSetting: true } From 73c6bdf0285c7a39f09b1d76be167221050db3c0 Mon Sep 17 00:00:00 2001 From: Jason Scurtu Date: Wed, 3 Oct 2018 22:09:13 +0200 Subject: [PATCH 04/10] Add Anycubic 4Max profile --- resources/definitions/anycubic_4max.def.json | 65 ++++++++++++++++++ .../anycubic_4max_extruder_0.def.json | 16 +++++ resources/meshes/anycubic_4max_platform.stl | Bin 0 -> 2284 bytes .../anycubic_4max_draft.inst.cfg | 60 ++++++++++++++++ .../anycubic_4max/anycubic_4max_high.inst.cfg | 60 ++++++++++++++++ .../anycubic_4max_normal.inst.cfg | 60 ++++++++++++++++ 6 files changed, 261 insertions(+) create mode 100644 resources/definitions/anycubic_4max.def.json create mode 100644 resources/extruders/anycubic_4max_extruder_0.def.json create mode 100644 resources/meshes/anycubic_4max_platform.stl create mode 100644 resources/quality/anycubic_4max/anycubic_4max_draft.inst.cfg create mode 100644 resources/quality/anycubic_4max/anycubic_4max_high.inst.cfg create mode 100644 resources/quality/anycubic_4max/anycubic_4max_normal.inst.cfg diff --git a/resources/definitions/anycubic_4max.def.json b/resources/definitions/anycubic_4max.def.json new file mode 100644 index 0000000000..65e75b8bca --- /dev/null +++ b/resources/definitions/anycubic_4max.def.json @@ -0,0 +1,65 @@ +{ + "version": 2, + "name": "Anycubic 4max", + "inherits": "fdmprinter", + "metadata": + { + "visible": true, + "author": "Jason Scurtu", + "manufacturer": "Anycubic", + "file_formats": "text/x-gcode", + "icon": "icon_ultimaker2", + "platform": "anycubic_4max_platform.stl", + "has_materials": true, + "has_machine_quality": true, + "preferred_quality_type": "normal", + "machine_extruder_trains": + { + "0": "anycubic_4max_extruder_0" + } + }, + + "overrides": + { + "machine_name": + { + "default_value": "Anycubic 4Max" + }, + "machine_heated_bed": + { + "default_value": true + }, + "machine_width": + { + "default_value": 210 + }, + "machine_height": + { + "default_value": 300 + }, + "machine_depth": + { + "default_value": 210 + }, + "machine_center_is_zero": + { + "default_value": false + }, + "gantry_height": + { + "default_value": 0 + }, + "machine_gcode_flavor": + { + "default_value": "RepRap (Marlin/Sprinter)" + }, + "machine_start_gcode": + { + "default_value": "G21 ;metric values\nG90 ;absolute positioning\nM82 ;set extruder to absolute mode\nM107 ;start with the fan off\nG28 X0 Y0 ;move X/Y to min endstops\nG28 Z0 ;move Z to min endstops\nG1 Z15.0 F{speed_travel} ;move the platform down 15mm\nG92 E0 ;zero the extruded length\nG1 F200 E3 ;extrude 3mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 F{speed_travel}\nM117 Printing...\nG5" + }, + "machine_end_gcode": + { + "default_value": "M104 S0 ; turn off extruder\nM140 S0 ; turn off bed\nM84 ; disable motors\nM107\nG91 ;relative positioning\nG1 E-1 F300 ;retract the filament a bit before lifting the nozzle\nto release some of the pressure\nG1 Z+0.5 E-5 ;X-20 Y-20 F{speed_travel} ;move Z up a bit and retract filament even more\nG28 X0 ;Y0 ;move X/Y to min endstops\nso the head is out of the way\nG1 Y180 F2000\nM84 ;steppers off\nG90\nM300 P300 S4000" + } + } +} diff --git a/resources/extruders/anycubic_4max_extruder_0.def.json b/resources/extruders/anycubic_4max_extruder_0.def.json new file mode 100644 index 0000000000..5c2ab8d479 --- /dev/null +++ b/resources/extruders/anycubic_4max_extruder_0.def.json @@ -0,0 +1,16 @@ +{ + "id": "anycubic_4max_extruder_0", + "version": 2, + "name": "Extruder 1", + "inherits": "fdmextruder", + "metadata": { + "machine": "anycubic_4max", + "position": "0" + }, + + "overrides": { + "extruder_nr": { "default_value": 0 }, + "machine_nozzle_size": { "default_value": 0.4 }, + "material_diameter": { "default_value": 1.75 } + } +} diff --git a/resources/meshes/anycubic_4max_platform.stl b/resources/meshes/anycubic_4max_platform.stl new file mode 100644 index 0000000000000000000000000000000000000000..cc3651b9f3acd67fa5ba55233ca0af407b90e003 GIT binary patch literal 2284 zcma)-Jx&8b4235W2iXHqgzzV&LL*8Fq=2X+lp+NbQRq{0oD}Ja_5@K5!Wpoi?OA8m zB%w01^NruLJ(JhP^mG38(M(>R-WK!aY|%`n%jSC6JkH*m(eUcN8D5QVZpWj$bk^Tx zwQI26<&^gAAU$t6{{7yyDXq4Hv`5VAhlqW-NDn`b*w{(Dew^TZMqBQffGSmTl4x1G z`aldHYxX1l!W`K-r%I4>sR-69LeEkqmSaN|K^!>ugxh6AP+g~<4T3DIF8qHSR%2 zXlFxJ*%L0N3P^8y&iPAL=S94GD|?V__wpXJWG-W*p|(eXX!T5%4Wa8%T0H>}k`bt^ia zDDh!nxIT72*oV3e BxSs$3 literal 0 HcmV?d00001 diff --git a/resources/quality/anycubic_4max/anycubic_4max_draft.inst.cfg b/resources/quality/anycubic_4max/anycubic_4max_draft.inst.cfg new file mode 100644 index 0000000000..238197307e --- /dev/null +++ b/resources/quality/anycubic_4max/anycubic_4max_draft.inst.cfg @@ -0,0 +1,60 @@ +[general] +version = 4 +name = Draft +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = draft +weight = 0 + +[values] +acceleration_enabled = True +acceleration_print = 1800 +acceleration_travel = 3000 +adhesion_type = skirt +brim_width = 4.0 +cool_fan_full_at_height = 0.5 +cool_fan_speed = 100 +cool_fan_speed_0 = 100 +infill_overlap = 15 +infill_pattern = zigzag +infill_sparse_density = 25 +initial_layer_line_width_factor = 140 +jerk_enabled = True +jerk_print = 8 +jerk_travel = 10 +layer_height = 0.3 +layer_height_0 = 0.3 +material_bed_temperature = 60 +material_diameter = 1.75 +material_print_temperature = 200 +material_print_temperature_layer_0 = 0 +retract_at_layer_change = False +retraction_amount = 6 +retraction_hop = 0.075 +retraction_hop_enabled = True +retraction_hop_only_when_collides = True +retraction_min_travel = 1.5 +retraction_speed = 40 +skirt_brim_speed = 40 +skirt_gap = 5 +skirt_line_count = 3 +speed_infill = =speed_print +speed_print = 60 +speed_support = 60 +speed_topbottom = =math.ceil(speed_print * 30 / 60) +speed_travel = 100 +speed_wall = =speed_print +speed_wall_x = =speed_print +support_angle = 60 +support_enable = True +support_interface_enable = True +support_pattern = triangles +support_roof_enable = True +support_type = everywhere +support_use_towers = False +support_xy_distance = 0.7 +top_bottom_thickness = 1.2 +wall_thickness = 1.2 diff --git a/resources/quality/anycubic_4max/anycubic_4max_high.inst.cfg b/resources/quality/anycubic_4max/anycubic_4max_high.inst.cfg new file mode 100644 index 0000000000..b931f92b79 --- /dev/null +++ b/resources/quality/anycubic_4max/anycubic_4max_high.inst.cfg @@ -0,0 +1,60 @@ +[general] +version = 4 +name = High +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = high +weight = 2 + +[values] +acceleration_enabled = True +acceleration_print = 1800 +acceleration_travel = 3000 +adhesion_type = skirt +brim_width = 4.0 +cool_fan_full_at_height = 0.5 +cool_fan_speed = 100 +cool_fan_speed_0 = 100 +infill_overlap = 15 +infill_pattern = zigzag +infill_sparse_density = 25 +initial_layer_line_width_factor = 140 +jerk_enabled = True +jerk_print = 8 +jerk_travel = 10 +layer_height = 0.1 +layer_height_0 = 0.1 +material_bed_temperature = 60 +material_diameter = 1.75 +material_print_temperature = 200 +material_print_temperature_layer_0 = 0 +retract_at_layer_change = False +retraction_amount = 6 +retraction_hop = 0.075 +retraction_hop_enabled = True +retraction_hop_only_when_collides = True +retraction_min_travel = 1.5 +retraction_speed = 40 +skirt_brim_speed = 40 +skirt_gap = 5 +skirt_line_count = 3 +speed_infill = =speed_print +speed_print = 50 +speed_support = 30 +speed_topbottom = =math.ceil(speed_print * 20 / 50) +speed_travel = 50 +speed_wall = =speed_print +speed_wall_x = =speed_print +support_angle = 60 +support_enable = True +support_interface_enable = True +support_pattern = triangles +support_roof_enable = True +support_type = everywhere +support_use_towers = False +support_xy_distance = 0.7 +top_bottom_thickness = 1.2 +wall_thickness = 1.2 diff --git a/resources/quality/anycubic_4max/anycubic_4max_normal.inst.cfg b/resources/quality/anycubic_4max/anycubic_4max_normal.inst.cfg new file mode 100644 index 0000000000..2fe70733e7 --- /dev/null +++ b/resources/quality/anycubic_4max/anycubic_4max_normal.inst.cfg @@ -0,0 +1,60 @@ +[general] +version = 4 +name = Normal +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = normal +weight = 1 + +[values] +acceleration_enabled = True +acceleration_print = 1800 +acceleration_travel = 3000 +adhesion_type = skirt +brim_width = 4.0 +cool_fan_full_at_height = 0.5 +cool_fan_speed = 100 +cool_fan_speed_0 = 100 +infill_overlap = 15 +infill_pattern = zigzag +infill_sparse_density = 25 +initial_layer_line_width_factor = 140 +jerk_enabled = True +jerk_print = 8 +jerk_travel = 10 +layer_height = 0.2 +layer_height_0 = 0.2 +material_bed_temperature = 60 +material_diameter = 1.75 +material_print_temperature = 200 +material_print_temperature_layer_0 = 0 +retract_at_layer_change = False +retraction_amount = 6 +retraction_hop = 0.075 +retraction_hop_enabled = True +retraction_hop_only_when_collides = True +retraction_min_travel = 1.5 +retraction_speed = 40 +skirt_brim_speed = 40 +skirt_gap = 5 +skirt_line_count = 3 +speed_infill = =speed_print +speed_print = 50 +speed_support = 30 +speed_topbottom = =math.ceil(speed_print * 20 / 50) +speed_travel = 100 +speed_wall = =speed_print +speed_wall_x = =speed_print +support_angle = 60 +support_enable = True +support_interface_enable = True +support_pattern = triangles +support_roof_enable = True +support_type = everywhere +support_use_towers = False +support_xy_distance = 0.7 +top_bottom_thickness = 1.2 +wall_thickness = 1.2 From 9532cc70b880591047419df2e68b899ae24c7bfd Mon Sep 17 00:00:00 2001 From: Jason Scurtu Date: Thu, 4 Oct 2018 09:44:24 +0200 Subject: [PATCH 05/10] Disable has_machine_quality for now.. Needs more adjustment --- resources/definitions/anycubic_4max.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/anycubic_4max.def.json b/resources/definitions/anycubic_4max.def.json index 65e75b8bca..222b90a70e 100644 --- a/resources/definitions/anycubic_4max.def.json +++ b/resources/definitions/anycubic_4max.def.json @@ -11,7 +11,7 @@ "icon": "icon_ultimaker2", "platform": "anycubic_4max_platform.stl", "has_materials": true, - "has_machine_quality": true, + "has_machine_quality": false, "preferred_quality_type": "normal", "machine_extruder_trains": { From 2b70613345da15f5de54ed9f592416c1c142a0d3 Mon Sep 17 00:00:00 2001 From: Jason Scurtu Date: Wed, 24 Oct 2018 19:46:21 +0200 Subject: [PATCH 06/10] fix and improve 4max profile --- resources/definitions/anycubic_4max.def.json | 107 +++++++++++------- .../abs/anycubic_4max_abs_draft.inst.cfg | 15 +++ .../abs/anycubic_4max_abs_high.inst.cfg | 15 +++ .../abs/anycubic_4max_abs_normal.inst.cfg | 16 +++ .../anycubic_4max_draft.inst.cfg | 49 +------- .../anycubic_4max/anycubic_4max_high.inst.cfg | 51 +-------- .../anycubic_4max_normal.inst.cfg | 48 +------- .../hips/anycubic_4max_hips_draft.inst.cfg | 14 +++ .../hips/anycubic_4max_hips_high.inst.cfg | 14 +++ .../hips/anycubic_4max_hips_normal.inst.cfg | 14 +++ .../petg/anycubic_4max_petg_draft.inst.cfg | 20 ++++ .../petg/anycubic_4max_petg_high.inst.cfg | 20 ++++ .../petg/anycubic_4max_petg_normal.inst.cfg | 20 ++++ .../pla/anycubic_4max_pla_draft.inst.cfg | 15 +++ .../pla/anycubic_4max_pla_high.inst.cfg | 14 +++ .../pla/anycubic_4max_pla_normal.inst.cfg | 14 +++ 16 files changed, 262 insertions(+), 184 deletions(-) create mode 100644 resources/quality/anycubic_4max/abs/anycubic_4max_abs_draft.inst.cfg create mode 100644 resources/quality/anycubic_4max/abs/anycubic_4max_abs_high.inst.cfg create mode 100644 resources/quality/anycubic_4max/abs/anycubic_4max_abs_normal.inst.cfg create mode 100644 resources/quality/anycubic_4max/hips/anycubic_4max_hips_draft.inst.cfg create mode 100644 resources/quality/anycubic_4max/hips/anycubic_4max_hips_high.inst.cfg create mode 100644 resources/quality/anycubic_4max/hips/anycubic_4max_hips_normal.inst.cfg create mode 100644 resources/quality/anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg create mode 100644 resources/quality/anycubic_4max/petg/anycubic_4max_petg_high.inst.cfg create mode 100644 resources/quality/anycubic_4max/petg/anycubic_4max_petg_normal.inst.cfg create mode 100644 resources/quality/anycubic_4max/pla/anycubic_4max_pla_draft.inst.cfg create mode 100644 resources/quality/anycubic_4max/pla/anycubic_4max_pla_high.inst.cfg create mode 100644 resources/quality/anycubic_4max/pla/anycubic_4max_pla_normal.inst.cfg diff --git a/resources/definitions/anycubic_4max.def.json b/resources/definitions/anycubic_4max.def.json index 222b90a70e..c14ce1ac31 100644 --- a/resources/definitions/anycubic_4max.def.json +++ b/resources/definitions/anycubic_4max.def.json @@ -1,17 +1,19 @@ { "version": 2, - "name": "Anycubic 4max", + "name": "Anycubic 4Max", "inherits": "fdmprinter", "metadata": { "visible": true, "author": "Jason Scurtu", "manufacturer": "Anycubic", + "category": "Other", "file_formats": "text/x-gcode", "icon": "icon_ultimaker2", "platform": "anycubic_4max_platform.stl", "has_materials": true, - "has_machine_quality": false, + "quality_definition": "anycubic_4max", + "has_machine_quality": true, "preferred_quality_type": "normal", "machine_extruder_trains": { @@ -21,45 +23,66 @@ "overrides": { - "machine_name": - { - "default_value": "Anycubic 4Max" - }, - "machine_heated_bed": - { - "default_value": true - }, - "machine_width": - { - "default_value": 210 - }, - "machine_height": - { - "default_value": 300 - }, - "machine_depth": - { - "default_value": 210 - }, - "machine_center_is_zero": - { - "default_value": false - }, - "gantry_height": - { - "default_value": 0 - }, - "machine_gcode_flavor": - { - "default_value": "RepRap (Marlin/Sprinter)" - }, - "machine_start_gcode": - { - "default_value": "G21 ;metric values\nG90 ;absolute positioning\nM82 ;set extruder to absolute mode\nM107 ;start with the fan off\nG28 X0 Y0 ;move X/Y to min endstops\nG28 Z0 ;move Z to min endstops\nG1 Z15.0 F{speed_travel} ;move the platform down 15mm\nG92 E0 ;zero the extruded length\nG1 F200 E3 ;extrude 3mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 F{speed_travel}\nM117 Printing...\nG5" - }, - "machine_end_gcode": - { - "default_value": "M104 S0 ; turn off extruder\nM140 S0 ; turn off bed\nM84 ; disable motors\nM107\nG91 ;relative positioning\nG1 E-1 F300 ;retract the filament a bit before lifting the nozzle\nto release some of the pressure\nG1 Z+0.5 E-5 ;X-20 Y-20 F{speed_travel} ;move Z up a bit and retract filament even more\nG28 X0 ;Y0 ;move X/Y to min endstops\nso the head is out of the way\nG1 Y180 F2000\nM84 ;steppers off\nG90\nM300 P300 S4000" - } + "machine_name": { "default_value": "Anycubic 4Max" }, + "machine_heated_bed": { "default_value": true }, + "machine_width": { "default_value": 220 }, + "machine_height": {"default_value": 300 }, + "machine_depth": { "default_value": 220 }, + "machine_center_is_zero": { "default_value": false }, + "machine_max_feedrate_x": { "default_value": 300 }, + "machine_max_feedrate_y": { "default_value": 300 }, + "machine_max_feedrate_z": { "default_value": 10 }, + "machine_acceleration": { "default_value": 1500 }, + "machine_max_acceleration_x": { "default_value": 1500 }, + "machine_max_acceleration_y": { "default_value": 1500 }, + "machine_max_acceleration_z": { "default_value": 100 }, + "machine_max_jerk_xy": { "default_value": 11.0 }, + "machine_max_jerk_z": { "default_value": 0.4 }, + "machine_max_jerk_e": { "default_value": 11.0 }, + + "jerk_enabled": { "value": "True" }, + "jerk_layer_0": { "value": "jerk_topbottom" }, + "jerk_prime_tower": { "value": "math.ceil(jerk_print * 15 / 25)" }, + "jerk_print": { "value": "11" }, + "jerk_support": { "value": "math.ceil(jerk_print * 15 / 25)" }, + "jerk_support_interface": { "value": "jerk_topbottom" }, + "jerk_topbottom": { "value": "math.ceil(jerk_print * 5 / 25)" }, + "jerk_wall": { "value": "math.ceil(jerk_print * 10 / 25)" }, + "jerk_wall_0": { "value": "math.ceil(jerk_wall * 5 / 10)" }, + + "gantry_height": { "default_value": 25.0 }, + "skin_overlap": { "value": "10" }, + + "acceleration_enabled": { "value": "True" }, + "acceleration_layer_0": { "value": "acceleration_topbottom" }, + "acceleration_prime_tower": { "value": "math.ceil(acceleration_print * 2000 / 4000)" }, + "acceleration_print": { "value": "900" }, + "acceleration_support": { "value": "math.ceil(acceleration_print * 2000 / 4000)" }, + "acceleration_support_interface": { "value": "acceleration_topbottom" }, + "acceleration_topbottom": { "value": "math.ceil(acceleration_print * 1000 / 3000)" }, + "acceleration_travel": { "value": "acceleration_print" }, + "acceleration_wall": { "value": "math.ceil(acceleration_print * 1000 / 3000)" }, + "acceleration_wall_0": { "value": "math.ceil(acceleration_wall * 1000 / 1000)" }, + + "speed_layer_0": { "value": "20" }, + "speed_print": { "value": "40" }, + "speed_support": { "value": "speed_wall_0" }, + "speed_support_interface": { "value": "speed_topbottom" }, + "speed_topbottom": { "value": "math.ceil(speed_print * 20 / 35)" }, + "speed_travel": { "value": "60" }, + "speed_wall": { "value": "math.ceil(speed_print * 30 / 35)" }, + "speed_wall_0": { "value": "math.ceil(speed_wall * 20 / 30)" }, + "speed_wall_x": { "value": "speed_wall" }, + + "infill_pattern": {"value": "'zigzag'" }, + "infill_before_walls": {"value": false }, + + "adhesion_type": { "default_value": "skirt" }, + "material_bed_temperature": { "maximum_value": "150" }, + "material_bed_temperature_layer_0": { "maximum_value": "150" }, + + "machine_gcode_flavor":{"default_value": "RepRap (Marlin/Sprinter)"}, + "machine_start_gcode":{"default_value": "G21 ;metric values\nG90 ;absolute positioning\nM82 ;set extruder to absolute mode\nM107 ;start with the fan off\nG28 X0 Y0 ;move X/Y to min endstops\nG28 Z0 ;move Z to min endstops\nG1 Z15.0 F{speed_travel} ;move the platform down 15mm\nG92 E0 ;zero the extruded length\nG1 F200 E3 ;extrude 3mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 F{speed_travel}\nM117 Printing...\nG5"}, + "machine_end_gcode":{"default_value": "M104 S0 ; turn off extruder\nM140 S0 ; turn off bed\nM84 ; disable motors\nM107\nG91 ;relative positioning\nG1 E-1 F300 ;retract the filament a bit before lifting the nozzle\nto release some of the pressure\nG1 Z+0.5 E-5 ;X-20 Y-20 F{speed_travel} ;move Z up a bit and retract filament even more\nG28 X0 ;Y0 ;move X/Y to min endstops\nso the head is out of the way\nG1 Y180 F2000\nM84 ;steppers off\nG90\nM300 P300 S4000"} } } diff --git a/resources/quality/anycubic_4max/abs/anycubic_4max_abs_draft.inst.cfg b/resources/quality/anycubic_4max/abs/anycubic_4max_abs_draft.inst.cfg new file mode 100644 index 0000000000..f5baa55029 --- /dev/null +++ b/resources/quality/anycubic_4max/abs/anycubic_4max_abs_draft.inst.cfg @@ -0,0 +1,15 @@ +[general] +version = 4 +name = Draft +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = draft +weight = 0 +material = generic_abs + +[values] +cool_fan_enabled = False +adhesion_type = brim diff --git a/resources/quality/anycubic_4max/abs/anycubic_4max_abs_high.inst.cfg b/resources/quality/anycubic_4max/abs/anycubic_4max_abs_high.inst.cfg new file mode 100644 index 0000000000..bd613c6aad --- /dev/null +++ b/resources/quality/anycubic_4max/abs/anycubic_4max_abs_high.inst.cfg @@ -0,0 +1,15 @@ +[general] +version = 4 +name = High +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = high +weight = 2 +material = generic_abs + +[values] +cool_fan_enabled = False +adhesion_type = brim diff --git a/resources/quality/anycubic_4max/abs/anycubic_4max_abs_normal.inst.cfg b/resources/quality/anycubic_4max/abs/anycubic_4max_abs_normal.inst.cfg new file mode 100644 index 0000000000..7cff1db4d2 --- /dev/null +++ b/resources/quality/anycubic_4max/abs/anycubic_4max_abs_normal.inst.cfg @@ -0,0 +1,16 @@ +[general] +version = 4 +name = Normal +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = normal +weight = 1 +material = generic_abs + +[values] +cool_fan_enabled = False +adhesion_type = brim + diff --git a/resources/quality/anycubic_4max/anycubic_4max_draft.inst.cfg b/resources/quality/anycubic_4max/anycubic_4max_draft.inst.cfg index 238197307e..c0114e3d6c 100644 --- a/resources/quality/anycubic_4max/anycubic_4max_draft.inst.cfg +++ b/resources/quality/anycubic_4max/anycubic_4max_draft.inst.cfg @@ -8,53 +8,8 @@ setting_version = 5 type = quality quality_type = draft weight = 0 +global_quality = True [values] -acceleration_enabled = True -acceleration_print = 1800 -acceleration_travel = 3000 -adhesion_type = skirt -brim_width = 4.0 -cool_fan_full_at_height = 0.5 -cool_fan_speed = 100 -cool_fan_speed_0 = 100 -infill_overlap = 15 -infill_pattern = zigzag -infill_sparse_density = 25 -initial_layer_line_width_factor = 140 -jerk_enabled = True -jerk_print = 8 -jerk_travel = 10 layer_height = 0.3 -layer_height_0 = 0.3 -material_bed_temperature = 60 -material_diameter = 1.75 -material_print_temperature = 200 -material_print_temperature_layer_0 = 0 -retract_at_layer_change = False -retraction_amount = 6 -retraction_hop = 0.075 -retraction_hop_enabled = True -retraction_hop_only_when_collides = True -retraction_min_travel = 1.5 -retraction_speed = 40 -skirt_brim_speed = 40 -skirt_gap = 5 -skirt_line_count = 3 -speed_infill = =speed_print -speed_print = 60 -speed_support = 60 -speed_topbottom = =math.ceil(speed_print * 30 / 60) -speed_travel = 100 -speed_wall = =speed_print -speed_wall_x = =speed_print -support_angle = 60 -support_enable = True -support_interface_enable = True -support_pattern = triangles -support_roof_enable = True -support_type = everywhere -support_use_towers = False -support_xy_distance = 0.7 -top_bottom_thickness = 1.2 -wall_thickness = 1.2 + diff --git a/resources/quality/anycubic_4max/anycubic_4max_high.inst.cfg b/resources/quality/anycubic_4max/anycubic_4max_high.inst.cfg index b931f92b79..4a0993412a 100644 --- a/resources/quality/anycubic_4max/anycubic_4max_high.inst.cfg +++ b/resources/quality/anycubic_4max/anycubic_4max_high.inst.cfg @@ -8,53 +8,8 @@ setting_version = 5 type = quality quality_type = high weight = 2 +global_quality = True [values] -acceleration_enabled = True -acceleration_print = 1800 -acceleration_travel = 3000 -adhesion_type = skirt -brim_width = 4.0 -cool_fan_full_at_height = 0.5 -cool_fan_speed = 100 -cool_fan_speed_0 = 100 -infill_overlap = 15 -infill_pattern = zigzag -infill_sparse_density = 25 -initial_layer_line_width_factor = 140 -jerk_enabled = True -jerk_print = 8 -jerk_travel = 10 -layer_height = 0.1 -layer_height_0 = 0.1 -material_bed_temperature = 60 -material_diameter = 1.75 -material_print_temperature = 200 -material_print_temperature_layer_0 = 0 -retract_at_layer_change = False -retraction_amount = 6 -retraction_hop = 0.075 -retraction_hop_enabled = True -retraction_hop_only_when_collides = True -retraction_min_travel = 1.5 -retraction_speed = 40 -skirt_brim_speed = 40 -skirt_gap = 5 -skirt_line_count = 3 -speed_infill = =speed_print -speed_print = 50 -speed_support = 30 -speed_topbottom = =math.ceil(speed_print * 20 / 50) -speed_travel = 50 -speed_wall = =speed_print -speed_wall_x = =speed_print -support_angle = 60 -support_enable = True -support_interface_enable = True -support_pattern = triangles -support_roof_enable = True -support_type = everywhere -support_use_towers = False -support_xy_distance = 0.7 -top_bottom_thickness = 1.2 -wall_thickness = 1.2 +layer_height = 0.15 + diff --git a/resources/quality/anycubic_4max/anycubic_4max_normal.inst.cfg b/resources/quality/anycubic_4max/anycubic_4max_normal.inst.cfg index 2fe70733e7..eeb1d699e4 100644 --- a/resources/quality/anycubic_4max/anycubic_4max_normal.inst.cfg +++ b/resources/quality/anycubic_4max/anycubic_4max_normal.inst.cfg @@ -8,53 +8,7 @@ setting_version = 5 type = quality quality_type = normal weight = 1 +global_quality = True [values] -acceleration_enabled = True -acceleration_print = 1800 -acceleration_travel = 3000 -adhesion_type = skirt -brim_width = 4.0 -cool_fan_full_at_height = 0.5 -cool_fan_speed = 100 -cool_fan_speed_0 = 100 -infill_overlap = 15 -infill_pattern = zigzag -infill_sparse_density = 25 -initial_layer_line_width_factor = 140 -jerk_enabled = True -jerk_print = 8 -jerk_travel = 10 layer_height = 0.2 -layer_height_0 = 0.2 -material_bed_temperature = 60 -material_diameter = 1.75 -material_print_temperature = 200 -material_print_temperature_layer_0 = 0 -retract_at_layer_change = False -retraction_amount = 6 -retraction_hop = 0.075 -retraction_hop_enabled = True -retraction_hop_only_when_collides = True -retraction_min_travel = 1.5 -retraction_speed = 40 -skirt_brim_speed = 40 -skirt_gap = 5 -skirt_line_count = 3 -speed_infill = =speed_print -speed_print = 50 -speed_support = 30 -speed_topbottom = =math.ceil(speed_print * 20 / 50) -speed_travel = 100 -speed_wall = =speed_print -speed_wall_x = =speed_print -support_angle = 60 -support_enable = True -support_interface_enable = True -support_pattern = triangles -support_roof_enable = True -support_type = everywhere -support_use_towers = False -support_xy_distance = 0.7 -top_bottom_thickness = 1.2 -wall_thickness = 1.2 diff --git a/resources/quality/anycubic_4max/hips/anycubic_4max_hips_draft.inst.cfg b/resources/quality/anycubic_4max/hips/anycubic_4max_hips_draft.inst.cfg new file mode 100644 index 0000000000..3cd0226bd4 --- /dev/null +++ b/resources/quality/anycubic_4max/hips/anycubic_4max_hips_draft.inst.cfg @@ -0,0 +1,14 @@ +[general] +version = 4 +name = Draft +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = draft +weight = 0 +material = generic_hips + +[values] + diff --git a/resources/quality/anycubic_4max/hips/anycubic_4max_hips_high.inst.cfg b/resources/quality/anycubic_4max/hips/anycubic_4max_hips_high.inst.cfg new file mode 100644 index 0000000000..ff5c6bee2f --- /dev/null +++ b/resources/quality/anycubic_4max/hips/anycubic_4max_hips_high.inst.cfg @@ -0,0 +1,14 @@ +[general] +version = 4 +name = High +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = high +weight = 2 +material = generic_hips + +[values] + diff --git a/resources/quality/anycubic_4max/hips/anycubic_4max_hips_normal.inst.cfg b/resources/quality/anycubic_4max/hips/anycubic_4max_hips_normal.inst.cfg new file mode 100644 index 0000000000..c4701ae246 --- /dev/null +++ b/resources/quality/anycubic_4max/hips/anycubic_4max_hips_normal.inst.cfg @@ -0,0 +1,14 @@ +[general] +version = 4 +name = Normal +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = normal +weight = 1 +material = generic_hips + +[values] + diff --git a/resources/quality/anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg new file mode 100644 index 0000000000..1e8869727a --- /dev/null +++ b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg @@ -0,0 +1,20 @@ +[general] +version = 4 +name = Draft +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = draft +weight = 0 +material = generic_petg + +[values] +default_material_print_temperature = 250 +material_bed_temperature = 70 +cool_fan_enabled = False + +speed_print = 30 +speed_layer_0 = 20 +speed_travel = 60 diff --git a/resources/quality/anycubic_4max/petg/anycubic_4max_petg_high.inst.cfg b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_high.inst.cfg new file mode 100644 index 0000000000..af9fcf41ea --- /dev/null +++ b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_high.inst.cfg @@ -0,0 +1,20 @@ +[general] +version = 4 +name = High +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = high +weight = 2 +material = generic_petg + +[values] +default_material_print_temperature = 250 +material_bed_temperature = 70 +cool_fan_enabled = False + +speed_print = 30 +speed_layer_0 = 20 +speed_travel = 60 \ No newline at end of file diff --git a/resources/quality/anycubic_4max/petg/anycubic_4max_petg_normal.inst.cfg b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_normal.inst.cfg new file mode 100644 index 0000000000..0946cacbf3 --- /dev/null +++ b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_normal.inst.cfg @@ -0,0 +1,20 @@ +[general] +version = 4 +name = Normal +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = normal +weight = 1 +material = generic_petg + +[values] +default_material_print_temperature = 250 +material_bed_temperature = 70 +cool_fan_enabled = False + +speed_print = 30 +speed_layer_0 = 20 +speed_travel = 60 \ No newline at end of file diff --git a/resources/quality/anycubic_4max/pla/anycubic_4max_pla_draft.inst.cfg b/resources/quality/anycubic_4max/pla/anycubic_4max_pla_draft.inst.cfg new file mode 100644 index 0000000000..eae9e3b5ef --- /dev/null +++ b/resources/quality/anycubic_4max/pla/anycubic_4max_pla_draft.inst.cfg @@ -0,0 +1,15 @@ +[general] +version = 4 +name = Draft +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = draft +weight = 0 +material = generic_pla + +[values] + + diff --git a/resources/quality/anycubic_4max/pla/anycubic_4max_pla_high.inst.cfg b/resources/quality/anycubic_4max/pla/anycubic_4max_pla_high.inst.cfg new file mode 100644 index 0000000000..c856fc66a7 --- /dev/null +++ b/resources/quality/anycubic_4max/pla/anycubic_4max_pla_high.inst.cfg @@ -0,0 +1,14 @@ +[general] +version = 4 +name = High +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = high +weight = 2 +material = generic_pla + +[values] + diff --git a/resources/quality/anycubic_4max/pla/anycubic_4max_pla_normal.inst.cfg b/resources/quality/anycubic_4max/pla/anycubic_4max_pla_normal.inst.cfg new file mode 100644 index 0000000000..be33bfe53a --- /dev/null +++ b/resources/quality/anycubic_4max/pla/anycubic_4max_pla_normal.inst.cfg @@ -0,0 +1,14 @@ +[general] +version = 4 +name = Normal +definition = anycubic_4max + +[metadata] +setting_version = 5 +type = quality +quality_type = normal +weight = 1 +material = generic_pla + +[values] + From 2c432944726126c57c556fae45e82e9701bd9deb Mon Sep 17 00:00:00 2001 From: Jason Scurtu Date: Thu, 25 Oct 2018 12:45:01 +0200 Subject: [PATCH 07/10] use "material_print_temperature" in material profile --- .../anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg | 5 ++--- .../anycubic_4max/petg/anycubic_4max_petg_high.inst.cfg | 4 +--- .../anycubic_4max/petg/anycubic_4max_petg_normal.inst.cfg | 4 +--- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/resources/quality/anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg index 1e8869727a..6852fcd421 100644 --- a/resources/quality/anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg +++ b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg @@ -11,10 +11,9 @@ weight = 0 material = generic_petg [values] -default_material_print_temperature = 250 +material_print_temperature = =default_material_print_temperature + 35 material_bed_temperature = 70 cool_fan_enabled = False speed_print = 30 -speed_layer_0 = 20 -speed_travel = 60 + diff --git a/resources/quality/anycubic_4max/petg/anycubic_4max_petg_high.inst.cfg b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_high.inst.cfg index af9fcf41ea..57a89c4ec2 100644 --- a/resources/quality/anycubic_4max/petg/anycubic_4max_petg_high.inst.cfg +++ b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_high.inst.cfg @@ -11,10 +11,8 @@ weight = 2 material = generic_petg [values] -default_material_print_temperature = 250 +material_print_temperature = =default_material_print_temperature + 35 material_bed_temperature = 70 cool_fan_enabled = False speed_print = 30 -speed_layer_0 = 20 -speed_travel = 60 \ No newline at end of file diff --git a/resources/quality/anycubic_4max/petg/anycubic_4max_petg_normal.inst.cfg b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_normal.inst.cfg index 0946cacbf3..14a4607ceb 100644 --- a/resources/quality/anycubic_4max/petg/anycubic_4max_petg_normal.inst.cfg +++ b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_normal.inst.cfg @@ -11,10 +11,8 @@ weight = 1 material = generic_petg [values] -default_material_print_temperature = 250 +material_print_temperature = =default_material_print_temperature + 35 material_bed_temperature = 70 cool_fan_enabled = False speed_print = 30 -speed_layer_0 = 20 -speed_travel = 60 \ No newline at end of file From 2227c1debf68b3eef42e9ed481e6018ee27362e3 Mon Sep 17 00:00:00 2001 From: Jason Scurtu Date: Thu, 25 Oct 2018 13:01:05 +0200 Subject: [PATCH 08/10] recheck --- .../quality/anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg | 1 - 1 file changed, 1 deletion(-) diff --git a/resources/quality/anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg index 6852fcd421..5e0c3e204a 100644 --- a/resources/quality/anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg +++ b/resources/quality/anycubic_4max/petg/anycubic_4max_petg_draft.inst.cfg @@ -16,4 +16,3 @@ material_bed_temperature = 70 cool_fan_enabled = False speed_print = 30 - From f1d94d921c4457988999eab16ae942ea316e93b1 Mon Sep 17 00:00:00 2001 From: Diego Prado Gesto Date: Thu, 25 Oct 2018 16:27:16 +0200 Subject: [PATCH 09/10] The MachineManager doesn't have the extruder stacks but the active machine does, so use it when setting the compatible material diameter to the current extruder. Contributes to CURA-5857. --- plugins/MachineSettingsAction/MachineSettingsAction.qml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/MachineSettingsAction/MachineSettingsAction.qml b/plugins/MachineSettingsAction/MachineSettingsAction.qml index ffd3a8cb47..e16ecf5492 100644 --- a/plugins/MachineSettingsAction/MachineSettingsAction.qml +++ b/plugins/MachineSettingsAction/MachineSettingsAction.qml @@ -405,15 +405,15 @@ Cura.MachineAction { if (settingsTabs.currentIndex > 0) { - manager.updateMaterialForDiameter(settingsTabs.currentIndex - 1); + manager.updateMaterialForDiameter(settingsTabs.currentIndex - 1) } } function setValueFunction(value) { if (settingsTabs.currentIndex > 0) { - var extruderIndex = (settingsTabs.currentIndex - 1).toString(); - Cura.MachineManager.extruders[extruderIndex].compatibleMaterialDiameter = value; + var extruderIndex = (settingsTabs.currentIndex - 1).toString() + Cura.MachineManager.activeMachine.extruders[extruderIndex].compatibleMaterialDiameter = value } } property bool isExtruderSetting: true From 94d48101d98e41e04483505f232972ec2d46ee7c Mon Sep 17 00:00:00 2001 From: Ian Paschal Date: Thu, 25 Oct 2018 16:45:49 +0200 Subject: [PATCH 10/10] Use different lengths for loading skeleton and printer name Contributes to CL-1119 --- plugins/UM3NetworkPrinting/resources/qml/PrinterCard.qml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/plugins/UM3NetworkPrinting/resources/qml/PrinterCard.qml b/plugins/UM3NetworkPrinting/resources/qml/PrinterCard.qml index 79a915d0d1..76e3184f4f 100644 --- a/plugins/UM3NetworkPrinting/resources/qml/PrinterCard.qml +++ b/plugins/UM3NetworkPrinting/resources/qml/PrinterCard.qml @@ -118,7 +118,10 @@ Item { Item { id: machineNameLabel; height: UM.Theme.getSize("monitor_text_line").height; - width: Math.round(parent.width * 0.3); + width: { + var percent = printer ? 0.75 : 0.3; + return Math.round(parent.width * percent); + } // Skeleton Rectangle {