From f9a0b1db50df91bc6f9b3a3e0c9f4c1c1048806a Mon Sep 17 00:00:00 2001 From: Orel Date: Thu, 1 Feb 2018 09:40:43 +0100 Subject: [PATCH 01/28] Enhance Dagoma DiscoEasy200 profile and add Dagoma Neva stuff (profile and mesh). --- .../definitions/dagoma_discoeasy200.def.json | 17 ++++- resources/definitions/dagoma_neva.def.json | 69 ++++++++++++++++++ resources/meshes/neva.stl | Bin 0 -> 334484 bytes 3 files changed, 83 insertions(+), 3 deletions(-) create mode 100644 resources/definitions/dagoma_neva.def.json create mode 100644 resources/meshes/neva.stl diff --git a/resources/definitions/dagoma_discoeasy200.def.json b/resources/definitions/dagoma_discoeasy200.def.json index 9bcc2402f2..1674801b5e 100644 --- a/resources/definitions/dagoma_discoeasy200.def.json +++ b/resources/definitions/dagoma_discoeasy200.def.json @@ -7,7 +7,6 @@ "author": "Dagoma", "manufacturer": "Dagoma", "file_formats": "text/x-gcode", - "icon": "icon_discoeasy200.png", "platform": "discoeasy200.stl", "platform_offset": [ 105, -59, 280] }, @@ -39,13 +38,25 @@ "default_value": 10 }, "machine_start_gcode": { - "default_value": ";Gcode by Cura\nG90 ;absolute positioning\nM106 S250 ;fan on for the palpeur\nG28 X Y\nG1 X50\nM109 S180\nG28\nM104 S{material_print_temperature_layer_0}\n;Activation palpeur\n;bloc palpeur\nG29 ;Auto level\nM107 ;start with the fan off\nG1 X100 Y20 F3000\nG1 Z0.5\nM109 S{material_print_temperature_layer_0}\nM82 ;set extruder to absolute mode\nG92 E0 ;zero the extruded length\nG1 F200 E10 ;extrude 10mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 Z3\nG1 F6000" + "default_value": ";Gcode by Cura\nG90\nM106 S250\nG28 X Y\nG1 X50\nM109 S180\nG28\nM104 S{material_print_temperature_layer_0}\nG29\nM107\nG1 X100 Y20 F3000\nG1 Z0.5\nM109 S{material_print_temperature_layer_0}\nM82\nG92 E0\nG1 F200 E10\nG92 E0\nG1 Z3\nG1 F6000\n" }, "machine_end_gcode": { - "default_value": "M104 S0\nM106 S255 ;start fan full power\nM140 S0 ;heated bed heater off (if you have it)\n;Home machine\nG91 ;relative positioning\nG1 E-1 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure\nG1 Z+3 F3000 ;move Z up a bit and retract filament even more\nG90\nG28 X Y\n;Ventilation forcee\nM107 ;stop fan\n;Shut down motor\nM84 ;shut down motors" + "default_value": "\nM104 S0\nM106 S255\nM140 S0\nG91\nG1 E-1 F300\nG1 Z+3 F3000\nG90\nG28 X Y\nM107\nM84\n" }, "material_diameter": { "default_value": 1.75 + }, + "speed_print": { + "default_value": 60 + }, + "speed_travel": { + "default_value": 100 + }, + "retraction_amount": { + "default_value": 3.5 + }, + "retraction_speed": { + "default_value": 50 } } } diff --git a/resources/definitions/dagoma_neva.def.json b/resources/definitions/dagoma_neva.def.json new file mode 100644 index 0000000000..430d2f6ab1 --- /dev/null +++ b/resources/definitions/dagoma_neva.def.json @@ -0,0 +1,69 @@ +{ + "id": "Dagoma_neva", + "name": "Dagoma NEVA", + "version": 2, + "inherits": "fdmprinter", + "metadata": { + "visible": true, + "author": "Dagoma", + "manufacturer": "Dagoma", + "file_formats": "text/x-gcode", + "platform": "neva.stl", + "platform_offset": [ 0, 0, 0] + }, + "overrides": { + "machine_width": { + "default_value": 195.55 + }, + "machine_height": { + "default_value": 205 + }, + "machine_depth": { + "default_value": 195.55 + }, + "machine_center_is_zero": { + "default_value": true + }, + "machine_nozzle_size": { + "default_value": 0.4 + }, + "machine_head_with_fans_polygon": { + "default_value": [ + [17, 40], + [17, -70], + [-17, -70], + [17, 40] + ] + }, + "gantry_height": { + "default_value": 0 + }, + "machine_shape": { + "default_value": "elliptic" + }, + "machine_gcode_flavor": { + "default_value": "RepRap" + }, + "machine_start_gcode": { + "default_value": ";Gcode by Cura\nG90\nG28\nM109 S100\nG29\nM104 S{material_print_temperature_layer_0}\nG0 X0 Y-85\nG0 Z0.26\nM109 S{material_print_temperature_layer_0}\nM82\nG92 E0\nG1 F200 E6\nG92 E0\nG1 F200 E-3.5\nG0 Z0.15\nG0 X10\nG0 Z3\nG1 F6000\n" + }, + "machine_end_gcode": { + "default_value": "\nM104 S0\nM106 S255\nM140 S0\nG91\nG1 E-1 F300\nG1 Z+3 E-2 F9000\nG90\nG28\n" + }, + "material_diameter": { + "default_value": 1.75 + }, + "speed_print": { + "default_value": 40 + }, + "speed_travel": { + "default_value": 120 + }, + "retraction_amount": { + "default_value": 3.8 + }, + "retraction_speed": { + "default_value": 60 + } + } +} diff --git a/resources/meshes/neva.stl b/resources/meshes/neva.stl new file mode 100644 index 0000000000000000000000000000000000000000..72ec185bd9320bc10fa3f7c0fa3c205aabb63e0a GIT binary patch literal 334484 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 Y!FyODM#yN#Sd+*H)`c|iTV0a=1NfM=g8%>k literal 0 HcmV?d00001 From 1b17aee88f6af37fe779679f5ea8a606e6610190 Mon Sep 17 00:00:00 2001 From: uBuild-3D <32798910+uBuild-3D@users.noreply.github.com> Date: Thu, 8 Feb 2018 19:30:14 +0200 Subject: [PATCH 02/28] Create ubuild-3d_mr_bot_280.def.json Machine definition of MrBot280 3D printer by www.ubuild-3d.com Thanks --- .../definitions/ubuild-3d_mr_bot_280.def.json | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 resources/definitions/ubuild-3d_mr_bot_280.def.json diff --git a/resources/definitions/ubuild-3d_mr_bot_280.def.json b/resources/definitions/ubuild-3d_mr_bot_280.def.json new file mode 100644 index 0000000000..7f9069370c --- /dev/null +++ b/resources/definitions/ubuild-3d_mr_bot_280.def.json @@ -0,0 +1,49 @@ +{ + "id": "ubuild-3d_mr_bot_280", + "version": 2, + "name": "uBuild-3D Mr Bot 280", + "inherits": "fdmprinter", + "metadata": { + "visible": true, + "author": "uBuild-3D", + "manufacturer": "uBuild-3D", + "category": "Other", + "file_formats": "text/x-gcode", + "icon": "icon_uBuild-3D", + "platform": "mr_bot_280_platform.stl", + "has_materials": true + }, + + "overrides": { + "machine_name": { "default_value": "Mr Bot 280" }, + "machine_heated_bed": { "default_value": true }, + "machine_width": { "default_value": 275 }, + "machine_height": { "default_value": 275 }, + "machine_depth": { "default_value": 275 }, + "machine_center_is_zero": { "default_value": false }, + "material_diameter": { "default_value": 1.75 }, + "material_bed_temperature": { "default_value": 70 }, + "machine_nozzle_size": { "default_value": 0.4 }, + "layer_height": { "default_value": 0.2 }, + "layer_height_0": { "default_value": 0.1 }, + "retraction_amount": { "default_value": 2 }, + "retraction_speed": { "default_value": 50 }, + "retraction_retract_speed": { "default_value": 50 }, + "retraction_prime_speed": { "default_value": 30 }, + "adhesion_type": { "default_value": "skirt" }, + "machine_nozzle_heat_up_speed": { "default_value": 2 }, + "machine_nozzle_cool_down_speed": { "default_value": 2 }, + "machine_head_with_fans_polygon": { "default_value": [[-20,20],[10,10],[10,10],[10,10]] }, + "gantry_height": { "default_value": 275 }, + "machine_max_feedrate_z": { "default_value": 15 }, + "machine_max_feedrate_e": { "default_value": 60 }, + "machine_max_acceleration_z": { "default_value": 1000 }, + "machine_acceleration": { "default_value": 2000 }, + "machine_max_jerk_xy": { "default_value": 20 }, + "machine_max_jerk_z": { "default_value": 0.4 }, + "machine_max_jerk_e": { "default_value": 5 }, + "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, + "machine_start_gcode": { "default_value": "G21 ; set units to millimeters\nG90 ; use absolute positioning\nM82 ; absolute extrusion mode\nM140 S{material_bed_temperature} ; set bed temp\nM104 S{material_print_temperature} ; set extruder temp\nG28 ; home X, Y and Z\nG29 ; probe sequence (for auto-leveling)\nG1 Z15 F600 ; go to Z15 position\nG1 X0 Y-20 F10000 ; go to X0 Y-20 position\nM190 S{material_bed_temperature} ; wait for bed temp\nM109 S{material_print_temperature} ; wait for extruder temp\nG92 E0 ; reset extruder distance position\nG1 E25 F100 ; extrude 25mm of material\nG92 E0 ; reset extruder distance position\nM117 Printing..." }, + "machine_end_gcode": { "default_value": "M400 ; wait for moves to finish\nG92 Z0 E0 ; reset Z position\nG1 E-2 F9000 ; retract material\nG1 Z2 ; get extruder out of the way\nM104 S0 ; turn off extruder\nG1 Y285 F3000 ; present finished print\nM140 S0 ; turn off bed\nM84 ; disable motors\nM117 Print complete" } + } +} From 19eb37e6123016a563c835694158e5ca1b2865b4 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sat, 17 Feb 2018 14:53:07 +0100 Subject: [PATCH 03/28] Update AboutDialog.qml --- resources/qml/AboutDialog.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/qml/AboutDialog.qml b/resources/qml/AboutDialog.qml index 30e540e80a..771b55f13f 100644 --- a/resources/qml/AboutDialog.qml +++ b/resources/qml/AboutDialog.qml @@ -136,6 +136,7 @@ UM.Dialog projectsModel.append({ name:"Noto Sans", description: catalog.i18nc("@label", "Font"), license: "Apache 2.0", url: "https://www.google.com/get/noto/" }); projectsModel.append({ name:"Font-Awesome-SVG-PNG", description: catalog.i18nc("@label", "SVG icons"), license: "SIL OFL 1.1", url: "https://github.com/encharm/Font-Awesome-SVG-PNG" }); + projectsModel.append({ name:"AppImageKit", description: catalog.i18nc("@label", "AppImageKit"), license: "MIT", url: "https://github.com/AppImage/AppImageKit" }); } } } From c84ba800d30a0c2e6d6afb404877d8d87689f12f Mon Sep 17 00:00:00 2001 From: probonopd Date: Sat, 17 Feb 2018 14:58:25 +0100 Subject: [PATCH 04/28] Update AboutDialog.qml --- resources/qml/AboutDialog.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/qml/AboutDialog.qml b/resources/qml/AboutDialog.qml index 771b55f13f..5d3b1d1544 100644 --- a/resources/qml/AboutDialog.qml +++ b/resources/qml/AboutDialog.qml @@ -136,7 +136,7 @@ UM.Dialog projectsModel.append({ name:"Noto Sans", description: catalog.i18nc("@label", "Font"), license: "Apache 2.0", url: "https://www.google.com/get/noto/" }); projectsModel.append({ name:"Font-Awesome-SVG-PNG", description: catalog.i18nc("@label", "SVG icons"), license: "SIL OFL 1.1", url: "https://github.com/encharm/Font-Awesome-SVG-PNG" }); - projectsModel.append({ name:"AppImageKit", description: catalog.i18nc("@label", "AppImageKit"), license: "MIT", url: "https://github.com/AppImage/AppImageKit" }); + projectsModel.append({ name:"AppImageKit", description: catalog.i18nc("@label", "Linux cross-distribution application deployment"), license: "MIT", url: "https://github.com/AppImage/AppImageKit" }); } } } From 38502e682964c3831e1da2753acdb69ce50cbbd0 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sat, 17 Feb 2018 14:59:58 +0100 Subject: [PATCH 05/28] Update cura.pot --- resources/i18n/cura.pot | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/resources/i18n/cura.pot b/resources/i18n/cura.pot index e8148997ce..1620e11d81 100644 --- a/resources/i18n/cura.pot +++ b/resources/i18n/cura.pot @@ -3598,6 +3598,11 @@ msgctxt "@label" msgid "SVG icons" msgstr "" +#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:139 +msgctxt "@label" +msgid "Linux cross-distribution application deployment" +msgstr "" + #: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:41 msgctxt "@label" msgid "Profile:" From e55f2d0355db124256a0e6986ddaeb347e28fad1 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sat, 17 Feb 2018 15:02:37 +0100 Subject: [PATCH 06/28] Update cura.po --- resources/i18n/de_DE/cura.po | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/resources/i18n/de_DE/cura.po b/resources/i18n/de_DE/cura.po index 9af48a4d06..250e3e5e1b 100644 --- a/resources/i18n/de_DE/cura.po +++ b/resources/i18n/de_DE/cura.po @@ -3485,6 +3485,11 @@ msgctxt "@label" msgid "SVG icons" msgstr "SVG-Symbole" +#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:139 +msgctxt "@label" +msgid "Linux cross-distribution application deployment" +msgstr "Distributionsunabhängiges Format für Linux-Anwendungen" + #: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:41 msgctxt "@label" msgid "Profile:" From 2c689ef03f981ad3d8a6bd381360e225d131ed0e Mon Sep 17 00:00:00 2001 From: Jack Ha Date: Mon, 19 Feb 2018 09:14:04 +0100 Subject: [PATCH 07/28] Log markup --- plugins/CuraEngineBackend/CuraEngineBackend.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/CuraEngineBackend/CuraEngineBackend.py b/plugins/CuraEngineBackend/CuraEngineBackend.py index 1c275d6d5b..79fa12114f 100755 --- a/plugins/CuraEngineBackend/CuraEngineBackend.py +++ b/plugins/CuraEngineBackend/CuraEngineBackend.py @@ -192,7 +192,7 @@ class CuraEngineBackend(QObject, Backend): ## Perform a slice of the scene. def slice(self): - Logger.log("d", "starting to slice!") + Logger.log("d", "Starting to slice...") self._slice_start_time = time() if not self._build_plates_to_be_sliced: self.processingProgress.emit(1.0) @@ -200,7 +200,7 @@ class CuraEngineBackend(QObject, Backend): return if self._process_layers_job: - Logger.log("d", " ## Process layers job still busy, trying later") + Logger.log("d", "Process layers job still busy, trying later.") return if not hasattr(self._scene, "gcode_dict"): From 438f11b2e6eb63c5b76a009ac86f49cfad1a0cbc Mon Sep 17 00:00:00 2001 From: Ian Paschal Date: Mon, 19 Feb 2018 14:09:02 +0100 Subject: [PATCH 08/28] CURA-4965 Custom / Duplicated Material's Build Plate Temperature returns to default Holy hell that took a long time to figure out. Thanks @diegopradogesto! --- cura/Settings/MaterialSettingsVisibilityHandler.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/Settings/MaterialSettingsVisibilityHandler.py b/cura/Settings/MaterialSettingsVisibilityHandler.py index 5b6050d2c0..530284991d 100644 --- a/cura/Settings/MaterialSettingsVisibilityHandler.py +++ b/cura/Settings/MaterialSettingsVisibilityHandler.py @@ -9,7 +9,7 @@ class MaterialSettingsVisibilityHandler(UM.Settings.Models.SettingVisibilityHand material_settings = { "default_material_print_temperature", - "material_bed_temperature", + "default_material_bed_temperature", "material_standby_temperature", #"material_flow_temp_graph", "cool_fan_speed", From 1afe2668f77c6ee20d2877ba70f17a07a001b6a1 Mon Sep 17 00:00:00 2001 From: Aleksei S Date: Mon, 19 Feb 2018 15:04:08 +0100 Subject: [PATCH 09/28] Fix: Extreme small model was not automatically scaled. --- cura/CuraApplication.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py index 07b3aab60c..90c7dbb75e 100755 --- a/cura/CuraApplication.py +++ b/cura/CuraApplication.py @@ -1547,8 +1547,16 @@ class CuraApplication(QtApplication): for original_node in nodes: # Create a CuraSceneNode just if the original node is not that type - node = original_node if isinstance(original_node, CuraSceneNode) else CuraSceneNode() - node.setMeshData(original_node.getMeshData()) + if isinstance(original_node, CuraSceneNode): + node = original_node + else: + node = CuraSceneNode() + node.setMeshData(original_node.getMeshData()) + + #Setting meshdata does not apply scaling. + if(original_node.getScale() != Vector(1.0, 1.0, 1.0)): + node.scale(original_node.getScale()) + node.setSelectable(True) node.setName(os.path.basename(filename)) From 51062a4784ee9901941f95c22d42f6a7ee7bbfdb Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 15 Feb 2018 16:39:37 +0100 Subject: [PATCH 10/28] Add a button to open the configuration folder. --- cura/CrashHandler.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/cura/CrashHandler.py b/cura/CrashHandler.py index 24df54b74e..d74b48a53a 100644 --- a/cura/CrashHandler.py +++ b/cura/CrashHandler.py @@ -14,8 +14,9 @@ import urllib.request import urllib.error import shutil -from PyQt5.QtCore import QT_VERSION_STR, PYQT_VERSION_STR, QFile +from PyQt5.QtCore import QT_VERSION_STR, PYQT_VERSION_STR, QUrl from PyQt5.QtWidgets import QDialog, QDialogButtonBox, QVBoxLayout, QLabel, QTextEdit, QGroupBox, QCheckBox, QPushButton +from PyQt5.QtGui import QDesktopServices from UM.Application import Application from UM.Logger import Logger @@ -91,7 +92,7 @@ class CrashHandler: label = QLabel() label.setText(catalog.i18nc("@label crash message", """

