diff --git a/cura/Machines/Models/BuildPlateModel.py b/cura/Machines/Models/BuildPlateModel.py index ff623eeca7..fccf4fa44e 100644 --- a/cura/Machines/Models/BuildPlateModel.py +++ b/cura/Machines/Models/BuildPlateModel.py @@ -2,6 +2,7 @@ from PyQt5.QtCore import Qt from UM.Application import Application from UM.Qt.ListModel import ListModel +from UM.Util import parseBool from cura.Machines.VariantManager import VariantType @@ -30,6 +31,11 @@ class BuildPlateModel(ListModel): self.setItems([]) return + has_variants = parseBool(global_stack.getMetaDataEntry("has_variant_buildplates", False)) + if not has_variants: + self.setItems([]) + return + variant_dict = self._variant_manager.getVariantNodes(global_stack, variant_type = VariantType.BUILD_PLATE) item_list = [] diff --git a/cura/Machines/Models/NozzleModel.py b/cura/Machines/Models/NozzleModel.py index 9d1be393cf..19d4a800c8 100644 --- a/cura/Machines/Models/NozzleModel.py +++ b/cura/Machines/Models/NozzleModel.py @@ -5,6 +5,7 @@ from PyQt5.QtCore import Qt from UM.Application import Application from UM.Qt.ListModel import ListModel +from UM.Util import parseBool class NozzleModel(ListModel): @@ -33,6 +34,11 @@ class NozzleModel(ListModel): self.setItems([]) return + has_variants = parseBool(active_global_stack.getMetaDataEntry("has_variants", False)) + if not has_variants: + self.setItems([]) + return + variant_node_dict = variant_manager.getVariantNodes(active_global_stack) if not variant_node_dict: self.setItems([]) diff --git a/resources/definitions/abax_pri3.def.json b/resources/definitions/abax_pri3.def.json index 2fa648096f..f91a501a6f 100644 --- a/resources/definitions/abax_pri3.def.json +++ b/resources/definitions/abax_pri3.def.json @@ -6,7 +6,8 @@ "visible": true, "author": "ABAX 3d Technologies", "manufacturer": "ABAX 3d Technologies", - "file_formats": "text/x-gcode" + "file_formats": "text/x-gcode", + "has_machine_quality": true }, "overrides": { "machine_start_gcode": { diff --git a/resources/definitions/abax_pri5.def.json b/resources/definitions/abax_pri5.def.json index cbebb576b0..b8310221b1 100644 --- a/resources/definitions/abax_pri5.def.json +++ b/resources/definitions/abax_pri5.def.json @@ -6,7 +6,9 @@ "visible": true, "author": "ABAX 3d Technologies", "manufacturer": "ABAX 3d Technologies", - "file_formats": "text/x-gcode" + "file_formats": "text/x-gcode", + "quality_definition": "abax_pri3", + "has_machine_quality": true }, "overrides": { "machine_start_gcode": { diff --git a/resources/quality/abax_pri3/apri3_fast.inst.cfg b/resources/quality/abax_pri3/apri3_fast.inst.cfg new file mode 100644 index 0000000000..7db569ec72 --- /dev/null +++ b/resources/quality/abax_pri3/apri3_fast.inst.cfg @@ -0,0 +1,14 @@ +[general] +version = 2 +name = Fast +definition = abax_pri3 + +[metadata] +setting_version = 4 +type = quality +quality_type = fast +weight = -1 +global_quality = True + +[values] +layer_height = 0.2 diff --git a/resources/quality/abax_pri3/apri3_high.inst.cfg b/resources/quality/abax_pri3/apri3_high.inst.cfg new file mode 100644 index 0000000000..8a95b71a88 --- /dev/null +++ b/resources/quality/abax_pri3/apri3_high.inst.cfg @@ -0,0 +1,14 @@ +[general] +version = 2 +name = Extra Fine +definition = abax_pri3 + +[metadata] +setting_version = 4 +type = quality +quality_type = high +weight = 1 +global_quality = True + +[values] +layer_height = 0.1 diff --git a/resources/quality/abax_pri3/apri3_normal.inst.cfg b/resources/quality/abax_pri3/apri3_normal.inst.cfg new file mode 100644 index 0000000000..29b25d889f --- /dev/null +++ b/resources/quality/abax_pri3/apri3_normal.inst.cfg @@ -0,0 +1,14 @@ +[general] +version = 2 +name = Fine +definition = abax_pri3 + +[metadata] +setting_version = 4 +type = quality +quality_type = normal +weight = 0 +global_quality = True + +[values] +layer_height = 0.2 diff --git a/resources/quality/abax_pri3/apri3_pla_fast.inst.cfg b/resources/quality/abax_pri3/apri3_pla_fast.inst.cfg index 7d1c1bf588..f24f198b2e 100644 --- a/resources/quality/abax_pri3/apri3_pla_fast.inst.cfg +++ b/resources/quality/abax_pri3/apri3_pla_fast.inst.cfg @@ -1,17 +1,16 @@ [general] version = 2 -name = Fine +name = Fast definition = abax_pri3 [metadata] setting_version = 4 type = quality -quality_type = normal +quality_type = fast weight = -1 material = generic_pla [values] -layer_height = 0.2 wall_thickness = 1.05 top_bottom_thickness = 0.8 infill_sparse_density = 20 diff --git a/resources/quality/abax_pri3/apri3_pla_high.inst.cfg b/resources/quality/abax_pri3/apri3_pla_high.inst.cfg index 46a4178dd9..5b4c470842 100644 --- a/resources/quality/abax_pri3/apri3_pla_high.inst.cfg +++ b/resources/quality/abax_pri3/apri3_pla_high.inst.cfg @@ -11,7 +11,6 @@ weight = 1 material = generic_pla [values] -layer_height = 0.1 wall_thickness = 1.05 top_bottom_thickness = 0.8 infill_sparse_density = 20 diff --git a/resources/quality/abax_pri3/apri3_pla_normal.inst.cfg b/resources/quality/abax_pri3/apri3_pla_normal.inst.cfg index 3f6f36cfe6..2df629af38 100644 --- a/resources/quality/abax_pri3/apri3_pla_normal.inst.cfg +++ b/resources/quality/abax_pri3/apri3_pla_normal.inst.cfg @@ -11,7 +11,6 @@ weight = 0 material = generic_pla [values] -layer_height = 0.2 wall_thickness = 1.05 top_bottom_thickness = 0.8 infill_sparse_density = 20 diff --git a/resources/quality/abax_pri5/apri5_pla_fast.inst.cfg b/resources/quality/abax_pri5/apri5_pla_fast.inst.cfg deleted file mode 100644 index 517c767ac5..0000000000 --- a/resources/quality/abax_pri5/apri5_pla_fast.inst.cfg +++ /dev/null @@ -1,22 +0,0 @@ -[general] -version = 2 -name = Fine -definition = abax_pri5 - -[metadata] -setting_version = 4 -type = quality -quality_type = normal -weight = -1 -material = generic_pla - -[values] -layer_height = 0.2 -wall_thickness = 1.05 -top_bottom_thickness = 0.8 -infill_sparse_density = 20 -speed_print = 80 -speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 -cool_min_layer_time = 5 -cool_min_speed = 10 diff --git a/resources/quality/abax_pri5/apri5_pla_high.inst.cfg b/resources/quality/abax_pri5/apri5_pla_high.inst.cfg deleted file mode 100644 index 01699e39f6..0000000000 --- a/resources/quality/abax_pri5/apri5_pla_high.inst.cfg +++ /dev/null @@ -1,22 +0,0 @@ -[general] -version = 2 -name = Extra Fine -definition = abax_pri5 - -[metadata] -setting_version = 4 -type = quality -quality_type = high -weight = 1 -material = generic_pla - -[values] -layer_height = 0.1 -wall_thickness = 1.05 -top_bottom_thickness = 0.8 -infill_sparse_density = 20 -speed_print = 50 -speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 -cool_min_layer_time = 5 -cool_min_speed = 10 diff --git a/resources/quality/abax_pri5/apri5_pla_normal.inst.cfg b/resources/quality/abax_pri5/apri5_pla_normal.inst.cfg deleted file mode 100644 index ea1023dc43..0000000000 --- a/resources/quality/abax_pri5/apri5_pla_normal.inst.cfg +++ /dev/null @@ -1,22 +0,0 @@ -[general] -version = 2 -name = Fine -definition = abax_pri5 - -[metadata] -setting_version = 4 -type = quality -quality_type = normal -weight = 0 -material = generic_pla - -[values] -layer_height = 0.2 -wall_thickness = 1.05 -top_bottom_thickness = 0.8 -infill_sparse_density = 20 -speed_print = 50 -speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 -cool_min_layer_time = 5 -cool_min_speed = 10