Browse Source

Merge branch 'master' of https://github.com/Ultimaker/Cura

fieldOfView 8 years ago
parent
commit
aba027373b

+ 1 - 1
cura/CuraApplication.py

@@ -238,7 +238,7 @@ class CuraApplication(QtApplication):
             support
                 support_enable
                 support_type
-                support_roof_density
+                support_interface_density
             platform_adhesion
                 adhesion_type
                 brim_width

+ 10 - 24
plugins/VersionUpgrade/VersionUpgrade21to22/VersionUpgrade21to22.py

@@ -34,7 +34,14 @@ _setting_name_translations = {
     "skirt_line_width": "skirt_brim_line_width",
     "skirt_minimal_length": "skirt_brim_minimal_length",
     "skirt_speed": "skirt_brim_speed",
-    "speed_support_lines": "speed_support_infill"
+    "speed_support_lines": "speed_support_infill",
+    "speed_support_roof": "speed_support_interface",
+    "support_roof_density": "support_interface_density",
+    "support_roof_enable": "support_interface_enable",
+    "support_roof_extruder_nr": "support_interface_extruder_nr",
+    "support_roof_line_distance": "support_interface_line_distance",
+    "support_roof_line_width": "support_interface_line_width",
+    "support_roof_pattern": "support_interface_pattern"
 }
 
 ##  How to translate variants of specific machines from the old version to the
@@ -146,32 +153,11 @@ class VersionUpgrade21to22(VersionUpgrade):
         for key, value in settings.items():
             if key == "fill_perimeter_gaps": #Setting is removed.
                 del settings[key]
-            elif key == "remove_overlapping_walls_0_enabled": #Setting is functionally replaced.
-                del settings[key]
-                settings["travel_compensate_overlapping_walls_0_enabled"] = value
-            elif key == "remove_overlapping_walls_enabled": #Setting is functionally replaced.
-                del settings[key]
-                settings["travel_compensate_overlapping_walls_enabled"] = value
-            elif key == "remove_overlapping_walls_x_enabled": #Setting is functionally replaced.
-                del settings[key]
-                settings["travel_compensate_overlapping_walls_x_enabled"] = value
             elif key == "retraction_combing": #Combing was made into an enum instead of a boolean.
                 settings[key] = "off" if (value == "False") else "all"
-            elif key == "retraction_hop": #Setting key was changed.
-                del settings[key]
-                settings["retraction_hop_enabled"] = value
-            elif key == "skirt_minimal_length": #Setting key was changed.
-                del settings[key]
-                settings["skirt_brim_minimal_length"] = value
-            elif key == "skirt_line_width": #Setting key was changed.
-                del settings[key]
-                settings["skirt_brim_line_width"] = value
-            elif key == "skirt_speed": #Setting key was changed.
-                del settings[key]
-                settings["skirt_brim_speed"] = value
-            elif key == "speed_support_lines": #Setting key was changed.
+            elif key in _setting_name_translations:
                 del settings[key]
-                settings["speed_support_infill"] = value
+                settings[_setting_name_translations[key]] = value
         return settings
 
     ##  Translates a setting name for the change from Cura 2.1 to 2.2.

+ 73 - 41
resources/definitions/fdmprinter.def.json

@@ -635,16 +635,16 @@
                             "settable_per_mesh": false,
                             "settable_per_extruder": true
                         },
-                        "support_roof_line_width":
+                        "support_interface_line_width":
                         {
-                            "label": "Support Roof Line Width",
-                            "description": "Width of a single support roof line.",
+                            "label": "Support Interface Line Width",
+                            "description": "Width of a single support interface line.",
                             "unit": "mm",
                             "default_value": 0.4,
                             "minimum_value": "0.0001",
                             "maximum_value_warning": "machine_nozzle_size * 2",
                             "type": "float",
-                            "enabled": "support_roof_enable",
+                            "enabled": "support_interface_enable",
                             "value": "line_width",
                             "settable_per_mesh": false,
                             "settable_per_extruder": true
@@ -1463,17 +1463,17 @@
                                     "settable_per_mesh": false,
                                     "settable_per_extruder": true
                                 },
-                                "speed_support_roof":
+                                "speed_support_interface":
                                 {
-                                    "label": "Support Roof Speed",
-                                    "description": "The speed at which the roofs of support are printed. Printing the support roof at lower speeds can improve overhang quality.",
+                                    "label": "Support Interface Speed",
+                                    "description": "The speed at which the roofs and bottoms of support are printed. Printing the them at lower speeds can improve overhang quality.",
                                     "unit": "mm/s",
                                     "type": "float",
                                     "default_value": 40,
                                     "minimum_value": "0.1",
                                     "maximum_value": "299792458000",
                                     "maximum_value_warning": "150",
-                                    "enabled": "support_roof_enable and support_enable",
+                                    "enabled": "support_interface_enable and support_enable",
                                     "value": "speed_support / 1.5",
                                     "settable_per_mesh": false,
                                     "settable_per_extruder": true
@@ -1694,9 +1694,9 @@
                                     "settable_per_mesh": false,
                                     "settable_per_extruder": true
                                 },
-                                "acceleration_support_roof": {
-                                    "label": "Support Roof Acceleration",
-                                    "description": "The acceleration with which the roofs of support are printed. Printing the support roof at lower accelerations can improve overhang quality.",
+                                "acceleration_support_interface": {
+                                    "label": "Support Interface Acceleration",
+                                    "description": "The acceleration with which the roofs and bottoms of support are printed. Printing them at lower accelerations can improve overhang quality.",
                                     "unit": "mm/s²",
                                     "type": "float",
                                     "default_value": 3000,
@@ -1704,7 +1704,7 @@
                                     "minimum_value": "0.1",
                                     "minimum_value_warning": "100",
                                     "maximum_value_warning": "10000",
-                                    "enabled": "acceleration_enabled and support_roof_enable and support_enable",
+                                    "enabled": "acceleration_enabled and support_interface_enable and support_enable",
                                     "settable_per_mesh": false,
                                     "settable_per_extruder": true
                                 }
@@ -1913,9 +1913,9 @@
                                     "settable_per_mesh": false,
                                     "settable_per_extruder": true
                                 },
-                                "jerk_support_roof": {
-                                    "label": "Support Roof Jerk",
-                                    "description": "The maximum instantaneous velocity change with which the roofs of support are printed.",
+                                "jerk_support_interface": {
+                                    "label": "Support Interface Jerk",
+                                    "description": "The maximum instantaneous velocity change with which the roofs and bottoms of support are printed.",
                                     "unit": "mm/s",
                                     "type": "float",
                                     "default_value": 20,
@@ -1923,7 +1923,7 @@
                                     "minimum_value": "0.1",
                                     "minimum_value_warning": "5",
                                     "maximum_value_warning": "50",
-                                    "enabled": "jerk_enabled and support_roof_enable and support_enable",
+                                    "enabled": "jerk_enabled and support_interface_enable and support_enable",
                                     "settable_per_mesh": false,
                                     "settable_per_extruder": true
                                 }
@@ -2437,62 +2437,94 @@
                     "enabled": "support_enable",
                     "settable_per_mesh": true
                 },
-                "support_roof_enable":
+                "support_interface_enable":
                 {
-                    "label": "Enable Support Roof",
-                    "description": "Generate a dense top skin at the top of the support on which the model is printed.",
+                    "label": "Enable Support Interface",
+                    "description": "Generate a dense interface between the model and the support. This will create a skin at the top of the support on which the model is printed and at the bottom of the support, where it rests on the model.",
                     "type": "bool",
                     "default_value": false,
                     "global_inherits_stack": "support_extruder_nr",
                     "enabled": "support_enable",
                     "settable_per_mesh": true
                 },
-                "support_roof_height":
+                "support_interface_height":
                 {
-                    "label": "Support Roof Thickness",
-                    "description": "The thickness of the support roofs.",
+                    "label": "Support Interface Thickness",
+                    "description": "The thickness of the interface of the support where it touches with the model on the bottom or the top.",
                     "unit": "mm",
                     "type": "float",
                     "default_value": 1,
                     "minimum_value": "0",
                     "global_inherits_stack": "support_extruder_nr",
                     "maximum_value_warning": "10",
-                    "enabled": "support_roof_enable and support_enable",
-                    "settable_per_mesh": true
+                    "enabled": "support_interface_enable and support_enable",
+                    "settable_per_mesh": true,
+                    "children":
+                    {
+                        "support_roof_height":
+                        {
+                            "label": "Support Roof Thickness",
+                            "description": "The thickness of the support roofs. This controls the amount of dense layers at the top of the support on which the model rests.",
+                            "unit": "mm",
+                            "type": "float",
+                            "default_value": 1,
+                            "value": "support_interface_height",
+                            "minimum_value": "0",
+                            "global_inherits_stack": "support_extruder_nr",
+                            "maximum_value_warning": "10",
+                            "enabled": "support_interface_enable and support_enable",
+                            "settable_per_mesh": true
+                        },
+                        "support_bottom_height":
+                        {
+                            "label": "Support Bottom Thickness",
+                            "description": "The thickness of the support bottoms. This controls the number of dense layers are printed on top of places of a model on which support rests.",
+                            "unit": "mm",
+                            "type": "float",
+                            "default_value": 1,
+                            "value": "support_interface_height",
+                            "minimum_value": "0",
+                            "minimum_value_warning": "support_bottom_stair_step_height",
+                            "global_inherits_stack": "support_extruder_nr",
+                            "maximum_value_warning": "10",
+                            "enabled": "support_interface_enable and support_enable",
+                            "settable_per_mesh": true
+                        }
+                    }
                 },
-                "support_roof_density":
+                "support_interface_density":
                 {
-                    "label": "Support Roof Density",
-                    "description": "Adjusts the density of the roof of the support structure. A higher value results in better overhangs, but the supports are harder to remove.",
+                    "label": "Support Interface Density",
+                    "description": "Adjusts the density of the roofs and bottoms of the support structure. A higher value results in better overhangs, but the supports are harder to remove.",
                     "unit": "%",
                     "type": "float",
                     "default_value": 100,
                     "minimum_value": "0",
                     "maximum_value_warning": "100",
-                    "enabled":"support_roof_enable and support_enable",
+                    "enabled":"support_interface_enable and support_enable",
                     "settable_per_mesh": false,
                     "settable_per_extruder": true,
                     "children":
                     {
-                        "support_roof_line_distance":
+                        "support_interface_line_distance":
                         {
-                            "label": "Support Roof Line Distance",
-                            "description": "Distance between the printed support roof lines. This setting is calculated by the support roof Density, but can be adjusted separately.",
+                            "label": "Support Interface Line Distance",
+                            "description": "Distance between the printed support interface lines. This setting is calculated by the Support Interface Density, but can be adjusted separately.",
                             "unit": "mm",
                             "type": "float",
                             "default_value": 0.4,
                             "minimum_value": "0",
-                            "value": "0 if support_roof_density == 0 else (support_roof_line_width * 100) / support_roof_density * (2 if support_roof_pattern == \"grid\" else (3 if support_roof_pattern == \"triangles\" else 1))",
-                            "enabled": "support_roof_enable and support_enable",
+                            "value": "0 if support_interface_density == 0 else (support_interface_line_width * 100) / support_interface_density * (2 if support_interface_pattern == \"grid\" else (3 if support_interface_pattern == \"triangles\" else 1))",
+                            "enabled": "support_interface_enable and support_enable",
                             "settable_per_mesh": false,
                             "settable_per_extruder": true
                         }
                     }
                 },
-                "support_roof_pattern":
+                "support_interface_pattern":
                 {
-                    "label": "Support Roof Pattern",
-                    "description": "The pattern with which the top of the support is printed.",
+                    "label": "Support Interface Pattern",
+                    "description": "The pattern with which the interface of the support with the model is printed.",
                     "type": "enum",
                     "options":
                     {
@@ -2503,7 +2535,7 @@
                         "zigzag": "Zig Zag"
                     },
                     "default_value": "concentric",
-                    "enabled": "support_roof_enable and support_enable",
+                    "enabled": "support_interface_enable and support_enable",
                     "settable_per_mesh": false,
                     "settable_per_extruder": true
                 },
@@ -3138,14 +3170,14 @@
                             "settable_per_mesh": false,
                             "settable_per_extruder": false
                         },
-                        "support_roof_extruder_nr":
+                        "support_interface_extruder_nr":
                         {
-                            "label": "Support Roof Extruder",
-                            "description": "The extruder train to use for printing the roof of the support. This is used in multi-extrusion.",
+                            "label": "Support Interface Extruder",
+                            "description": "The extruder train to use for printing the roofs and bottoms of the support. This is used in multi-extrusion.",
                             "type": "extruder",
                             "default_value": "0",
                             "value": "support_extruder_nr",
-                            "enabled": "support_enable and support_roof_enable",
+                            "enabled": "support_enable and support_interface_enable",
                             "settable_per_mesh": false,
                             "settable_per_extruder": false
                         }