A fatal error has occurred.

Unfortunately, Cura encountered an unrecoverable error during start up. It was possibly caused by some incorrect configuration files. We suggest to backup and reset your configuration.

-

Your backup can be found in your Configuration folder.

+

Backups can be found in the configuration folder.

Please send us this Crash Report to fix the problem.

""")) label.setWordWrap(True) @@ -105,8 +106,13 @@ class CrashHandler: show_details_button.setMaximumWidth(200) show_details_button.clicked.connect(self._showDetailedReport) + show_configuration_folder_button = QPushButton(catalog.i18nc("@action:button", "Show configuration folder"), dialog) + show_configuration_folder_button.setMaximumWidth(200) + show_configuration_folder_button.clicked.connect(self._showConfigurationFolder) + layout.addWidget(self._send_report_checkbox) layout.addWidget(show_details_button) + layout.addWidget(show_configuration_folder_button) # "backup and start clean" and "close" buttons buttons = QDialogButtonBox() @@ -182,6 +188,10 @@ class CrashHandler: self.early_crash_dialog.close() + def _showConfigurationFolder(self): + path = Resources.getConfigStoragePath(); + QDesktopServices.openUrl(QUrl.fromLocalFile( path )) + def _showDetailedReport(self): self.dialog.exec_() From 3cf16fd34b3b26b442f5aa8142660460787855ef Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Mon, 19 Feb 2018 15:37:08 +0100 Subject: [PATCH 11/28] Removed sending of material profiles. It takes a godawfull long time and the machine ignores most of them anyway. --- plugins/UM3NetworkPrinting/LegacyUM3OutputDevice.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/plugins/UM3NetworkPrinting/LegacyUM3OutputDevice.py b/plugins/UM3NetworkPrinting/LegacyUM3OutputDevice.py index 647a7f822c..87d4b9ec0a 100644 --- a/plugins/UM3NetworkPrinting/LegacyUM3OutputDevice.py +++ b/plugins/UM3NetworkPrinting/LegacyUM3OutputDevice.py @@ -419,8 +419,6 @@ class LegacyUM3OutputDevice(NetworkedPrinterOutputDevice): self._authentication_failed_message.show() elif status_code == 200: self.setAuthenticationState(AuthState.Authenticated) - # Now we know for sure that we are authenticated, send the material profiles to the machine. - self._sendMaterialProfiles() def _checkAuthentication(self): Logger.log("d", "Checking if authentication is correct for id %s and key %s", self._authentication_id, self._getSafeAuthKey()) From 1d4d592d454d202512441ea8b6bb07b55dab3bfa Mon Sep 17 00:00:00 2001 From: Ian Paschal Date: Mon, 19 Feb 2018 16:52:32 +0100 Subject: [PATCH 12/28] CURA-4790 Added weight properties to theme --- resources/themes/cura-light/theme.json | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/resources/themes/cura-light/theme.json b/resources/themes/cura-light/theme.json index b7ab0000de..8eb874334a 100644 --- a/resources/themes/cura-light/theme.json +++ b/resources/themes/cura-light/theme.json @@ -6,47 +6,57 @@ "fonts": { "large": { "size": 1.35, + "weight": 63, "bold": true, "family": "Noto Sans" }, "large_nonbold": { "size": 1.35, + "weight": 25, "family": "Noto Sans" }, "default": { "size": 1.0, + "weight": 25, "family": "Noto Sans" }, "default_bold": { "size": 1.0, + "weight": 63, "bold": true, "family": "Noto Sans" }, "default_italic": { "size": 1.15, + "weight": 25, "italic": true, "family": "Noto Sans" }, "small": { "size": 1.0, + "weight": 63, "bold": true, "family": "Noto Sans" }, "very_small": { "size": 1.0, + "weight": 25, "family": "Noto Sans" }, "button_tooltip": { "size": 1.0, + "weight": 25, "family": "Noto Sans" }, "setting_category": { "size": 1.15, + "weight": 63, "bold": true, "family": "Noto Sans" }, "action_button": { "size": 1.15, + "weight": 25, "bold": true, "family": "Noto Sans" } From 6a4f5192386f3064a0915eeaa2bfc1b3150f0ae9 Mon Sep 17 00:00:00 2001 From: Diego Prado Gesto Date: Tue, 20 Feb 2018 09:30:05 +0100 Subject: [PATCH 13/28] Revert "CURA-4946 Add the quality_definition metadata entry to the gcode so when" This reverts commit 744313af273ed34a5796d3970c3915f68abaedc7. --- cura/Settings/CuraContainerRegistry.py | 17 +++++------------ plugins/GCodeWriter/GCodeWriter.py | 5 ----- 2 files changed, 5 insertions(+), 17 deletions(-) diff --git a/cura/Settings/CuraContainerRegistry.py b/cura/Settings/CuraContainerRegistry.py index be5a10e293..e26dab7399 100644 --- a/cura/Settings/CuraContainerRegistry.py +++ b/cura/Settings/CuraContainerRegistry.py @@ -228,23 +228,16 @@ class CuraContainerRegistry(ContainerRegistry): Logger.log("e", "Incorrect profile [%s]. Could not find global profile", file_name) return { "status": "error", "message": catalog.i18nc("@info:status Don't translate the XML tags or !", "This profile {0} contains incorrect data, could not import it.", file_name)} - - # In a profile we can have the quality_definition metadata, but if not, we get the definition - profile_definition = global_profile.getMetaDataEntry("quality_definition") - if not profile_definition: - profile_definition = global_profile.getMetaDataEntry("definition") - - # The expected machine definition may be the quality_definition if defined or the current definition id - expected_machine_definition = None + profile_definition = global_profile.getMetaDataEntry("definition") + expected_machine_definition = "fdmprinter" if parseBool(global_container_stack.getMetaDataEntry("has_machine_quality", "False")): expected_machine_definition = global_container_stack.getMetaDataEntry("quality_definition") - if not expected_machine_definition: - expected_machine_definition = global_container_stack.definition.getId() - + if not expected_machine_definition: + expected_machine_definition = global_container_stack.definition.getId() if expected_machine_definition is not None and profile_definition is not None and profile_definition != expected_machine_definition: Logger.log("e", "Profile [%s] is for machine [%s] but the current active machine is [%s]. Will not import the profile", file_name, profile_definition, expected_machine_definition) return { "status": "error", - "message": catalog.i18nc("@info:status Don't translate the XML tags or !", "The machine defined in profile {0} ({1}) doesn't match with your current machine ({2}), could not import it.", file_name, profile_definition, expected_machine_definition)} + "message": catalog.i18nc("@info:status Don't translate the XML tags or !", "The machine defined in profile {0} doesn't match with your current machine, could not import it.", file_name)} name_seed = os.path.splitext(os.path.basename(file_name))[0] new_name = self.uniqueName(name_seed) diff --git a/plugins/GCodeWriter/GCodeWriter.py b/plugins/GCodeWriter/GCodeWriter.py index 368942fd08..d06332bec1 100644 --- a/plugins/GCodeWriter/GCodeWriter.py +++ b/plugins/GCodeWriter/GCodeWriter.py @@ -5,7 +5,6 @@ from UM.Mesh.MeshWriter import MeshWriter from UM.Logger import Logger from UM.Application import Application from UM.Settings.InstanceContainer import InstanceContainer -from UM.Util import parseBool from cura.Settings.ExtruderManager import ExtruderManager @@ -121,10 +120,6 @@ class GCodeWriter(MeshWriter): if flat_global_container.getMetaDataEntry("quality_type", None) is None: flat_global_container.addMetaDataEntry("quality_type", stack.quality.getMetaDataEntry("quality_type", "normal")) - # Ensure that quality_definition is set. (Can happen if we have empty quality changes). - if parseBool(stack.getMetaDataEntry("has_machine_quality", "False")): - flat_global_container.addMetaDataEntry("quality_definition", stack.getMetaDataEntry("quality_definition")) - serialized = flat_global_container.serialize() data = {"global_quality": serialized} From c7f8044a3289175e0003d602680080f0275e3d25 Mon Sep 17 00:00:00 2001 From: Ian Paschal Date: Tue, 20 Feb 2018 10:46:01 +0100 Subject: [PATCH 14/28] CURA-4790 Changed light weights back to normal --- resources/themes/cura-light/theme.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/resources/themes/cura-light/theme.json b/resources/themes/cura-light/theme.json index 8eb874334a..1b5ddfe141 100644 --- a/resources/themes/cura-light/theme.json +++ b/resources/themes/cura-light/theme.json @@ -12,12 +12,12 @@ }, "large_nonbold": { "size": 1.35, - "weight": 25, + "weight": 50, "family": "Noto Sans" }, "default": { "size": 1.0, - "weight": 25, + "weight": 50, "family": "Noto Sans" }, "default_bold": { @@ -28,7 +28,7 @@ }, "default_italic": { "size": 1.15, - "weight": 25, + "weight": 50, "italic": true, "family": "Noto Sans" }, @@ -40,12 +40,12 @@ }, "very_small": { "size": 1.0, - "weight": 25, + "weight": 50, "family": "Noto Sans" }, "button_tooltip": { "size": 1.0, - "weight": 25, + "weight": 50, "family": "Noto Sans" }, "setting_category": { @@ -56,7 +56,7 @@ }, "action_button": { "size": 1.15, - "weight": 25, + "weight": 50, "bold": true, "family": "Noto Sans" } From 1bdd50e17f0c76beb10fcaa2f3efbcbb1e61f846 Mon Sep 17 00:00:00 2001 From: Ian Paschal Date: Tue, 20 Feb 2018 11:04:23 +0100 Subject: [PATCH 15/28] CURA-4790 Removed "bold" property --- resources/themes/cura-light/theme.json | 5 ----- 1 file changed, 5 deletions(-) diff --git a/resources/themes/cura-light/theme.json b/resources/themes/cura-light/theme.json index 1b5ddfe141..8c8e6d1c47 100644 --- a/resources/themes/cura-light/theme.json +++ b/resources/themes/cura-light/theme.json @@ -7,7 +7,6 @@ "large": { "size": 1.35, "weight": 63, - "bold": true, "family": "Noto Sans" }, "large_nonbold": { @@ -23,7 +22,6 @@ "default_bold": { "size": 1.0, "weight": 63, - "bold": true, "family": "Noto Sans" }, "default_italic": { @@ -35,7 +33,6 @@ "small": { "size": 1.0, "weight": 63, - "bold": true, "family": "Noto Sans" }, "very_small": { @@ -51,13 +48,11 @@ "setting_category": { "size": 1.15, "weight": 63, - "bold": true, "family": "Noto Sans" }, "action_button": { "size": 1.15, "weight": 50, - "bold": true, "family": "Noto Sans" } }, From 6af5a5d4bc9a419e99437d793e2f496b8b74c67a Mon Sep 17 00:00:00 2001 From: Diego Prado Gesto Date: Tue, 20 Feb 2018 11:11:21 +0100 Subject: [PATCH 16/28] CURA-4946 When storing the gcode profile, the definition must be the quality definition if the printer has_machine_quality. Otherwise the fdmprinter definition must be used as a fallback. If there is no quality_definition then the printer definition is use. --- cura/Settings/CuraContainerRegistry.py | 2 +- plugins/GCodeWriter/GCodeWriter.py | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/cura/Settings/CuraContainerRegistry.py b/cura/Settings/CuraContainerRegistry.py index e26dab7399..540f0b3475 100644 --- a/cura/Settings/CuraContainerRegistry.py +++ b/cura/Settings/CuraContainerRegistry.py @@ -237,7 +237,7 @@ class CuraContainerRegistry(ContainerRegistry): if expected_machine_definition is not None and profile_definition is not None and profile_definition != expected_machine_definition: Logger.log("e", "Profile [%s] is for machine [%s] but the current active machine is [%s]. Will not import the profile", file_name, profile_definition, expected_machine_definition) return { "status": "error", - "message": catalog.i18nc("@info:status Don't translate the XML tags or !", "The machine defined in profile {0} doesn't match with your current machine, could not import it.", file_name)} + "message": catalog.i18nc("@info:status Don't translate the XML tags or !", "The machine defined in profile {0} ({1}) doesn't match with your current machine ({2}), could not import it.", file_name, profile_definition, expected_machine_definition)} name_seed = os.path.splitext(os.path.basename(file_name))[0] new_name = self.uniqueName(name_seed) diff --git a/plugins/GCodeWriter/GCodeWriter.py b/plugins/GCodeWriter/GCodeWriter.py index d06332bec1..7ef8c494ba 100644 --- a/plugins/GCodeWriter/GCodeWriter.py +++ b/plugins/GCodeWriter/GCodeWriter.py @@ -5,6 +5,7 @@ from UM.Mesh.MeshWriter import MeshWriter from UM.Logger import Logger from UM.Application import Application from UM.Settings.InstanceContainer import InstanceContainer +from UM.Util import parseBool from cura.Settings.ExtruderManager import ExtruderManager @@ -120,6 +121,14 @@ class GCodeWriter(MeshWriter): if flat_global_container.getMetaDataEntry("quality_type", None) is None: flat_global_container.addMetaDataEntry("quality_type", stack.quality.getMetaDataEntry("quality_type", "normal")) + # Change the default defintion + default_machine_definition = "fdmprinter" + if parseBool(stack.getMetaDataEntry("has_machine_quality", "False")): + default_machine_definition = stack.getMetaDataEntry("quality_definition") + if not default_machine_definition: + default_machine_definition = stack.definition.getId() + flat_global_container.setMetaDataEntry("definition", default_machine_definition) + serialized = flat_global_container.serialize() data = {"global_quality": serialized} @@ -140,6 +149,15 @@ class GCodeWriter(MeshWriter): # Ensure that quality_type is set. (Can happen if we have empty quality changes). if flat_extruder_quality.getMetaDataEntry("quality_type", None) is None: flat_extruder_quality.addMetaDataEntry("quality_type", extruder.quality.getMetaDataEntry("quality_type", "normal")) + + # Change the default defintion + default_extruder_definition = "fdmextruder" + if parseBool(stack.getMetaDataEntry("has_machine_quality", "False")): + default_extruder_definition = extruder.getMetaDataEntry("quality_definition") + if not default_extruder_definition: + default_extruder_definition = extruder.definition.getId() + flat_extruder_quality.setMetaDataEntry("definition", default_extruder_definition) + extruder_serialized = flat_extruder_quality.serialize() data.setdefault("extruder_quality", []).append(extruder_serialized) From f27685e6ac4ca5c4536bae656e8cb98e51cff1cc Mon Sep 17 00:00:00 2001 From: Diego Prado Gesto Date: Tue, 20 Feb 2018 13:56:30 +0100 Subject: [PATCH 17/28] CURA-4017 Enable the setting zig_zagiffy_infill for the grid and triangular patterns --- resources/definitions/fdmprinter.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 80bb9b19b9..b1f79dcbb6 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1528,7 +1528,7 @@ "description": "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used.", "type": "bool", "default_value": true, - "enabled": "infill_pattern == 'cross' or infill_pattern == 'cross_3d'", + "enabled": "infill_pattern == 'cross' or infill_pattern == 'cross_3d' or infill_pattern == 'grid' or infill_pattern == 'triangles'", "settable_per_mesh": true }, "infill_angles": From 767539b80b22207c4a9356b7bc430575a2c450f8 Mon Sep 17 00:00:00 2001 From: Ian Paschal Date: Tue, 20 Feb 2018 10:46:01 +0100 Subject: [PATCH 18/28] CURA-4790 Changed light weights back to normal --- resources/themes/cura-light/theme.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/resources/themes/cura-light/theme.json b/resources/themes/cura-light/theme.json index 8eb874334a..1b5ddfe141 100644 --- a/resources/themes/cura-light/theme.json +++ b/resources/themes/cura-light/theme.json @@ -12,12 +12,12 @@ }, "large_nonbold": { "size": 1.35, - "weight": 25, + "weight": 50, "family": "Noto Sans" }, "default": { "size": 1.0, - "weight": 25, + "weight": 50, "family": "Noto Sans" }, "default_bold": { @@ -28,7 +28,7 @@ }, "default_italic": { "size": 1.15, - "weight": 25, + "weight": 50, "italic": true, "family": "Noto Sans" }, @@ -40,12 +40,12 @@ }, "very_small": { "size": 1.0, - "weight": 25, + "weight": 50, "family": "Noto Sans" }, "button_tooltip": { "size": 1.0, - "weight": 25, + "weight": 50, "family": "Noto Sans" }, "setting_category": { @@ -56,7 +56,7 @@ }, "action_button": { "size": 1.15, - "weight": 25, + "weight": 50, "bold": true, "family": "Noto Sans" } From 03265cb90a5eec0a0fb0fd827371e9d5d2b1993e Mon Sep 17 00:00:00 2001 From: Ian Paschal Date: Tue, 20 Feb 2018 11:04:23 +0100 Subject: [PATCH 19/28] CURA-4790 Removed "bold" property --- resources/themes/cura-light/theme.json | 5 ----- 1 file changed, 5 deletions(-) diff --git a/resources/themes/cura-light/theme.json b/resources/themes/cura-light/theme.json index 1b5ddfe141..8c8e6d1c47 100644 --- a/resources/themes/cura-light/theme.json +++ b/resources/themes/cura-light/theme.json @@ -7,7 +7,6 @@ "large": { "size": 1.35, "weight": 63, - "bold": true, "family": "Noto Sans" }, "large_nonbold": { @@ -23,7 +22,6 @@ "default_bold": { "size": 1.0, "weight": 63, - "bold": true, "family": "Noto Sans" }, "default_italic": { @@ -35,7 +33,6 @@ "small": { "size": 1.0, "weight": 63, - "bold": true, "family": "Noto Sans" }, "very_small": { @@ -51,13 +48,11 @@ "setting_category": { "size": 1.15, "weight": 63, - "bold": true, "family": "Noto Sans" }, "action_button": { "size": 1.15, "weight": 50, - "bold": true, "family": "Noto Sans" } }, From 31ad0dd56c0f55b7d5555085e6890e9972369e1c Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 21 Feb 2018 08:43:39 +0100 Subject: [PATCH 20/28] Allow zig-zaggifying infill for patterns other than Cross as well It is now supported for any linear-based infill except zigzag (which has its own algorithm; that's a TODO). Contributes to issue CURA-4017. --- resources/definitions/fdmprinter.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index b1f79dcbb6..6cfebf3dad 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1528,7 +1528,7 @@ "description": "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used.", "type": "bool", "default_value": true, - "enabled": "infill_pattern == 'cross' or infill_pattern == 'cross_3d' or infill_pattern == 'grid' or infill_pattern == 'triangles'", + "enabled": "infill_pattern == 'grid' || infill_pattern == 'triangles' || infill_pattern == 'trihexagon' || infill_pattern == 'cubic' || infill_pattern == 'tetrahedral' || infill_pattern == 'quarter_cubic' || infill_pattern == 'cross' || infill_pattern == 'cross_3d'", "settable_per_mesh": true }, "infill_angles": From f3aeb01af0adfedca30941b1c4fb10306c5aa466 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 21 Feb 2018 08:45:08 +0100 Subject: [PATCH 21/28] Only enable Connect Infill Lines by default for Cross We don't want to change the default behaviour yet. Contributes to issue CURA-4017. --- resources/definitions/fdmprinter.def.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 6cfebf3dad..b5b7cd1c5d 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1527,7 +1527,8 @@ "label": "Connect Infill Lines", "description": "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used.", "type": "bool", - "default_value": true, + "default_value": false, + "value": "infill_pattern == 'cross' || infill_pattern == 'cross_3d'", "enabled": "infill_pattern == 'grid' || infill_pattern == 'triangles' || infill_pattern == 'trihexagon' || infill_pattern == 'cubic' || infill_pattern == 'tetrahedral' || infill_pattern == 'quarter_cubic' || infill_pattern == 'cross' || infill_pattern == 'cross_3d'", "settable_per_mesh": true }, From 6110b83844af70ffc6fc67c852ca952baa7b692f Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 21 Feb 2018 09:51:14 +0100 Subject: [PATCH 22/28] Use 'or' instead of '||' for Python code Oops. Contributes to issue CURA-4017. --- resources/definitions/fdmprinter.def.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index b5b7cd1c5d..c8045ebce9 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1528,8 +1528,8 @@ "description": "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used.", "type": "bool", "default_value": false, - "value": "infill_pattern == 'cross' || infill_pattern == 'cross_3d'", - "enabled": "infill_pattern == 'grid' || infill_pattern == 'triangles' || infill_pattern == 'trihexagon' || infill_pattern == 'cubic' || infill_pattern == 'tetrahedral' || infill_pattern == 'quarter_cubic' || infill_pattern == 'cross' || infill_pattern == 'cross_3d'", + "value": "infill_pattern == 'cross' or infill_pattern == 'cross_3d'", + "enabled": "infill_pattern == 'grid' or infill_pattern == 'triangles' or infill_pattern == 'trihexagon' or infill_pattern == 'cubic' or infill_pattern == 'tetrahedral' or infill_pattern == 'quarter_cubic' or infill_pattern == 'cross' or infill_pattern == 'cross_3d'", "settable_per_mesh": true }, "infill_angles": From fcff00e9daa3d056a65a261b01ace85e760e6271 Mon Sep 17 00:00:00 2001 From: Ian Paschal Date: Wed, 21 Feb 2018 14:42:28 +0100 Subject: [PATCH 23/28] Remove plugins from preferences since they're now managed via the plugin browser --- resources/qml/Cura.qml | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index f474d93900..799797f9f9 100644 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -518,6 +518,9 @@ UM.MainWindow insertPage(4, catalog.i18nc("@title:tab", "Profiles"), Qt.resolvedUrl("Preferences/ProfilesPage.qml")); + // Remove plug-ins page because we will use the shiny new plugin browser: + removePage(5); + //Force refresh setPage(0); } @@ -629,17 +632,6 @@ UM.MainWindow } } - // show the installed plugins page in the preferences dialog - Connections - { - target: Cura.Actions.configurePlugins - onTriggered: - { - preferences.visible = true - preferences.setPage(5) - } - } - UM.ExtensionModel { id: curaExtensions } From 98a05ae483b3f54817cc34432b8e6ebde3c382bb Mon Sep 17 00:00:00 2001 From: Ian Paschal Date: Wed, 21 Feb 2018 14:44:27 +0100 Subject: [PATCH 24/28] Fixed typo ("coping" -> "copying") --- setup.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/setup.py b/setup.py index a91ba535d5..0d78f44ddc 100644 --- a/setup.py +++ b/setup.py @@ -51,24 +51,24 @@ setup(name="Cura", #console=[{"script": "cura_app.py"}], options={"py2exe": {"skip_archive": False, "includes": includes}}) -print("Coping Cura plugins.") +print("Copying Cura plugins.") shutil.copytree(os.path.dirname(UM.__file__) + "/../plugins", "dist/plugins", ignore = shutil.ignore_patterns("ConsoleLogger", "OBJWriter", "MLPWriter", "MLPReader")) for path in os.listdir("plugins"): copytree("plugins/" + path, "dist/plugins/" + path) -print("Coping resources.") +print("Copying resources.") copytree(os.path.dirname(UM.__file__) + "/../resources", "dist/resources") copytree("resources", "dist/resources") -print("Coping Uranium QML.") +print("Copying Uranium QML.") shutil.copytree(os.path.dirname(UM.__file__) + "/Qt/qml/UM", "dist/qml/UM") for site_package in site.getsitepackages(): qt_origin_path = os.path.join(site_package, "PyQt5") if os.path.isdir(qt_origin_path): - print("Coping PyQt5 plugins from: %s" % qt_origin_path) + print("Copying PyQt5 plugins from: %s" % qt_origin_path) shutil.copytree(os.path.join(qt_origin_path, "plugins"), "dist/PyQt5/plugins") - print("Coping PyQt5 QtQuick from: %s" % qt_origin_path) + print("Copying PyQt5 QtQuick from: %s" % qt_origin_path) shutil.copytree(os.path.join(qt_origin_path, "qml/QtQuick"), "dist/qml/QtQuick") shutil.copytree(os.path.join(qt_origin_path, "qml/QtQuick.2"), "dist/qml/QtQuick.2") - print("Coping PyQt5 svg library from: %s" % qt_origin_path) + print("Copying PyQt5 svg library from: %s" % qt_origin_path) shutil.copy(os.path.join(qt_origin_path, "Qt5Svg.dll"), "dist/Qt5Svg.dll") print("Copying Angle libraries from %s" % qt_origin_path) shutil.copy(os.path.join(qt_origin_path, "libEGL.dll"), "dist/libEGL.dll") From 3ed9ac1e83d2cad797a779c8b3d971902f1d40ae Mon Sep 17 00:00:00 2001 From: Aleksei S Date: Wed, 21 Feb 2018 14:54:05 +0100 Subject: [PATCH 25/28] Fix: Monitor icon state was not updated properly CURA-4977 --- plugins/MonitorStage/MonitorStage.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/plugins/MonitorStage/MonitorStage.py b/plugins/MonitorStage/MonitorStage.py index 1a999ca896..1a1d37cbdf 100644 --- a/plugins/MonitorStage/MonitorStage.py +++ b/plugins/MonitorStage/MonitorStage.py @@ -69,9 +69,11 @@ class MonitorStage(CuraStage): self._printer_output_device.connectionStateChanged.connect(self._updateIconSource) self._setActivePrinter(self._printer_output_device.activePrinter) - # Force an update of the icon source - self._updateIconSource() + # Force an update of the icon source + self._updateIconSource() except IndexError: + #If index error occurs, then the icon on monitor button also should be updated + self._updateIconSource() pass def _onEngineCreated(self): From dba748bd8a4aced9428d870b0684b686c435bd86 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Thu, 22 Feb 2018 16:43:50 +0100 Subject: [PATCH 26/28] Add new setting for zig-zaggifying support You can now also use the zigzag type patterns for support. Contributes to issue CURA-4017. --- resources/definitions/fdmprinter.def.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index c8045ebce9..7eba95f2fc 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -3572,6 +3572,18 @@ "settable_per_mesh": false, "settable_per_extruder": true }, + "zig_zaggify_support": + { + "label": "Connect Support Lines", + "description": "Connect the ends of the support lines together. Enabling this setting can make your support more sturdy and reduce underextrusion, but it will cost more material.", + "type": "bool", + "default_value": false, + "value": "support_pattern == 'cross'", + "enabled": "support_pattern == 'grid' or support_pattern == 'triangles' or support_pattern == 'cross'", + "limit_to_extruder": "support_infill_extruder_nr", + "settable_per_mesh": false, + "settable_per_extruder": true + }, "support_connect_zigzags": { "label": "Connect Support ZigZags", From fc9b2c35297fa8615bf338ebe16db9dea398d22a Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Thu, 22 Feb 2018 16:44:39 +0100 Subject: [PATCH 27/28] Limit infill zigzaggify setting to infill extruder Let's give it the same properties as the infill pattern setting. Contributes to issue CURA-4017. --- resources/definitions/fdmprinter.def.json | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 7eba95f2fc..4b14500360 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1530,6 +1530,7 @@ "default_value": false, "value": "infill_pattern == 'cross' or infill_pattern == 'cross_3d'", "enabled": "infill_pattern == 'grid' or infill_pattern == 'triangles' or infill_pattern == 'trihexagon' or infill_pattern == 'cubic' or infill_pattern == 'tetrahedral' or infill_pattern == 'quarter_cubic' or infill_pattern == 'cross' or infill_pattern == 'cross_3d'", + "limit_to_extruder": "infill_extruder_nr", "settable_per_mesh": true }, "infill_angles": From 94ca4fffe3c89684a1ebe6b54c8354a04903e738 Mon Sep 17 00:00:00 2001 From: Diego Prado Gesto Date: Thu, 22 Feb 2018 16:46:48 +0100 Subject: [PATCH 28/28] CURA-4946 In the gcode just store the default machine definition --- plugins/GCodeWriter/GCodeWriter.py | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/plugins/GCodeWriter/GCodeWriter.py b/plugins/GCodeWriter/GCodeWriter.py index 7ef8c494ba..225800454f 100644 --- a/plugins/GCodeWriter/GCodeWriter.py +++ b/plugins/GCodeWriter/GCodeWriter.py @@ -151,12 +151,7 @@ class GCodeWriter(MeshWriter): flat_extruder_quality.addMetaDataEntry("quality_type", extruder.quality.getMetaDataEntry("quality_type", "normal")) # Change the default defintion - default_extruder_definition = "fdmextruder" - if parseBool(stack.getMetaDataEntry("has_machine_quality", "False")): - default_extruder_definition = extruder.getMetaDataEntry("quality_definition") - if not default_extruder_definition: - default_extruder_definition = extruder.definition.getId() - flat_extruder_quality.setMetaDataEntry("definition", default_extruder_definition) + flat_extruder_quality.setMetaDataEntry("definition", default_machine_definition) extruder_serialized = flat_extruder_quality.serialize() data.setdefault("extruder_quality", []).append(extruder_serialized)