From be6bfdd4af56c2ed9f561f21b4bce19b86ab873b Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 8 Sep 2016 13:58:13 +0200 Subject: [PATCH 01/13] Add a "linked" icon to settings that have "global_inherits_stack" set --- resources/qml/Settings/SettingItem.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/qml/Settings/SettingItem.qml b/resources/qml/Settings/SettingItem.qml index ed16b722dd..cdc557a089 100644 --- a/resources/qml/Settings/SettingItem.qml +++ b/resources/qml/Settings/SettingItem.qml @@ -138,7 +138,7 @@ Item { { id: linkedSettingIcon; - visible: Cura.MachineManager.activeStackId != Cura.MachineManager.activeMachineId && !definition.settable_per_extruder && base.showLinkedSettingIcon + visible: Cura.MachineManager.activeStackId != Cura.MachineManager.activeMachineId && (!definition.settable_per_extruder || definition.global_inherits_stack != "-1") && base.showLinkedSettingIcon height: parent.height; width: height; From 46942d7cf23e32dcdf5dbf00440aa781061f4f65 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 8 Sep 2016 14:02:44 +0200 Subject: [PATCH 02/13] Remove "infill mesh" as a standard visible setting --- cura/CuraApplication.py | 1 - 1 file changed, 1 deletion(-) diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py index 32c5191c7c..14e4cd9bf1 100644 --- a/cura/CuraApplication.py +++ b/cura/CuraApplication.py @@ -253,7 +253,6 @@ class CuraApplication(QtApplication): meshfix blackmagic print_sequence - infill_mesh experimental """.replace("\n", ";").replace(" ", "")) From 4de78db87a6d6396590079486b396ae66b522538 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 8 Sep 2016 14:04:58 +0200 Subject: [PATCH 03/13] Revert "Remove "infill mesh" as a standard visible setting" This reverts commit 46942d7cf23e32dcdf5dbf00440aa781061f4f65. It was not my decision to make --- cura/CuraApplication.py | 1 + plugins/3MFReader/ThreeMFReader.py | 2 +- plugins/PerObjectSettingsTool/PerObjectSettingsTool.py | 5 ++++- plugins/SolidView/SolidView.py | 2 ++ 4 files changed, 8 insertions(+), 2 deletions(-) diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py index 14e4cd9bf1..32c5191c7c 100644 --- a/cura/CuraApplication.py +++ b/cura/CuraApplication.py @@ -253,6 +253,7 @@ class CuraApplication(QtApplication): meshfix blackmagic print_sequence + infill_mesh experimental """.replace("\n", ";").replace(" ", "")) diff --git a/plugins/3MFReader/ThreeMFReader.py b/plugins/3MFReader/ThreeMFReader.py index ea3ca30118..89fa5e3e88 100644 --- a/plugins/3MFReader/ThreeMFReader.py +++ b/plugins/3MFReader/ThreeMFReader.py @@ -71,7 +71,7 @@ class ThreeMFReader(MeshReader): rotation.setByRotationAxis(-0.5 * math.pi, Vector(1, 0, 0)) # TODO: We currently do not check for normals and simply recalculate them. - mesh_builder.calculateNormals() + mesh_builder.calculateNormals(flip = True) mesh_builder.setFileName(file_name) node.setMeshData(mesh_builder.build().getTransformed(rotation)) node.setSelectable(True) diff --git a/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py b/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py index 5c52c89416..953f60a33d 100644 --- a/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py +++ b/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py @@ -77,7 +77,10 @@ class PerObjectSettingsTool(Tool): if not self._multi_extrusion: default_stack_id = global_container_stack.getId() else: - default_stack_id = ExtruderManager.getInstance().getExtruderStack(0).getId() + default_stack = ExtruderManager.getInstance().getExtruderStack(0) + if default_stack: + default_stack_id = default_stack.getId() + else: default_stack_id = global_container_stack.getId() root_node = Application.getInstance().getController().getScene().getRoot() for node in DepthFirstIterator(root_node): diff --git a/plugins/SolidView/SolidView.py b/plugins/SolidView/SolidView.py index 2d017f829f..fd9f106334 100644 --- a/plugins/SolidView/SolidView.py +++ b/plugins/SolidView/SolidView.py @@ -51,6 +51,8 @@ class SolidView(View): if multi_extrusion: support_extruder_nr = global_container_stack.getProperty("support_extruder_nr", "value") support_angle_stack = ExtruderManager.getInstance().getExtruderStack(support_extruder_nr) + if not support_angle_stack: + support_angle_stack = global_container_stack else: support_angle_stack = global_container_stack From 8a8b55800b905dd479848bf8a4f61a0a6d7ebd1b Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Thu, 8 Sep 2016 14:15:00 +0200 Subject: [PATCH 04/13] Duplicating materialContainers should now duplicate all related material containers CURA-2242 --- cura/CuraApplication.py | 2 ++ cura/Settings/ContainerManager.py | 35 +++++++++++++++++++++ resources/qml/Preferences/MaterialsPage.qml | 16 +++------- 3 files changed, 42 insertions(+), 11 deletions(-) diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py index 32c5191c7c..7651cad930 100644 --- a/cura/CuraApplication.py +++ b/cura/CuraApplication.py @@ -322,6 +322,7 @@ class CuraApplication(QtApplication): path = Resources.getStoragePath(self.ResourceTypes.VariantInstanceContainer, file_name) if path: + instance.setPath(path) with SaveFile(path, "wt", -1, "utf-8") as f: f.write(data) @@ -346,6 +347,7 @@ class CuraApplication(QtApplication): elif stack_type == "extruder_train": path = Resources.getStoragePath(self.ResourceTypes.ExtruderStack, file_name) if path: + stack.setPath(path) with SaveFile(path, "wt", -1, "utf-8") as f: f.write(data) diff --git a/cura/Settings/ContainerManager.py b/cura/Settings/ContainerManager.py index c082c64da1..27a9bd90dd 100644 --- a/cura/Settings/ContainerManager.py +++ b/cura/Settings/ContainerManager.py @@ -167,6 +167,19 @@ class ContainerManager(QObject): return True + @pyqtSlot(str, str, result=str) + def getContainerMetaDataEntry(self, container_id, entry_name): + containers = self._container_registry.findContainers(None, id=container_id) + if not containers: + UM.Logger.log("w", "Could not get metadata of container %s because it was not found.", container_id) + return False + + result = containers[0].getMetaDataEntry(entry_name) + if result: + return result + else: + return "" + ## Set a metadata entry of the specified container. # # This will set the specified entry of the container's metadata to the specified @@ -577,6 +590,28 @@ class ContainerManager(QObject): return new_name + @pyqtSlot(str, result = str) + def duplicateMaterial(self, material_id): + containers = self._container_registry.findInstanceContainers(id=material_id) + if not containers: + UM.Logger.log("d", "Unable to duplicate the material with id %s, because it doesn't exist.", material_id) + return "" + + # Ensure all settings are saved. + UM.Application.getInstance().saveSettings() + + # Create a new ID & container to hold the data. + new_id = self._container_registry.uniqueName(material_id) + container_type = type(containers[0]) # Could be either a XMLMaterialProfile or a InstanceContainer + duplicated_container = container_type(new_id) + + # Instead of duplicating we load the data from the basefile again. + # This ensures that the inheritance goes well and all "cut up" subclasses of the xmlMaterial profile + # are also correctly created. + with open(containers[0].getPath(), encoding="utf-8") as f: + duplicated_container.deserialize(f.read()) + self._container_registry.addContainer(duplicated_container) + # Factory function, used by QML @staticmethod def createContainerManager(engine, js_engine): diff --git a/resources/qml/Preferences/MaterialsPage.qml b/resources/qml/Preferences/MaterialsPage.qml index d2d7c1b0a2..b1f0afe52f 100644 --- a/resources/qml/Preferences/MaterialsPage.qml +++ b/resources/qml/Preferences/MaterialsPage.qml @@ -129,30 +129,24 @@ UM.ManagementPage enabled: base.currentItem != null && base.currentItem.id != Cura.MachineManager.activeMaterialId onClicked: Cura.MachineManager.setActiveMaterial(base.currentItem.id) }, - /* // apparently visible does not work on OS X - Button + // apparently visible does not work on OS X + /*Button { text: catalog.i18nc("@action:button", "Duplicate"); iconName: "list-add"; enabled: base.currentItem != null onClicked: { - var material_id = Cura.ContainerManager.duplicateContainer(base.currentItem.id) + var base_file = Cura.ContainerManager.getContainerMetaDataEntry(base.currentItem.id, "base_file") + // We need to copy the base container instead of the specific variant. + var material_id = base_file == "" ? Cura.ContainerManager.duplicateMaterial(base.currentItem.id): Cura.ContainerManager.duplicateMaterial(base_file) if(material_id == "") { return } - if(Cura.MachineManager.filterQualityByMachine) - { - var quality_id = Cura.ContainerManager.duplicateContainer(Cura.MachineManager.activeQualityId) - Cura.ContainerManager.setContainerMetaDataEntry(quality_id, "material", material_id) - Cura.MachineManager.setActiveQuality(quality_id) - } - Cura.MachineManager.setActiveMaterial(material_id) } - visible: false; }, */ Button From 96a1aafb80e7cb463b22d9185281df096837730d Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Thu, 8 Sep 2016 14:23:35 +0200 Subject: [PATCH 05/13] Zipfile is now closed when it's done loading CURA-2252 --- plugins/CuraProfileReader/CuraProfileReader.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/plugins/CuraProfileReader/CuraProfileReader.py b/plugins/CuraProfileReader/CuraProfileReader.py index c8d39b7a78..2bccb8e3cb 100644 --- a/plugins/CuraProfileReader/CuraProfileReader.py +++ b/plugins/CuraProfileReader/CuraProfileReader.py @@ -27,15 +27,15 @@ class CuraProfileReader(ProfileReader): # returned. def read(self, file_name): try: - archive = zipfile.ZipFile(file_name, "r") - results = [] - for profile_id in archive.namelist(): - with archive.open(profile_id) as f: - serialized = f.read() - profile = self._loadProfile(serialized.decode("utf-8"), profile_id) - if profile is not None: - results.append(profile) - return results + with zipfile.ZipFile(file_name, "r") as archive: + results = [] + for profile_id in archive.namelist(): + with archive.open(profile_id) as f: + serialized = f.read() + profile = self._loadProfile(serialized.decode("utf-8"), profile_id) + if profile is not None: + results.append(profile) + return results except zipfile.BadZipFile: # It must be an older profile from Cura 2.1. From 750018003d6d43e346c4aba14767179a3a66890d Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Thu, 8 Sep 2016 15:39:33 +0200 Subject: [PATCH 06/13] removal: made support_area_smoothing hardcoded (CURA-2296) --- resources/definitions/fdmprinter.def.json | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index dc5a07ac46..a586f45b21 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -2477,19 +2477,6 @@ "enabled": "support_enable", "settable_per_mesh": true }, - "support_area_smoothing": - { - "label": "Support Area Smoothing", - "description": "Maximum distance in the X/Y directions of a line segment which is to be smoothed out. Ragged lines are introduced by the join distance and support bridge, which cause the machine to resonate. Smoothing the support areas won't cause them to break with the constraints, except it might change the overhang.", - "unit": "mm", - "type": "float", - "default_value": 0.6, - "global_inherits_stack": "support_extruder_nr", - "minimum_value": "0", - "maximum_value_warning": "1.0", - "enabled": "support_enable", - "settable_per_mesh": true - }, "support_interface_enable": { "label": "Enable Support Interface", From 6197a5b77a9c7d6a8b75f745d462305422433a4b Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Thu, 8 Sep 2016 16:21:34 +0200 Subject: [PATCH 07/13] feat: support_interface_skip_height (CURA-2052) --- resources/definitions/fdmprinter.def.json | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 3568f9bc14..b1cad3eb68 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -2533,6 +2533,19 @@ } } }, + "support_interface_skip_height": + { + "label": "Support Interface Resolution", + "description": "When checking where there's model above the support, take steps of the given height. Lower values will slice slower, while higher values may cause normal support to be printed in some places where there should have been support interface.", + "unit": "mm", + "type": "float", + "default_value": 0.3, + "minimum_value": "0", + "global_inherits_stack": "support_extruder_nr", + "maximum_value_warning": "support_interface_height", + "enabled": "extruderValue(support_extruder_nr, 'support_interface_enable') and support_enable", + "settable_per_mesh": true + }, "support_interface_density": { "label": "Support Interface Density", From 544941e33e577d90eeb050c9c500dfbb56e47bdc Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Thu, 8 Sep 2016 17:20:01 +0200 Subject: [PATCH 08/13] Signals are now only emitted when setting changed instead of always. --- cura/PrinterOutputDevice.py | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/cura/PrinterOutputDevice.py b/cura/PrinterOutputDevice.py index c376bb496c..b828e16daf 100644 --- a/cura/PrinterOutputDevice.py +++ b/cura/PrinterOutputDevice.py @@ -150,8 +150,9 @@ class PrinterOutputDevice(QObject, OutputDevice): @pyqtSlot(int) def setTargetBedTemperature(self, temperature): self._setTargetBedTemperature(temperature) - self._target_bed_temperature = temperature - self.targetBedTemperatureChanged.emit() + if self._target_bed_temperature != temperature: + self._target_bed_temperature = temperature + self.targetBedTemperatureChanged.emit() ## Time the print has been printing. # Note that timeTotal - timeElapsed should give time remaining. @@ -212,8 +213,9 @@ class PrinterOutputDevice(QObject, OutputDevice): # This simply sets the bed temperature, but ensures that a signal is emitted. # /param temperature temperature of the bed. def _setBedTemperature(self, temperature): - self._bed_temperature = temperature - self.bedTemperatureChanged.emit() + if self._bed_temperature != temperature: + self._bed_temperature = temperature + self.bedTemperatureChanged.emit() ## Get the target bed temperature if connected printer (if any) @pyqtProperty(int, notify = targetBedTemperatureChanged) @@ -228,8 +230,10 @@ class PrinterOutputDevice(QObject, OutputDevice): @pyqtSlot(int, int) def setTargetHotendTemperature(self, index, temperature): self._setTargetHotendTemperature(index, temperature) - self._target_hotend_temperatures[index] = temperature - self.targetHotendTemperaturesChanged.emit() + + if self._target_hotend_temperatures[index] != temperature: + self._target_hotend_temperatures[index] = temperature + self.targetHotendTemperaturesChanged.emit() ## Implementation function of setTargetHotendTemperature. # /param index Index of the hotend to set the temperature of @@ -251,8 +255,9 @@ class PrinterOutputDevice(QObject, OutputDevice): # /param index Index of the hotend # /param temperature temperature of the hotend (in deg C) def _setHotendTemperature(self, index, temperature): - self._hotend_temperatures[index] = temperature - self.hotendTemperaturesChanged.emit() + if self._hotend_temperatures[index] != temperature: + self._hotend_temperatures[index] = temperature + self.hotendTemperaturesChanged.emit() @pyqtProperty("QVariantList", notify = materialIdChanged) def materialIds(self): @@ -267,7 +272,6 @@ class PrinterOutputDevice(QObject, OutputDevice): self._material_ids[index] = material_id self.materialIdChanged.emit(index, material_id) - @pyqtProperty("QVariantList", notify = hotendIdChanged) def hotendIds(self): return self._hotend_ids @@ -302,8 +306,9 @@ class PrinterOutputDevice(QObject, OutputDevice): ## Set the connection state of this output device. # /param connection_state ConnectionState enum. def setConnectionState(self, connection_state): - self._connection_state = connection_state - self.connectionStateChanged.emit(self._id) + if self._connection_state != connection_state: + self._connection_state = connection_state + self.connectionStateChanged.emit(self._id) @pyqtProperty(str, notify = connectionTextChanged) def connectionText(self): @@ -351,6 +356,7 @@ class PrinterOutputDevice(QObject, OutputDevice): if self._head_z != z: self._head_z = z position_changed = True + if position_changed: self.headPositionChanged.emit() From 2138a87582c64c2b894927469dae7c6afae92242 Mon Sep 17 00:00:00 2001 From: Jack Ha Date: Thu, 8 Sep 2016 17:37:49 +0200 Subject: [PATCH 09/13] Busy with CURA-2159 --- cura/Settings/ContainerManager.py | 1 + .../XmlMaterialProfile/XmlMaterialProfile.py | 41 +++++-------------- resources/qml/Preferences/MaterialsPage.qml | 8 +--- 3 files changed, 13 insertions(+), 37 deletions(-) diff --git a/cura/Settings/ContainerManager.py b/cura/Settings/ContainerManager.py index 27a9bd90dd..5be134c74b 100644 --- a/cura/Settings/ContainerManager.py +++ b/cura/Settings/ContainerManager.py @@ -610,6 +610,7 @@ class ContainerManager(QObject): # are also correctly created. with open(containers[0].getPath(), encoding="utf-8") as f: duplicated_container.deserialize(f.read()) + duplicated_container.setDirty(True) self._container_registry.addContainer(duplicated_container) # Factory function, used by QML diff --git a/plugins/XmlMaterialProfile/XmlMaterialProfile.py b/plugins/XmlMaterialProfile/XmlMaterialProfile.py index cd10348f2f..be8f5146c9 100644 --- a/plugins/XmlMaterialProfile/XmlMaterialProfile.py +++ b/plugins/XmlMaterialProfile/XmlMaterialProfile.py @@ -22,35 +22,6 @@ class XmlMaterialProfile(UM.Settings.InstanceContainer): super().__init__(container_id, *args, **kwargs) self._inherited_files = [] - ## Overridden from InstanceContainer - def duplicate(self, new_id, new_name = None): - base_file = self.getMetaDataEntry("base_file", None) - - if base_file != self.id: - containers = UM.Settings.ContainerRegistry.getInstance().findInstanceContainers(id = base_file) - if containers: - new_basefile = containers[0].duplicate(self.getMetaDataEntry("brand") + "_" + new_id, new_name) - base_file = new_basefile.id - UM.Settings.ContainerRegistry.getInstance().addContainer(new_basefile) - - new_id = self.getMetaDataEntry("brand") + "_" + new_id + "_" + self.getDefinition().getId() - variant = self.getMetaDataEntry("variant") - if variant: - variant_containers = UM.Settings.ContainerRegistry.getInstance().findInstanceContainers(id = variant) - if variant_containers: - new_id += "_" + variant_containers[0].getName().replace(" ", "_") - has_base_file = True - else: - has_base_file = False - - new_id = UM.Settings.ContainerRegistry.getInstance().createUniqueName("material", self._id, new_id, "") - result = super().duplicate(new_id, new_name) - if has_base_file: - result.setMetaDataEntry("base_file", base_file) - else: - result.setMetaDataEntry("base_file", result.id) - return result - def getInheritedFiles(self): return self._inherited_files @@ -63,6 +34,7 @@ class XmlMaterialProfile(UM.Settings.InstanceContainer): container._read_only = read_only # prevent loop instead of calling setReadOnly ## Overridden from InstanceContainer + # set the meta data for all machine / variant combinations def setMetaDataEntry(self, key, value): if self.isReadOnly(): return @@ -103,10 +75,17 @@ class XmlMaterialProfile(UM.Settings.InstanceContainer): # # basefile = self.getMetaDataEntry("base_file", self._id) #if basefile is self.id, this is a basefile. # for container in UM.Settings.ContainerRegistry.getInstance().findInstanceContainers(base_file = basefile): - # container._dirty = True + # if not container.isReadOnly(): + # container.setDirty(True) ## Overridden from InstanceContainer + # base file: global settings + supported machines + # machine / variant combination: only changes for itself. def serialize(self): + if self._read_only: + Logger.log("w", "Serializing read-only container [%s], probably a programming error." % self.id) + return + registry = UM.Settings.ContainerRegistry.getInstance() base_file = self.getMetaDataEntry("base_file", "") @@ -114,7 +93,7 @@ class XmlMaterialProfile(UM.Settings.InstanceContainer): # Since we create an instance of XmlMaterialProfile for each machine and nozzle in the profile, # we should only serialize the "base" material definition, since that can then take care of # serializing the machine/nozzle specific profiles. - raise NotImplementedError("Cannot serialize non-root XML materials") + raise NotImplementedError("Ignoring serializing non-root XML materials, the data is contained in the base material") builder = ET.TreeBuilder() diff --git a/resources/qml/Preferences/MaterialsPage.qml b/resources/qml/Preferences/MaterialsPage.qml index b1f0afe52f..ef57b5af58 100644 --- a/resources/qml/Preferences/MaterialsPage.qml +++ b/resources/qml/Preferences/MaterialsPage.qml @@ -129,8 +129,7 @@ UM.ManagementPage enabled: base.currentItem != null && base.currentItem.id != Cura.MachineManager.activeMaterialId onClicked: Cura.MachineManager.setActiveMaterial(base.currentItem.id) }, - // apparently visible does not work on OS X - /*Button + Button { text: catalog.i18nc("@action:button", "Duplicate"); iconName: "list-add"; @@ -148,7 +147,6 @@ UM.ManagementPage Cura.MachineManager.setActiveMaterial(material_id) } }, - */ Button { text: catalog.i18nc("@action:button", "Remove"); @@ -156,15 +154,13 @@ UM.ManagementPage enabled: base.currentItem != null && !base.currentItem.readOnly && !Cura.ContainerManager.isContainerUsed(base.currentItem.id) onClicked: confirmDialog.open() }, - /* // apparently visible does not work on OS X Button { text: catalog.i18nc("@action:button", "Import"); iconName: "document-import"; onClicked: importDialog.open(); - visible: false; + visible: true; }, - */ Button { text: catalog.i18nc("@action:button", "Export") From 8b7a8327e830f9d87f6054bffbdf9293b4a56a41 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 8 Sep 2016 18:49:34 +0200 Subject: [PATCH 10/13] Allow machinedefinitions to specify another definition to inherit qualities from CURA-1780 --- cura/Settings/ExtruderManager.py | 4 +- cura/Settings/MachineManager.py | 69 +++++++++++++++++++--- resources/qml/Menus/MaterialMenu.qml | 4 +- resources/qml/Menus/ProfileMenu.qml | 4 +- resources/qml/Preferences/ProfilesPage.qml | 2 +- 5 files changed, 69 insertions(+), 14 deletions(-) diff --git a/cura/Settings/ExtruderManager.py b/cura/Settings/ExtruderManager.py index 1359ab77b6..f38f82900d 100644 --- a/cura/Settings/ExtruderManager.py +++ b/cura/Settings/ExtruderManager.py @@ -160,7 +160,7 @@ class ExtruderManager(QObject): def createExtruderTrain(self, extruder_definition, machine_definition, position, machine_id): # Cache some things. container_registry = UM.Settings.ContainerRegistry.getInstance() - machine_definition_id = machine_definition.getId() + machine_definition_id = UM.Application.getInstance().getMachineManager().getQualityDefinitionId(machine_definition) # Create a container stack for this extruder. extruder_stack_id = container_registry.uniqueName(extruder_definition.getId()) @@ -222,7 +222,7 @@ class ExtruderManager(QObject): search_criteria = { "type": "quality" } if machine_definition.getMetaDataEntry("has_machine_quality"): - search_criteria["definition"] = machine_definition.id + search_criteria["definition"] = machine_definition_id if machine_definition.getMetaDataEntry("has_materials") and material: search_criteria["material"] = material.id else: diff --git a/cura/Settings/MachineManager.py b/cura/Settings/MachineManager.py index 3e6b55ec7e..0849786320 100644 --- a/cura/Settings/MachineManager.py +++ b/cura/Settings/MachineManager.py @@ -430,13 +430,23 @@ class MachineManager(QObject): return result + ## Get the Material ID associated with the currently active material + # \returns MaterialID (string) if found, empty string otherwise @pyqtProperty(str, notify=activeQualityChanged) def activeQualityMaterialId(self): if self._active_container_stack: quality = self._active_container_stack.findContainer({"type": "quality"}) if quality: - return quality.getMetaDataEntry("material") + material_id = quality.getMetaDataEntry("material") + if material_id: + # if the currently active machine inherits its qualities from a different machine + # definition, make sure to return a material that is relevant to that machine definition + definition_id = self.activeDefinitionId + quality_definition_id = self.activeQualityDefinitionId + if definition_id != quality_definition_id: + material_id = material_id.replace(definition_id, quality_definition_id, 1) + return material_id return "" @pyqtProperty(str, notify=activeQualityChanged) @@ -594,7 +604,7 @@ class MachineManager(QObject): criteria["material"] = material.getId() if self._global_container_stack.getMetaDataEntry("has_machine_quality"): - criteria["definition"] = self._global_container_stack.getBottom().getId() + criteria["definition"] = self.activeQualityDefinitionId else: criteria["definition"] = "fdmprinter" @@ -685,6 +695,51 @@ class MachineManager(QObject): return "" + ## Get the Definition ID to use to select quality profiles for the currently active machine + # \returns DefinitionID (string) if found, empty string otherwise + # \sa getQualityDefinitionId + @pyqtProperty(str, notify = globalContainerChanged) + def activeQualityDefinitionId(self): + if self._global_container_stack: + return self.getQualityDefinitionId(self._global_container_stack.getBottom()) + return "" + + ## Get the Definition ID to use to select quality profiles for machines of the specified definition + # This is normally the id of the definition itself, but machines can specify a different definition to inherit qualities from + # \param definition (DefinitionContainer) machine definition + # \returns DefinitionID (string) if found, empty string otherwise + def getQualityDefinitionId(self, definition): + definition_id = definition.getMetaDataEntry("quality_definition") + if not definition_id: + definition_id = definition.getId() + return definition_id + + ## Get the Variant ID to use to select quality profiles for the currently active variant + # \returns VariantID (string) if found, empty string otherwise + # \sa getQualityVariantId + @pyqtProperty(str, notify = activeVariantChanged) + def activeQualityVariantId(self): + if self._global_container_stack: + variant = self._global_container_stack.findContainer({"type": "variant"}) + if variant: + return self.getQualityVariantId(self._global_container_stack.getBottom(), variant) + return "" + + ## Get the Variant ID to use to select quality profiles for variants of the specified definitions + # This is normally the id of the variant itself, but machines can specify a different definition + # to inherit qualities from, which has consequences for the variant to use as well + # \param definition (DefinitionContainer) machine definition + # \param variant (DefinitionContainer) variant definition + # \returns VariantID (string) if found, empty string otherwise + def getQualityVariantId(self, definition, variant): + variant_id = variant.getId() + definition_id = definition.getId() + quality_definition_id = self.getQualityDefinitionId(definition) + + if definition_id != quality_definition_id: + variant_id = variant_id.replace(definition_id, quality_definition_id, 1) + return variant_id + ## Gets how the active definition calls variants # Caveat: per-definition-variant-title is currently not translated (though the fallback is) @pyqtProperty(str, notify = globalContainerChanged) @@ -789,10 +844,10 @@ class MachineManager(QObject): search_criteria = { "type": "material" } if definition.getMetaDataEntry("has_machine_materials"): - search_criteria["definition"] = definition.id + search_criteria["definition"] = self.getQualityDefinitionId(definition) if definition.getMetaDataEntry("has_variants") and variant_container: - search_criteria["variant"] = variant_container.id + search_criteria["variant"] = self.getQualityVariantId(definition, variant_container) else: search_criteria["definition"] = "fdmprinter" @@ -823,7 +878,7 @@ class MachineManager(QObject): search_criteria = { "type": "quality" } if definition.getMetaDataEntry("has_machine_quality"): - search_criteria["definition"] = definition.id + search_criteria["definition"] = self.getQualityDefinitionId(definition) if definition.getMetaDataEntry("has_materials") and material_container: search_criteria["material"] = material_container.id @@ -866,10 +921,10 @@ class MachineManager(QObject): if definition.getMetaDataEntry("has_variants"): material_search_criteria["variant"] = material_container.getMetaDataEntry("variant") else: - material_search_criteria["definition"] = definition.id + material_search_criteria["definition"] = self.getQualityDefinitionId(definition) if definition.getMetaDataEntry("has_variants") and variant_container: - material_search_criteria["variant"] = variant_container.id + material_search_criteria["variant"] = self.getQualityVariantId(definition, variant_container) else: material_search_criteria["definition"] = "fdmprinter" material_containers = container_registry.findInstanceContainers(**material_search_criteria) diff --git a/resources/qml/Menus/MaterialMenu.qml b/resources/qml/Menus/MaterialMenu.qml index fba1a5eb75..6b4a945bb9 100644 --- a/resources/qml/Menus/MaterialMenu.qml +++ b/resources/qml/Menus/MaterialMenu.qml @@ -106,10 +106,10 @@ Menu var result = { "type": "material" }; if(Cura.MachineManager.filterMaterialsByMachine) { - result.definition = Cura.MachineManager.activeDefinitionId; + result.definition = Cura.MachineManager.activeQualityDefinitionId; if(Cura.MachineManager.hasVariants) { - result.variant = Cura.MachineManager.activeVariantId; + result.variant = Cura.MachineManager.activeQualityVariantId; } } else diff --git a/resources/qml/Menus/ProfileMenu.qml b/resources/qml/Menus/ProfileMenu.qml index 1c9161cd49..45af0c7965 100644 --- a/resources/qml/Menus/ProfileMenu.qml +++ b/resources/qml/Menus/ProfileMenu.qml @@ -38,7 +38,7 @@ Menu id: customProfileInstantiator model: UM.InstanceContainersModel { - filter: { "type": "quality_changes", "extruder": null, "definition": Cura.MachineManager.filterQualityByMachine ? Cura.MachineManager.activeDefinitionId : "fdmprinter" }; + filter: { "type": "quality_changes", "extruder": null, "definition": Cura.MachineManager.filterQualityByMachine ? Cura.MachineManager.activeQualityDefinitionId : "fdmprinter" }; onModelReset: customSeparator.visible = rowCount() > 0 } @@ -79,7 +79,7 @@ Menu if(Cura.MachineManager.filterQualityByMachine) { - result.definition = Cura.MachineManager.activeDefinitionId; + result.definition = Cura.MachineManager.activeQualityDefinitionId; if(Cura.MachineManager.hasMaterials) { result.material = Cura.MachineManager.activeQualityMaterialId; diff --git a/resources/qml/Preferences/ProfilesPage.qml b/resources/qml/Preferences/ProfilesPage.qml index 4e872bdc2b..65f6626378 100644 --- a/resources/qml/Preferences/ProfilesPage.qml +++ b/resources/qml/Preferences/ProfilesPage.qml @@ -23,7 +23,7 @@ UM.ManagementPage var result = { "type": "quality*", "extruder": null }; if(Cura.MachineManager.filterQualityByMachine) { - result.definition = Cura.MachineManager.activeDefinitionId; + result.definition = Cura.MachineManager.activeQualityDefinitionId; if(Cura.MachineManager.hasMaterials) { result.material = Cura.MachineManager.allActiveMaterialIds[Cura.MachineManager.activeMachineId]; From 501afc3f2e5425e3c29b5c9105e1f4e2f8e463a2 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 8 Sep 2016 18:50:39 +0200 Subject: [PATCH 11/13] Change UM2Ex+ definition to inherit qualities from UM2+ CURA-1780 --- .../ultimaker2_extended_plus.def.json | 10 +--- .../um2ep_abs_0.25_normal.inst.cfg | 23 ---------- .../um2ep_abs_0.4_fast.inst.cfg | 26 ----------- .../um2ep_abs_0.4_high.inst.cfg | 23 ---------- .../um2ep_abs_0.4_normal.inst.cfg | 22 --------- .../um2ep_abs_0.6_normal.inst.cfg | 24 ---------- .../um2ep_abs_0.8_normal.inst.cfg | 22 --------- .../um2ep_cpe_0.25_normal.inst.cfg | 22 --------- .../um2ep_cpe_0.4_fast.inst.cfg | 26 ----------- .../um2ep_cpe_0.4_high.inst.cfg | 22 --------- .../um2ep_cpe_0.4_normal.inst.cfg | 23 ---------- .../um2ep_cpe_0.6_normal.inst.cfg | 21 --------- .../um2ep_cpe_0.8_normal.inst.cfg | 21 --------- .../um2ep_cpep_0.4_draft.inst.cfg | 42 ----------------- .../um2ep_cpep_0.4_normal.inst.cfg | 42 ----------------- .../um2ep_cpep_0.6_draft.inst.cfg | 46 ------------------- .../um2ep_cpep_0.6_normal.inst.cfg | 46 ------------------- .../um2ep_cpep_0.8_draft.inst.cfg | 40 ---------------- .../um2ep_cpep_0.8_normal.inst.cfg | 40 ---------------- .../um2ep_nylon_0.25_high.inst.cfg | 43 ----------------- .../um2ep_nylon_0.25_normal.inst.cfg | 43 ----------------- .../um2ep_nylon_0.4_fast.inst.cfg | 42 ----------------- .../um2ep_nylon_0.4_normal.inst.cfg | 41 ----------------- .../um2ep_nylon_0.6_fast.inst.cfg | 46 ------------------- .../um2ep_nylon_0.6_normal.inst.cfg | 45 ------------------ .../um2ep_nylon_0.8_draft.inst.cfg | 46 ------------------- .../um2ep_nylon_0.8_normal.inst.cfg | 46 ------------------- .../um2ep_pc_0.25_high.inst.cfg | 36 --------------- .../um2ep_pc_0.25_normal.inst.cfg | 36 --------------- .../um2ep_pc_0.4_fast.inst.cfg | 37 --------------- .../um2ep_pc_0.4_normal.inst.cfg | 37 --------------- .../um2ep_pc_0.6_fast.inst.cfg | 44 ------------------ .../um2ep_pc_0.6_normal.inst.cfg | 44 ------------------ .../um2ep_pc_0.8_draft.inst.cfg | 37 --------------- .../um2ep_pc_0.8_normal.inst.cfg | 37 --------------- .../um2ep_pla_0.25_normal.inst.cfg | 19 -------- .../um2ep_pla_0.4_fast.inst.cfg | 21 --------- .../um2ep_pla_0.4_high.inst.cfg | 19 -------- .../um2ep_pla_0.4_normal.inst.cfg | 19 -------- .../um2ep_pla_0.6_normal.inst.cfg | 19 -------- .../um2ep_pla_0.8_normal.inst.cfg | 19 -------- .../um2ep_tpu_0.25_high.inst.cfg | 42 ----------------- .../um2ep_tpu_0.4_normal.inst.cfg | 39 ---------------- .../um2ep_tpu_0.6_fast.inst.cfg | 44 ------------------ 44 files changed, 1 insertion(+), 1441 deletions(-) delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_abs_0.25_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_abs_0.4_fast.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_abs_0.4_high.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_abs_0.4_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_abs_0.6_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_abs_0.8_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.25_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.4_fast.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.4_high.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.4_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.6_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.8_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.4_draft.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.4_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.6_draft.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.6_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.8_draft.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.8_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.25_high.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.25_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.4_fast.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.4_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.6_fast.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.6_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.8_draft.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.8_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pc_0.25_high.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pc_0.25_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pc_0.4_fast.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pc_0.4_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pc_0.6_fast.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pc_0.6_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pc_0.8_draft.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pc_0.8_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pla_0.25_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pla_0.4_fast.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pla_0.4_high.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pla_0.4_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pla_0.6_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_pla_0.8_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_tpu_0.25_high.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_tpu_0.4_normal.inst.cfg delete mode 100644 resources/quality/ultimaker2_extended_plus/um2ep_tpu_0.6_fast.inst.cfg diff --git a/resources/definitions/ultimaker2_extended_plus.def.json b/resources/definitions/ultimaker2_extended_plus.def.json index ea97033878..3454be30f2 100644 --- a/resources/definitions/ultimaker2_extended_plus.def.json +++ b/resources/definitions/ultimaker2_extended_plus.def.json @@ -7,6 +7,7 @@ "author": "Ultimaker", "manufacturer": "Ultimaker", "category": "Ultimaker", + "quality_definition": "ultimaker2_plus", "weight": 2, "file_formats": "text/x-gcode", "platform": "ultimaker2_platform.obj", @@ -17,15 +18,6 @@ "overrides": { "machine_height": { "default_value": 305 - }, - "machine_show_variants": { - "default_value": true - }, - "machine_nozzle_head_distance": { - "default_value": 5 - }, - "machine_nozzle_expansion_angle": { - "default_value": 45 } } } diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.25_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.25_normal.inst.cfg deleted file mode 100644 index 2d0a81c8a4..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.25_normal.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 2 -name = High Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_abs_ultimaker2_extended_plus_0.25_mm -weight = -2 -quality_type = high - -[values] -layer_height = 0.06 -wall_thickness = 0.88 -top_bottom_thickness = 0.72 -infill_sparse_density = 22 -speed_print = 30 -cool_min_layer_time = 3 -cool_fan_speed_min = 20 -cool_min_speed = 10 -cool_min_layer_time_fan_speed_max = 15 - - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.4_fast.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.4_fast.inst.cfg deleted file mode 100644 index a882429f2a..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.4_fast.inst.cfg +++ /dev/null @@ -1,26 +0,0 @@ -[general] -version = 2 -name = Fast Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_abs_ultimaker2_extended_plus_0.4_mm -weight = -1 -quality_type = fast - -[values] -layer_height = 0.15 -wall_thickness = 0.7 -top_bottom_thickness = 0.75 -infill_sparse_density = 18 -speed_print = 55 -speed_wall = 40 -speed_topbottom = 30 -speed_travel = 150 -speed_layer_0 = 30 -cool_min_layer_time = 3 -cool_fan_speed_min = 20 -cool_min_speed = 10 -cool_min_layer_time_fan_speed_max = 15 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.4_high.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.4_high.inst.cfg deleted file mode 100644 index 5650353f7a..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.4_high.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 2 -name = High Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_abs_ultimaker2_extended_plus_0.4_mm -weight = -3 -quality_type = high - -[values] -layer_height = 0.06 -wall_thickness = 1.05 -top_bottom_thickness = 0.72 -infill_sparse_density = 22 -speed_print = 45 -speed_wall = 30 -cool_min_layer_time = 3 -cool_fan_speed_min = 20 -cool_min_speed = 10 -cool_min_layer_time_fan_speed_max = 15 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.4_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.4_normal.inst.cfg deleted file mode 100644 index 6b5901ad15..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.4_normal.inst.cfg +++ /dev/null @@ -1,22 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_abs_ultimaker2_extended_plus_0.4_mm -weight = -2 -quality_type = normal - -[values] -layer_height = 0.1 -wall_thickness = 1.05 -top_bottom_thickness = 0.8 -infill_sparse_density = 20 -speed_print = 45 -speed_wall = 30 -cool_min_layer_time = 3 -cool_fan_speed_min = 20 -cool_min_speed = 10 -cool_min_layer_time_fan_speed_max = 15 diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.6_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.6_normal.inst.cfg deleted file mode 100644 index bcc2f29656..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.6_normal.inst.cfg +++ /dev/null @@ -1,24 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_abs_ultimaker2_extended_plus_0.6_mm -weight = -2 -quality_type = normal - -[values] -layer_height = 0.15 -wall_thickness = 1.59 -top_bottom_thickness = 1.2 -infill_sparse_density = 20 -speed_print = 40 -speed_infill = 55 -cool_min_layer_time = 3 -cool_fan_speed_min = 50 -cool_min_speed = 20 -cool_min_layer_time_fan_speed_max = 20 - - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.8_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.8_normal.inst.cfg deleted file mode 100644 index 3fea836f7a..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_abs_0.8_normal.inst.cfg +++ /dev/null @@ -1,22 +0,0 @@ -[general] -version = 2 -name = Fast Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_abs_ultimaker2_extended_plus_0.8_mm -weight = -2 -quality_type = fast - -[values] -layer_height = 0.2 -wall_thickness = 2.1 -top_bottom_thickness = 1.2 -infill_sparse_density = 20 -speed_print = 40 -cool_min_layer_time = 3 -cool_fan_speed_min = 50 -cool_min_speed = 15 -cool_min_layer_time_fan_speed_max = 25 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.25_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.25_normal.inst.cfg deleted file mode 100644 index 7774ba3534..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.25_normal.inst.cfg +++ /dev/null @@ -1,22 +0,0 @@ -[general] -version = 2 -name = High Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_cpe_ultimaker2_extended_plus_0.25_mm -weight = -2 -quality_type = high - -[values] -layer_height = 0.06 -wall_thickness = 0.88 -top_bottom_thickness = 0.72 -infill_sparse_density = 22 -speed_print = 30 -cool_min_layer_time = 2 -cool_fan_speed_min = 20 -cool_min_speed = 15 -cool_min_layer_time_fan_speed_max = 15 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.4_fast.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.4_fast.inst.cfg deleted file mode 100644 index 256c304149..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.4_fast.inst.cfg +++ /dev/null @@ -1,26 +0,0 @@ -[general] -version = 2 -name = Fast Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_cpe_ultimaker2_extended_plus_0.4_mm -weight = -1 -quality_type = fast - -[values] -layer_height = 0.15 -wall_thickness = 0.7 -top_bottom_thickness = 0.75 -infill_sparse_density = 18 -speed_print = 45 -speed_wall = 40 -speed_travel = 150 -speed_layer_0 = 30 -cool_min_layer_time = 3 -cool_fan_speed_min = 80 -cool_min_speed = 10 -cool_min_layer_time_fan_speed_max = 15 - - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.4_high.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.4_high.inst.cfg deleted file mode 100644 index 0c70fe615d..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.4_high.inst.cfg +++ /dev/null @@ -1,22 +0,0 @@ -[general] -version = 2 -name = High Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_cpe_ultimaker2_extended_plus_0.4_mm -weight = -3 -quality_type = high - -[values] -layer_height = 0.06 -wall_thickness = 1.05 -top_bottom_thickness = 0.72 -infill_sparse_density = 22 -speed_print = 45 -speed_wall = 30 -cool_min_layer_time = 2 -cool_fan_speed_min = 80 -cool_min_speed = 15 -cool_min_layer_time_fan_speed_max = 15 diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.4_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.4_normal.inst.cfg deleted file mode 100644 index 541ea1b468..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.4_normal.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_cpe_ultimaker2_extended_plus_0.4_mm -weight = -2 -quality_type = normal - -[values] -layer_height = 0.1 -wall_thickness = 1.05 -top_bottom_thickness = 0.8 -infill_sparse_density = 20 -speed_print = 45 -speed_wall = 30 -cool_min_layer_time = 3 -cool_fan_speed_min = 80 -cool_min_speed = 10 -cool_min_layer_time_fan_speed_max = 15 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.6_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.6_normal.inst.cfg deleted file mode 100644 index 09e9ec2941..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.6_normal.inst.cfg +++ /dev/null @@ -1,21 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_cpe_ultimaker2_extended_plus_0.6_mm -weight = -2 -quality_type = normal - -[values] -layer_height = 0.15 -wall_thickness = 1.59 -top_bottom_thickness = 1.2 -infill_sparse_density = 20 -speed_print = 40 -cool_min_layer_time = 5 -cool_fan_speed_min = 80 -cool_min_speed = 8 -cool_min_layer_time_fan_speed_max = 20 diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.8_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.8_normal.inst.cfg deleted file mode 100644 index e3d8d5462f..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_cpe_0.8_normal.inst.cfg +++ /dev/null @@ -1,21 +0,0 @@ -[general] -version = 2 -name = Fast Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_cpe_ultimaker2_extended_plus_0.8_mm -weight = -2 -quality_type = fast - -[values] -layer_height = 0.2 -wall_thickness = 2.1 -top_bottom_thickness = 1.2 -infill_sparse_density = 20 -speed_print = 40 -cool_min_layer_time = 3 -cool_fan_speed_min = 80 -cool_min_speed = 8 -cool_min_layer_time_fan_speed_max = 25 diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.4_draft.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.4_draft.inst.cfg deleted file mode 100644 index a429cb87d2..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.4_draft.inst.cfg +++ /dev/null @@ -1,42 +0,0 @@ -[general] -version = 2 -name = Draft Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_cpe_plus_ultimaker2_extended_plus_0.4_mm -weight = 0 -quality_type = draft - -[values] -speed_wall_x = 25 -support_z_distance = 0.26 -raft_interface_line_spacing = 1 -cool_min_speed = 8 -cool_fan_speed = 50 -wall_thickness = 1.14 -raft_margin = 15 -speed_layer_0 = 15 -raft_airgap = 0.37 -infill_overlap = 5 -layer_height = 0.2 -raft_interface_line_width = 0.8 -top_bottom_thickness = 1.5 -cool_fan_speed_min = 25 -raft_surface_line_width = 0.38 -support_pattern = lines -support_infill_rate = 20 -speed_topbottom = 20 -support_enable = True -speed_wall_0 = 20 -adhesion_type = raft -infill_sparse_density = 30 -layer_0_z_overlap = 0.22 -cool_min_layer_time = 3 -speed_print = 25 -line_width = 0.38 -support_angle = 45 -raft_base_line_spacing = 1.6 -raft_base_line_width = 0.8 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.4_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.4_normal.inst.cfg deleted file mode 100644 index 5da95cb418..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.4_normal.inst.cfg +++ /dev/null @@ -1,42 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_cpe_plus_ultimaker2_extended_plus_0.4_mm -weight = 0 -quality_type = normal - -[values] -speed_wall_x = 30 -support_z_distance = 0.26 -raft_interface_line_spacing = 1 -cool_min_speed = 8 -cool_fan_speed = 50 -wall_thickness = 1.14 -raft_margin = 15 -speed_layer_0 = 15 -raft_airgap = 0.37 -infill_overlap = 5 -layer_height = 0.15 -raft_interface_line_width = 0.8 -top_bottom_thickness = 1.5 -cool_fan_speed_min = 25 -raft_surface_line_width = 0.38 -support_pattern = lines -support_infill_rate = 20 -speed_topbottom = 20 -support_enable = True -speed_wall_0 = 20 -adhesion_type = raft -infill_sparse_density = 30 -layer_0_z_overlap = 0.22 -cool_min_layer_time = 3 -speed_print = 35 -line_width = 0.38 -support_angle = 45 -raft_base_line_spacing = 1.6 -raft_base_line_width = 0.8 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.6_draft.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.6_draft.inst.cfg deleted file mode 100644 index ca21d7925f..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.6_draft.inst.cfg +++ /dev/null @@ -1,46 +0,0 @@ -[general] -version = 2 -name = Draft Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_cpe_plus_ultimaker2_extended_plus_0.6_mm -weight = 0 -quality_type = draft - -[values] -support_xy_distance = 0.6 -speed_travel = 150 -support_z_distance = 0.22 -speed_wall_x = 25 -cool_min_speed = 8 -cool_fan_speed = 45 -raft_surface_thickness = 0.2 -raft_surface_line_width = 0.57 -raft_interface_line_spacing = 1.4 -raft_margin = 15 -speed_layer_0 = 30 -raft_airgap = 0.37 -infill_overlap = 5 -layer_height = 0.3 -raft_base_line_spacing = 2.4 -raft_interface_line_width = 1.2 -speed_wall_0 = 20 -cool_fan_speed_min = 25 -wall_thickness = 1.14 -support_pattern = lines -support_infill_rate = 20 -speed_topbottom = 20 -support_enable = True -infill_sparse_density = 35 -top_bottom_thickness = 0.75 -adhesion_type = raft -line_width = 0.57 -layer_0_z_overlap = 0.22 -raft_base_line_width = 1.2 -speed_print = 25 -support_line_distance = 2.85 -support_angle = 45 -cool_min_layer_time = 3 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.6_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.6_normal.inst.cfg deleted file mode 100644 index 4d994520f4..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.6_normal.inst.cfg +++ /dev/null @@ -1,46 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_cpe_plus_ultimaker2_extended_plus_0.6_mm -weight = 0 -quality_type = normal - -[values] -support_xy_distance = 0.6 -speed_travel = 150 -support_z_distance = 0.22 -speed_wall_x = 35 -cool_min_speed = 8 -cool_fan_speed = 45 -raft_surface_thickness = 0.2 -raft_surface_line_width = 0.57 -raft_interface_line_spacing = 1.4 -raft_margin = 15 -speed_layer_0 = 30 -raft_airgap = 0.37 -infill_overlap = 5 -layer_height = 0.22 -raft_base_line_spacing = 2.4 -raft_interface_line_width = 1.2 -speed_wall_0 = 30 -cool_fan_speed_min = 25 -wall_thickness = 1.14 -support_pattern = lines -support_infill_rate = 20 -speed_topbottom = 20 -support_enable = True -infill_sparse_density = 35 -top_bottom_thickness = 0.75 -adhesion_type = raft -line_width = 0.57 -layer_0_z_overlap = 0.22 -raft_base_line_width = 1.2 -speed_print = 35 -support_line_distance = 2.85 -support_angle = 45 -cool_min_layer_time = 3 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.8_draft.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.8_draft.inst.cfg deleted file mode 100644 index 9708283277..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.8_draft.inst.cfg +++ /dev/null @@ -1,40 +0,0 @@ -[general] -version = 2 -name = Draft Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_cpe_plus_ultimaker2_extended_plus_0.8_mm -weight = 0 -quality_type = draft - -[values] -support_z_distance = 0.26 -speed_wall_x = 25 -cool_fan_speed = 50 -raft_surface_thickness = 0.2 -raft_surface_line_width = 0.7 -raft_interface_line_spacing = 1.8 -raft_airgap = 0.37 -infill_overlap = 5 -layer_height = 0.3 -raft_interface_line_width = 1.6 -top_bottom_thickness = 1.2 -cool_fan_speed_min = 25 -brim_line_count = 10 -support_pattern = lines -support_infill_rate = 20 -speed_topbottom = 20 -support_enable = True -raft_margin = 15 -adhesion_type = raft -infill_sparse_density = 40 -layer_0_z_overlap = 0.22 -raft_base_line_width = 1.6 -speed_print = 25 -speed_wall_0 = 20 -support_angle = 45 -cool_min_layer_time = 3 -wall_thickness = 2.1 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.8_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.8_normal.inst.cfg deleted file mode 100644 index 81cbeac533..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_cpep_0.8_normal.inst.cfg +++ /dev/null @@ -1,40 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_cpe_plus_ultimaker2_extended_plus_0.8_mm -weight = 0 -quality_type = normal - -[values] -support_z_distance = 0.26 -speed_wall_x = 30 -cool_fan_speed = 50 -raft_surface_thickness = 0.2 -raft_surface_line_width = 0.7 -raft_interface_line_spacing = 1.8 -raft_airgap = 0.37 -infill_overlap = 5 -layer_height = 0.2 -raft_interface_line_width = 1.6 -top_bottom_thickness = 1.2 -cool_fan_speed_min = 25 -brim_line_count = 10 -support_pattern = lines -support_infill_rate = 20 -speed_topbottom = 20 -support_enable = True -raft_margin = 15 -adhesion_type = raft -infill_sparse_density = 40 -layer_0_z_overlap = 0.22 -raft_base_line_width = 1.6 -speed_print = 30 -speed_wall_0 = 20 -support_angle = 45 -cool_min_layer_time = 3 -wall_thickness = 2.1 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.25_high.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.25_high.inst.cfg deleted file mode 100644 index 5da1025685..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.25_high.inst.cfg +++ /dev/null @@ -1,43 +0,0 @@ -[general] -version = 2 -name = High Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_nylon_ultimaker2_extended_plus_0.25_mm -weight = 0 -quality_type = high - -[values] -support_xy_distance = 0.6 -speed_travel = 150 -cool_fan_speed = 60 -support_z_distance = 0.45 -speed_wall_x = 40 -cool_min_speed = 15 -raft_surface_line_width = 0.2 -raft_interface_line_width = 0.5 -brim_line_count = 8 -raft_margin = 15 -speed_layer_0 = 30 -raft_airgap = 0.15 -infill_overlap = 5 -layer_height = 0.06 -raft_interface_line_spacing = 0.7 -speed_support = 40 -top_bottom_thickness = 1.2 -cool_fan_speed_min = 35 -wall_thickness = 1 -support_pattern = lines -support_infill_rate = 20 -speed_topbottom = 35 -support_enable = True -retraction_hop_enabled = 0.2 -speed_wall_0 = 20 -adhesion_type = raft -infill_sparse_density = 25 -layer_0_z_overlap = 0.1 -raft_base_line_width = 0.5 -speed_print = 40 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.25_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.25_normal.inst.cfg deleted file mode 100644 index dc123b03d2..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.25_normal.inst.cfg +++ /dev/null @@ -1,43 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_nylon_ultimaker2_extended_plus_0.25_mm -weight = 0 -quality_type = normal - -[values] -support_xy_distance = 0.6 -speed_travel = 150 -cool_fan_speed = 60 -support_z_distance = 0.45 -speed_wall_x = 40 -cool_min_speed = 15 -raft_surface_line_width = 0.2 -raft_interface_line_width = 0.5 -brim_line_count = 8 -raft_margin = 15 -speed_layer_0 = 30 -raft_airgap = 0.15 -infill_overlap = 5 -layer_height = 0.1 -raft_interface_line_spacing = 0.7 -speed_support = 40 -top_bottom_thickness = 1.2 -cool_fan_speed_min = 35 -wall_thickness = 1 -support_pattern = lines -support_infill_rate = 20 -speed_topbottom = 35 -support_enable = True -retraction_hop_enabled = 0.2 -speed_wall_0 = 20 -adhesion_type = raft -infill_sparse_density = 25 -layer_0_z_overlap = 0.1 -raft_base_line_width = 0.5 -speed_print = 40 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.4_fast.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.4_fast.inst.cfg deleted file mode 100644 index 807c630988..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.4_fast.inst.cfg +++ /dev/null @@ -1,42 +0,0 @@ -[general] -version = 2 -name = Fast Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_nylon_ultimaker2_extended_plus_0.4_mm -weight = 0 -quality_type = fast - -[values] -support_xy_distance = 0.6 -speed_travel = 150 -support_z_distance = 0.45 -raft_interface_line_spacing = 1 -cool_min_speed = 15 -raft_surface_thickness = 0.15 -raft_surface_line_width = 0.5 -speed_layer_0 = 30 -raft_airgap = 0.57 -infill_overlap = 5 -layer_height = 0.2 -raft_interface_line_width = 0.8 -top_bottom_thickness = 0.75 -cool_fan_speed_min = 35 -wall_thickness = 1.06 -support_pattern = lines -support_infill_rate = 25 -speed_topbottom = 20 -support_enable = True -speed_wall = 40 -raft_margin = 15 -adhesion_type = raft -infill_sparse_density = 30 -layer_0_z_overlap = 0.22 -raft_base_line_spacing = 1.6 -speed_print = 45 -support_angle = 45 -cool_min_layer_time = 3 -raft_base_line_width = 0.8 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.4_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.4_normal.inst.cfg deleted file mode 100644 index 4cb32b6735..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.4_normal.inst.cfg +++ /dev/null @@ -1,41 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_nylon_ultimaker2_extended_plus_0.4_mm -weight = 0 -quality_type = normal - -[values] -support_xy_distance = 0.6 -speed_travel = 150 -support_z_distance = 0.45 -raft_interface_line_spacing = 1 -cool_min_speed = 15 -raft_surface_thickness = 0.15 -raft_surface_line_width = 0.5 -speed_layer_0 = 30 -raft_airgap = 0.57 -infill_overlap = 5 -layer_height = 0.15 -raft_interface_line_width = 0.8 -top_bottom_thickness = 0.75 -cool_fan_speed_min = 35 -wall_thickness = 1.06 -support_pattern = lines -support_infill_rate = 25 -support_enable = True -speed_wall = 40 -raft_margin = 15 -adhesion_type = raft -infill_sparse_density = 30 -layer_0_z_overlap = 0.22 -raft_base_line_spacing = 1.6 -speed_print = 45 -support_angle = 45 -cool_min_layer_time = 3 -raft_base_line_width = 0.8 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.6_fast.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.6_fast.inst.cfg deleted file mode 100644 index a843ad6f17..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.6_fast.inst.cfg +++ /dev/null @@ -1,46 +0,0 @@ -[general] -version = 2 -name = Fast Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_nylon_ultimaker2_extended_plus_0.6_mm -weight = 0 -quality_type = fast - -[values] -support_xy_distance = 0.7 -speed_travel = 150 -speed_wall_x = 40 -cool_min_speed = 15 -support_top_distance = 0.55 -raft_surface_line_width = 0.6 -raft_surface_thickness = 0.15 -brim_line_count = 8 -speed_layer_0 = 30 -raft_interface_line_spacing = 1.4 -infill_overlap = 5 -layer_height = 0.3 -raft_interface_line_width = 1.2 -speed_support = 40 -speed_wall_0 = 15 -cool_fan_speed_min = 35 -wall_thickness = 1.2 -support_pattern = lines -support_infill_rate = 25 -speed_topbottom = 35 -support_enable = True -retraction_hop_enabled = 0.2 -support_bottom_distance = 0.55 -raft_margin = 15 -adhesion_type = raft -infill_sparse_density = 35 -layer_0_z_overlap = 0.22 -top_bottom_thickness = 1.2 -speed_print = 55 -raft_airgap = 0.44 -support_angle = 45 -raft_base_line_spacing = 2.4 -raft_base_line_width = 1.2 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.6_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.6_normal.inst.cfg deleted file mode 100644 index 4a7eca7318..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.6_normal.inst.cfg +++ /dev/null @@ -1,45 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_nylon_ultimaker2_extended_plus_0.6_mm -weight = 0 -quality_type = normal - -[values] -support_xy_distance = 0.7 -speed_travel = 150 -support_z_distance = 0.55 -speed_wall_x = 40 -cool_min_speed = 15 -raft_surface_line_width = 0.6 -raft_surface_thickness = 0.15 -brim_line_count = 8 -speed_layer_0 = 30 -raft_interface_line_spacing = 1.4 -infill_overlap = 5 -layer_height = 0.15 -raft_interface_line_width = 1.2 -speed_support = 40 -speed_wall_0 = 15 -cool_fan_speed_min = 35 -wall_thickness = 1.2 -support_pattern = lines -support_infill_rate = 25 -speed_topbottom = 35 -support_enable = True -retraction_hop_enabled = 0.2 -raft_margin = 15 -adhesion_type = raft -infill_sparse_density = 35 -layer_0_z_overlap = 0.22 -top_bottom_thickness = 1.2 -speed_print = 55 -raft_airgap = 0.44 -support_angle = 45 -raft_base_line_spacing = 2.4 -raft_base_line_width = 1.2 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.8_draft.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.8_draft.inst.cfg deleted file mode 100644 index aa880fce02..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.8_draft.inst.cfg +++ /dev/null @@ -1,46 +0,0 @@ -[general] -version = 2 -name = Draft Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_nylon_ultimaker2_extended_plus_0.8_mm -weight = 0 -quality_type = draft - -[values] -support_xy_distance = 0.75 -speed_travel = 150 -support_z_distance = 0.5 -speed_wall_x = 40 -cool_min_speed = 15 -brim_line_count = 8 -support_top_distance = 0.5 -raft_surface_thickness = 0.2 -wall_thickness = 2.4 -raft_margin = 15 -speed_layer_0 = 30 -raft_airgap = 0.44 -infill_overlap = 5 -layer_height = 0.3 -raft_interface_line_width = 1.6 -speed_support = 40 -speed_wall_0 = 15 -cool_fan_speed_min = 35 -raft_surface_line_width = 0.7 -support_pattern = lines -support_infill_rate = 25 -speed_topbottom = 35 -support_enable = True -retraction_hop_enabled = 0.2 -support_bottom_distance = 0.65 -top_bottom_thickness = 1.2 -adhesion_type = raft -infill_sparse_density = 40 -layer_0_z_overlap = 0.25 -raft_base_line_width = 1.6 -speed_print = 55 -support_angle = 45 -raft_interface_line_spacing = 1.8 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.8_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.8_normal.inst.cfg deleted file mode 100644 index ca392b2675..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_nylon_0.8_normal.inst.cfg +++ /dev/null @@ -1,46 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_nylon_ultimaker2_extended_plus_0.8_mm -weight = 0 -quality_type = normal - -[values] -support_xy_distance = 0.75 -speed_travel = 150 -support_z_distance = 0.5 -speed_wall_x = 40 -cool_min_speed = 15 -brim_line_count = 8 -support_top_distance = 0.5 -raft_surface_thickness = 0.2 -wall_thickness = 2.4 -raft_margin = 15 -speed_layer_0 = 30 -raft_airgap = 0.44 -infill_overlap = 5 -layer_height = 0.2 -raft_interface_line_width = 1.6 -speed_support = 40 -speed_wall_0 = 15 -cool_fan_speed_min = 35 -raft_surface_line_width = 0.7 -support_pattern = lines -support_infill_rate = 25 -speed_topbottom = 35 -support_enable = True -retraction_hop_enabled = 0.2 -support_bottom_distance = 0.65 -top_bottom_thickness = 1.2 -adhesion_type = raft -infill_sparse_density = 40 -layer_0_z_overlap = 0.25 -raft_base_line_width = 1.6 -speed_print = 55 -support_angle = 45 -raft_interface_line_spacing = 1.8 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.25_high.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.25_high.inst.cfg deleted file mode 100644 index 177bbfcc49..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.25_high.inst.cfg +++ /dev/null @@ -1,36 +0,0 @@ -[general] -version = 2 -name = High Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_pc_ultimaker2_extended_plus_0.25_mm -weight = 0 -quality_type = high - -[values] -support_z_distance = 0.19 -raft_interface_line_spacing = 0.7 -cool_min_speed = 15 -cool_fan_speed = 50 -raft_surface_line_width = 0.2 -wall_thickness = 0.88 -raft_airgap = 0.5 -infill_overlap = 5 -layer_height = 0.06 -raft_interface_line_width = 0.5 -cool_fan_speed_min = 0 -brim_line_count = 32 -support_pattern = lines -support_infill_rate = 20 -support_enable = True -raft_margin = 15 -adhesion_type = raft -infill_sparse_density = 25 -layer_0_z_overlap = 0.22 -cool_min_layer_time = 2 -speed_print = 30 -raft_base_line_spacing = 1 -raft_base_line_width = 0.5 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.25_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.25_normal.inst.cfg deleted file mode 100644 index 0451e0bb25..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.25_normal.inst.cfg +++ /dev/null @@ -1,36 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_pc_ultimaker2_extended_plus_0.25_mm -weight = 0 -quality_type = normal - -[values] -support_z_distance = 0.19 -raft_interface_line_spacing = 0.7 -cool_min_speed = 15 -cool_fan_speed = 50 -raft_surface_line_width = 0.2 -wall_thickness = 0.88 -raft_airgap = 0.5 -infill_overlap = 5 -layer_height = 0.1 -raft_interface_line_width = 0.5 -cool_fan_speed_min = 0 -brim_line_count = 32 -support_pattern = lines -support_infill_rate = 20 -support_enable = True -raft_margin = 15 -adhesion_type = raft -infill_sparse_density = 25 -layer_0_z_overlap = 0.22 -cool_min_layer_time = 2 -speed_print = 30 -raft_base_line_spacing = 1 -raft_base_line_width = 0.5 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.4_fast.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.4_fast.inst.cfg deleted file mode 100644 index e9d62b8435..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.4_fast.inst.cfg +++ /dev/null @@ -1,37 +0,0 @@ -[general] -version = 2 -name = Fast Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_pc_ultimaker2_extended_plus_0.4_mm -weight = 0 -quality_type = fast - -[values] -speed_wall_x = 30 -support_z_distance = 0.19 -raft_airgap = 0.57 -cool_min_speed = 8 -cool_fan_speed = 50 -raft_interface_line_spacing = 1 -infill_overlap = 5 -layer_height = 0.2 -raft_interface_line_width = 0.8 -speed_wall_0 = 20 -cool_fan_speed_min = 0 -wall_thickness = 1.2 -support_pattern = lines -support_infill_rate = 20 -support_enable = True -raft_margin = 15 -adhesion_type = raft -infill_sparse_density = 30 -layer_0_z_overlap = 0.22 -cool_min_layer_time = 3 -speed_print = 45 -support_angle = 45 -raft_base_line_spacing = 1.6 -raft_base_line_width = 0.8 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.4_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.4_normal.inst.cfg deleted file mode 100644 index 1a637efcf2..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.4_normal.inst.cfg +++ /dev/null @@ -1,37 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_pc_ultimaker2_extended_plus_0.4_mm -weight = 0 -quality_type = normal - -[values] -speed_wall_x = 30 -support_z_distance = 0.19 -raft_airgap = 0.57 -cool_min_speed = 8 -cool_fan_speed = 50 -raft_interface_line_spacing = 1 -infill_overlap = 5 -layer_height = 0.1 -raft_interface_line_width = 0.8 -speed_wall_0 = 20 -cool_fan_speed_min = 0 -wall_thickness = 1.2 -support_pattern = lines -support_infill_rate = 20 -support_enable = True -raft_margin = 15 -adhesion_type = raft -infill_sparse_density = 30 -layer_0_z_overlap = 0.22 -cool_min_layer_time = 3 -speed_print = 45 -support_angle = 45 -raft_base_line_spacing = 1.6 -raft_base_line_width = 0.8 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.6_fast.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.6_fast.inst.cfg deleted file mode 100644 index 9ee6467714..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.6_fast.inst.cfg +++ /dev/null @@ -1,44 +0,0 @@ -[general] -version = 2 -name = Fast Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_pc_ultimaker2_extended_plus_0.6_mm -weight = 0 -quality_type = fast - -[values] -speed_travel = 150 -support_z_distance = 0.21 -speed_wall_x = 40 -cool_min_speed = 8 -cool_fan_speed = 50 -raft_surface_thickness = 0.15 -raft_surface_line_width = 0.6 -raft_interface_line_spacing = 1.4 -speed_layer_0 = 30 -raft_airgap = 0.52 -infill_overlap = 5 -layer_height = 0.3 -raft_interface_line_width = 1.2 -raft_margin = 15 -cool_fan_speed_min = 0 -wall_thickness = 1.06 -support_pattern = lines -support_infill_rate = 20 -speed_topbottom = 20 -support_enable = True -top_bottom_thickness = 0.75 -adhesion_type = raft -infill_sparse_density = 35 -layer_0_z_overlap = 0.22 -raft_base_line_spacing = 2.4 -speed_print = 45 -support_line_distance = 3.5333 -speed_wall_0 = 30 -support_angle = 45 -cool_min_layer_time = 3 -raft_base_line_width = 1.2 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.6_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.6_normal.inst.cfg deleted file mode 100644 index 8697a456cb..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.6_normal.inst.cfg +++ /dev/null @@ -1,44 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_pc_ultimaker2_extended_plus_0.6_mm -weight = 0 -quality_type = normal - -[values] -speed_travel = 150 -support_z_distance = 0.21 -speed_wall_x = 40 -cool_min_speed = 8 -cool_fan_speed = 50 -raft_surface_thickness = 0.15 -raft_surface_line_width = 0.6 -raft_interface_line_spacing = 1.4 -speed_layer_0 = 30 -raft_airgap = 0.52 -infill_overlap = 5 -layer_height = 0.15 -raft_interface_line_width = 1.2 -raft_margin = 15 -cool_fan_speed_min = 0 -wall_thickness = 1.06 -support_pattern = lines -support_infill_rate = 20 -speed_topbottom = 20 -support_enable = True -top_bottom_thickness = 0.75 -adhesion_type = raft -infill_sparse_density = 35 -layer_0_z_overlap = 0.22 -raft_base_line_spacing = 2.4 -speed_print = 45 -support_line_distance = 3.5333 -speed_wall_0 = 30 -support_angle = 45 -cool_min_layer_time = 3 -raft_base_line_width = 1.2 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.8_draft.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.8_draft.inst.cfg deleted file mode 100644 index b5bede87e5..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.8_draft.inst.cfg +++ /dev/null @@ -1,37 +0,0 @@ -[general] -version = 2 -name = Draft Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_pc_ultimaker2_extended_plus_0.8_mm -weight = 0 -quality_type = draft - -[values] -support_z_distance = 0.26 -raft_airgap = 0.47 -cool_fan_speed = 50 -raft_surface_line_width = 0.7 -raft_surface_thickness = 0.2 -brim_line_count = 10 -raft_interface_line_spacing = 1.8 -infill_overlap = 5 -layer_height = 0.5 -raft_interface_line_width = 1.6 -top_bottom_thickness = 2.0 -cool_fan_speed_min = 25 -wall_thickness = 2.1 -support_pattern = lines -support_infill_rate = 20 -support_enable = True -raft_margin = 15 -adhesion_type = raft -infill_sparse_density = 40 -layer_0_z_overlap = 0.22 -raft_base_line_width = 1.6 -speed_print = 40 -support_angle = 45 -cool_min_layer_time = 3 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.8_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.8_normal.inst.cfg deleted file mode 100644 index 177db28c00..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pc_0.8_normal.inst.cfg +++ /dev/null @@ -1,37 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_pc_ultimaker2_extended_plus_0.8_mm -weight = 0 -quality_type = normal - -[values] -support_z_distance = 0.26 -raft_airgap = 0.47 -cool_fan_speed = 50 -raft_surface_line_width = 0.7 -raft_surface_thickness = 0.2 -brim_line_count = 10 -raft_interface_line_spacing = 1.8 -infill_overlap = 5 -layer_height = 0.2 -raft_interface_line_width = 1.6 -top_bottom_thickness = 1.2 -cool_fan_speed_min = 25 -wall_thickness = 2.1 -support_pattern = lines -support_infill_rate = 20 -support_enable = True -raft_margin = 15 -adhesion_type = raft -infill_sparse_density = 40 -layer_0_z_overlap = 0.22 -raft_base_line_width = 1.6 -speed_print = 40 -support_angle = 45 -cool_min_layer_time = 3 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.25_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.25_normal.inst.cfg deleted file mode 100644 index 346df10c44..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.25_normal.inst.cfg +++ /dev/null @@ -1,19 +0,0 @@ -[general] -version = 2 -name = High Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_pla_ultimaker2_extended_plus_0.25_mm -weight = -2 -quality_type = high - -[values] -layer_height = 0.06 -wall_thickness = 0.88 -top_bottom_thickness = 0.72 -infill_sparse_density = 22 -speed_print = 30 -cool_min_layer_time = 5 -cool_min_speed = 10 diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.4_fast.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.4_fast.inst.cfg deleted file mode 100644 index 7bba3a504d..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.4_fast.inst.cfg +++ /dev/null @@ -1,21 +0,0 @@ -[general] -version = 2 -name = Fast Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_pla_ultimaker2_extended_plus_0.4_mm -weight = -1 -quality_type = fast - -[values] -layer_height = 0.15 -wall_thickness = 0.7 -top_bottom_thickness = 0.75 -infill_sparse_density = 18 -speed_print = 60 -speed_travel = 150 -speed_layer_0 = 30 -cool_min_layer_time = 5 -cool_min_speed = 10 diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.4_high.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.4_high.inst.cfg deleted file mode 100644 index 939d099d55..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.4_high.inst.cfg +++ /dev/null @@ -1,19 +0,0 @@ -[general] -version = 2 -name = High Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_pla_ultimaker2_extended_plus_0.4_mm -weight = -3 -quality_type = high - -[values] -layer_height = 0.06 -wall_thickness = 1.05 -top_bottom_thickness = 0.72 -infill_sparse_density = 22 -speed_print = 50 -cool_min_layer_time = 5 -cool_min_speed = 10 diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.4_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.4_normal.inst.cfg deleted file mode 100644 index 7e521e8fe8..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.4_normal.inst.cfg +++ /dev/null @@ -1,19 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_pla_ultimaker2_extended_plus_0.4_mm -weight = -2 -quality_type = normal - -[values] -layer_height = 0.1 -wall_thickness = 1.05 -top_bottom_thickness = 0.8 -infill_sparse_density = 20 -speed_print = 50 -cool_min_layer_time = 5 -cool_min_speed = 10 diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.6_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.6_normal.inst.cfg deleted file mode 100644 index 0745ed891f..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.6_normal.inst.cfg +++ /dev/null @@ -1,19 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -material = generic_pla_ultimaker2_extended_plus_0.6_mm -type = quality -weight = -2 -quality_type = normal - -[values] -layer_height = 0.15 -wall_thickness = 1.59 -top_bottom_thickness = 1.2 -infill_sparse_density = 20 -speed_print = 55 -cool_min_layer_time = 5 -cool_min_speed = 10 diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.8_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.8_normal.inst.cfg deleted file mode 100644 index f5f66dce6c..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_pla_0.8_normal.inst.cfg +++ /dev/null @@ -1,19 +0,0 @@ -[general] -version = 2 -name = Fast Print -definition = ultimaker2_extended_plus - -[metadata] -material = generic_pla_ultimaker2_extended_plus_0.8_mm -type = quality -weight = -2 -quality_type = fast - -[values] -layer_height = 0.2 -wall_thickness = 2.1 -top_bottom_thickness = 1.2 -infill_sparse_density = 20 -speed_print = 40 -cool_min_layer_time = 5 -cool_min_speed = 10 diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_tpu_0.25_high.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_tpu_0.25_high.inst.cfg deleted file mode 100644 index 8af5752063..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_tpu_0.25_high.inst.cfg +++ /dev/null @@ -1,42 +0,0 @@ -[general] -version = 2 -name = High Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_tpu_ultimaker2_extended_plus_0.25_mm -weight = 0 -quality_type = high - -[values] -support_xy_distance = 0.6 -cool_min_speed = 15 -support_infill_rate = 25 -speed_wall_0 = 15 -layer_0_z_overlap = 0.1 -cool_min_layer_time = 7 -speed_layer_0 = 30 -speed_print = 40 -wall_thickness = 0.88 -support_enable = True -speed_topbottom = 35 -raft_surface_line_width = 0.2 -raft_base_line_spacing = 1 -top_bottom_thickness = 1.2 -layer_height = 0.06 -support_angle = 45 -infill_sparse_density = 10 -cool_fan_speed = 60 -speed_travel = 150 -speed_support = 40 -support_z_distance = 0.45 -cool_fan_speed_min = 35 -brim_line_count = 8 -retraction_hop_enabled = 0.2 -speed_wall_x = 38 -raft_airgap = 0.2 -raft_interface_line_spacing = 1 -adhesion_type = brim -raft_interface_line_width = 0.2 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_tpu_0.4_normal.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_tpu_0.4_normal.inst.cfg deleted file mode 100644 index 085c3ffeb4..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_tpu_0.4_normal.inst.cfg +++ /dev/null @@ -1,39 +0,0 @@ -[general] -version = 2 -name = Normal Quality -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_tpu_ultimaker2_extended_plus_0.4_mm -weight = 0 -quality_type = normal - -[values] -support_xy_distance = 0.65 -speed_travel = 150 -support_z_distance = 0.45 -speed_wall_x = 35 -cool_min_speed = 15 -cool_fan_speed = 60 -retraction_hop_enabled = 0.2 -brim_line_count = 8 -speed_layer_0 = 30 -raft_interface_line_spacing = 1 -raft_base_line_spacing = 2 -speed_support = 40 -raft_margin = 12 -cool_fan_speed_min = 35 -wall_thickness = 1.05 -support_infill_rate = 25 -speed_topbottom = 35 -support_enable = True -speed_wall_0 = 20 -adhesion_type = brim -infill_sparse_density = 10 -top_bottom_thickness = 1.2 -speed_print = 40 -support_angle = 45 -cool_min_layer_time = 10 -raft_base_line_width = 0.8 - diff --git a/resources/quality/ultimaker2_extended_plus/um2ep_tpu_0.6_fast.inst.cfg b/resources/quality/ultimaker2_extended_plus/um2ep_tpu_0.6_fast.inst.cfg deleted file mode 100644 index 8a501920d8..0000000000 --- a/resources/quality/ultimaker2_extended_plus/um2ep_tpu_0.6_fast.inst.cfg +++ /dev/null @@ -1,44 +0,0 @@ -[general] -version = 2 -name = Fast Print -definition = ultimaker2_extended_plus - -[metadata] -type = quality -material = generic_tpu_ultimaker2_extended_plus_0.6_mm -weight = 0 -quality_type = fast - -[values] -support_xy_distance = 0.7 -raft_base_line_width = 0.6 -cool_min_speed = 15 -line_width = 0.57 -support_infill_rate = 25 -speed_wall_0 = 15 -wall_thickness = 1.14 -raft_base_line_spacing = 1.2 -speed_layer_0 = 30 -raft_margin = 15 -speed_travel = 150 -raft_surface_line_width = 0.5 -layer_height = 0.12 -raft_interface_line_width = 0.57 -speed_print = 45 -top_bottom_thickness = 1.2 -speed_topbottom = 35 -layer_0_z_overlap = 0.12 -support_angle = 45 -infill_sparse_density = 10 -cool_fan_speed = 60 -speed_support = 40 -support_z_distance = 0.45 -cool_fan_speed_min = 35 -brim_line_count = 8 -retraction_hop_enabled = 0.2 -speed_wall_x = 40 -support_enable = True -raft_interface_line_spacing = 1.2 -adhesion_type = brim -raft_airgap = 0.24 - From 0828d4f1cab5f1934e121b224f2b1cb5a200d017 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 8 Sep 2016 21:11:08 +0200 Subject: [PATCH 12/13] Fix dirty flag of incompatible_materials --- plugins/XmlMaterialProfile/XmlMaterialProfile.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/XmlMaterialProfile/XmlMaterialProfile.py b/plugins/XmlMaterialProfile/XmlMaterialProfile.py index be8f5146c9..caae447ec3 100644 --- a/plugins/XmlMaterialProfile/XmlMaterialProfile.py +++ b/plugins/XmlMaterialProfile/XmlMaterialProfile.py @@ -507,7 +507,9 @@ class XmlMaterialProfile(UM.Settings.InstanceContainer): # Change the type of this container so it is not shown as an option in menus. # This uses InstanceContainer.setMetaDataEntry because otherwise all containers that # share this basefile are also updated. + dirty = self.isDirty() super().setMetaDataEntry("type", "incompatible_material") + super().setDirty(dirty) # reset dirty flag after setMetaDataEntry def _addSettingElement(self, builder, instance): try: From d34f54a3c723687afa82d7ae1431f574ff81b82b Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 9 Sep 2016 10:29:16 +0200 Subject: [PATCH 13/13] Right type is now returned if metadata entry is not found CURA-2242 --- cura/Settings/ContainerManager.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/Settings/ContainerManager.py b/cura/Settings/ContainerManager.py index 27a9bd90dd..08d638033b 100644 --- a/cura/Settings/ContainerManager.py +++ b/cura/Settings/ContainerManager.py @@ -172,7 +172,7 @@ class ContainerManager(QObject): containers = self._container_registry.findContainers(None, id=container_id) if not containers: UM.Logger.log("w", "Could not get metadata of container %s because it was not found.", container_id) - return False + return "" result = containers[0].getMetaDataEntry(entry_name) if result: