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

This commit is contained in:
Jaime van Kessel 2017-04-26 09:56:28 +02:00
commit 1739abbca0
6 changed files with 530 additions and 242 deletions

View File

@ -955,4 +955,4 @@ class BuildVolume(SceneNode):
_tower_settings = ["prime_tower_enable", "prime_tower_size", "prime_tower_position_x", "prime_tower_position_y"] _tower_settings = ["prime_tower_enable", "prime_tower_size", "prime_tower_position_x", "prime_tower_position_y"]
_ooze_shield_settings = ["ooze_shield_enabled", "ooze_shield_dist"] _ooze_shield_settings = ["ooze_shield_enabled", "ooze_shield_dist"]
_distance_settings = ["infill_wipe_dist", "travel_avoid_distance", "support_offset", "support_enable", "travel_avoid_other_parts"] _distance_settings = ["infill_wipe_dist", "travel_avoid_distance", "support_offset", "support_enable", "travel_avoid_other_parts"]
_extruder_settings = ["support_enable", "support_interface_enable", "support_infill_extruder_nr", "support_extruder_nr_layer_0", "support_interface_extruder_nr", "brim_line_count", "adhesion_extruder_nr", "adhesion_type"] #Settings that can affect which extruders are used. _extruder_settings = ["support_enable", "support_bottom_enable", "support_roof_enable", "support_infill_extruder_nr", "support_extruder_nr_layer_0", "support_bottom_extruder_nr", "support_roof_extruder_nr", "brim_line_count", "adhesion_extruder_nr", "adhesion_type"] #Settings that can affect which extruders are used.

View File

@ -404,7 +404,8 @@ class ExtruderManager(QObject):
#Get the extruders of all meshes in the scene. #Get the extruders of all meshes in the scene.
support_enabled = False support_enabled = False
support_interface_enabled = False support_bottom_enabled = False
support_roof_enabled = False
scene_root = Application.getInstance().getController().getScene().getRoot() scene_root = Application.getInstance().getController().getScene().getRoot()
meshes = [node for node in DepthFirstIterator(scene_root) if type(node) is SceneNode and node.isSelectable()] #Only use the nodes that will be printed. meshes = [node for node in DepthFirstIterator(scene_root) if type(node) is SceneNode and node.isSelectable()] #Only use the nodes that will be printed.
for mesh in meshes: for mesh in meshes:
@ -417,18 +418,22 @@ class ExtruderManager(QObject):
per_mesh_stack = mesh.callDecoration("getStack") per_mesh_stack = mesh.callDecoration("getStack")
if per_mesh_stack: if per_mesh_stack:
support_enabled |= per_mesh_stack.getProperty("support_enable", "value") support_enabled |= per_mesh_stack.getProperty("support_enable", "value")
support_interface_enabled |= per_mesh_stack.getProperty("support_interface_enable", "value") support_bottom_enabled |= per_mesh_stack.getProperty("support_bottom_enable", "value")
support_roof_enabled |= per_mesh_stack.getProperty("support_roof_enable", "value")
else: #Take the setting from the build extruder stack. else: #Take the setting from the build extruder stack.
extruder_stack = container_registry.findContainerStacks(id = extruder_stack_id)[0] extruder_stack = container_registry.findContainerStacks(id = extruder_stack_id)[0]
support_enabled |= extruder_stack.getProperty("support_enable", "value") support_enabled |= extruder_stack.getProperty("support_enable", "value")
support_interface_enabled |= extruder_stack.getProperty("support_enable", "value") support_bottom_enabled |= extruder_stack.getProperty("support_bottom_enable", "value")
support_roof_enabled |= extruder_stack.getProperty("support_roof_enable", "value")
#The support extruders. #The support extruders.
if support_enabled: if support_enabled:
used_extruder_stack_ids.add(self.extruderIds[str(global_stack.getProperty("support_infill_extruder_nr", "value"))]) used_extruder_stack_ids.add(self.extruderIds[str(global_stack.getProperty("support_infill_extruder_nr", "value"))])
used_extruder_stack_ids.add(self.extruderIds[str(global_stack.getProperty("support_extruder_nr_layer_0", "value"))]) used_extruder_stack_ids.add(self.extruderIds[str(global_stack.getProperty("support_extruder_nr_layer_0", "value"))])
if support_interface_enabled: if support_bottom_enabled:
used_extruder_stack_ids.add(self.extruderIds[str(global_stack.getProperty("support_interface_extruder_nr", "value"))]) used_extruder_stack_ids.add(self.extruderIds[str(global_stack.getProperty("support_bottom_extruder_nr", "value"))])
if support_roof_enabled:
used_extruder_stack_ids.add(self.extruderIds[str(global_stack.getProperty("support_roof_extruder_nr", "value"))])
#The platform adhesion extruder. Not used if using none. #The platform adhesion extruder. Not used if using none.
if global_stack.getProperty("adhesion_type", "value") != "none": if global_stack.getProperty("adhesion_type", "value") != "none":

View File

@ -746,7 +746,7 @@
"support_interface_line_width": "support_interface_line_width":
{ {
"label": "Support Interface Line Width", "label": "Support Interface Line Width",
"description": "Width of a single support interface line.", "description": "Width of a single line of support roof or floor.",
"unit": "mm", "unit": "mm",
"default_value": 0.4, "default_value": 0.4,
"minimum_value": "0.001", "minimum_value": "0.001",
@ -757,7 +757,42 @@
"limit_to_extruder": "support_interface_extruder_nr", "limit_to_extruder": "support_interface_extruder_nr",
"value": "line_width", "value": "line_width",
"settable_per_mesh": false, "settable_per_mesh": false,
"settable_per_extruder": true "settable_per_extruder": true,
"children":
{
"support_roof_line_width":
{
"label": "Support Roof Line Width",
"description": "Width of a single support roof line.",
"unit": "mm",
"default_value": 0.4,
"minimum_value": "0.001",
"minimum_value_warning": "0.4 * machine_nozzle_size",
"maximum_value_warning": "2 * machine_nozzle_size",
"type": "float",
"enabled": "support_enable and support_roof_enable",
"limit_to_extruder": "support_roof_extruder_nr",
"value": "support_interface_line_width",
"settable_per_mesh": false,
"settable_per_extruder": true
},
"support_bottom_line_width":
{
"label": "Support Floor Line Width",
"description": "Width of a single support floor line.",
"unit": "mm",
"default_value": 0.4,
"minimum_value": "0.001",
"minimum_value_warning": "0.4 * machine_nozzle_size",
"maximum_value_warning": "2 * machine_nozzle_size",
"type": "float",
"enabled": "support_enable and support_bottom_enable",
"limit_to_extruder": "support_bottom_extruder_nr",
"value": "support_interface_line_width",
"settable_per_mesh": false,
"settable_per_extruder": true
}
}
}, },
"prime_tower_line_width": "prime_tower_line_width":
{ {
@ -1923,7 +1958,7 @@
"speed_support_interface": "speed_support_interface":
{ {
"label": "Support Interface Speed", "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.", "description": "The speed at which the roofs and floors of support are printed. Printing them at lower speeds can improve overhang quality.",
"unit": "mm/s", "unit": "mm/s",
"type": "float", "type": "float",
"default_value": 40, "default_value": 40,
@ -1934,7 +1969,42 @@
"limit_to_extruder": "support_interface_extruder_nr", "limit_to_extruder": "support_interface_extruder_nr",
"value": "speed_support / 1.5", "value": "speed_support / 1.5",
"settable_per_mesh": false, "settable_per_mesh": false,
"settable_per_extruder": true "settable_per_extruder": true,
"children":
{
"speed_support_roof":
{
"label": "Support Roof Speed",
"description": "The speed at which the roofs of support are printed. Printing them at lower speeds can improve overhang quality.",
"unit": "mm/s",
"type": "float",
"default_value": 40,
"minimum_value": "0.1",
"maximum_value": "math.sqrt(machine_max_feedrate_x ** 2 + machine_max_feedrate_y ** 2)",
"maximum_value_warning": "150",
"enabled": "extruderValue(support_roof_extruder_nr, 'support_roof_enable') and support_enable",
"limit_to_extruder": "support_roof_extruder_nr",
"value": "speed_support_interface",
"settable_per_mesh": false,
"settable_per_extruder": true
},
"speed_support_bottom":
{
"label": "Support Floor Speed",
"description": "The speed at which the floor of support is printed. Printing it at lower speed can improve adhesion of support on top of your model.",
"unit": "mm/s",
"type": "float",
"default_value": 40,
"minimum_value": "0.1",
"maximum_value": "math.sqrt(machine_max_feedrate_x ** 2 + machine_max_feedrate_y ** 2)",
"maximum_value_warning": "150",
"enabled": "extruderValue(support_bottom_extruder_nr, 'support_bottom_enable') and support_enable",
"limit_to_extruder": "support_bottom_extruder_nr",
"value": "speed_support_interface",
"settable_per_mesh": false,
"settable_per_extruder": true
}
}
} }
} }
}, },
@ -2209,7 +2279,7 @@
"acceleration_support_interface": "acceleration_support_interface":
{ {
"label": "Support Interface Acceleration", "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.", "description": "The acceleration with which the roofs and floors of support are printed. Printing them at lower acceleration can improve overhang quality.",
"unit": "mm/s²", "unit": "mm/s²",
"type": "float", "type": "float",
"default_value": 3000, "default_value": 3000,
@ -2220,7 +2290,42 @@
"enabled": "resolveOrValue('acceleration_enabled') and extruderValue(support_interface_extruder_nr, 'support_interface_enable') and support_enable", "enabled": "resolveOrValue('acceleration_enabled') and extruderValue(support_interface_extruder_nr, 'support_interface_enable') and support_enable",
"limit_to_extruder": "support_interface_extruder_nr", "limit_to_extruder": "support_interface_extruder_nr",
"settable_per_mesh": false, "settable_per_mesh": false,
"settable_per_extruder": true "settable_per_extruder": true,
"children":
{
"acceleration_support_roof":
{
"label": "Support Roof Acceleration",
"description": "The acceleration with which the roofs of support are printed. Printing them at lower acceleration can improve overhang quality.",
"unit": "mm/s²",
"type": "float",
"default_value": 3000,
"value": "acceleration_support_interface",
"minimum_value": "0.1",
"minimum_value_warning": "100",
"maximum_value_warning": "10000",
"enabled": "resolveOrValue('acceleration_enabled') and extruderValue(support_roof_extruder_nr, 'support_roof_enable') and support_enable",
"limit_to_extruder": "support_roof_extruder_nr",
"settable_per_mesh": false,
"settable_per_extruder": true
},
"acceleration_support_bottom":
{
"label": "Support Floor Acceleration",
"description": "The acceleration with which the floors of support are printed. Printing them at lower acceleration can improve adhesion of support on top of your model.",
"unit": "mm/s²",
"type": "float",
"default_value": 3000,
"value": "acceleration_support_interface",
"minimum_value": "0.1",
"minimum_value_warning": "100",
"maximum_value_warning": "10000",
"enabled": "resolveOrValue('acceleration_enabled') and extruderValue(support_bottom_extruder_nr, 'support_bottom_enable') and support_enable",
"limit_to_extruder": "support_bottom_extruder_nr",
"settable_per_mesh": false,
"settable_per_extruder": true
}
}
} }
} }
}, },
@ -2440,7 +2545,7 @@
"jerk_support_interface": "jerk_support_interface":
{ {
"label": "Support Interface Jerk", "label": "Support Interface Jerk",
"description": "The maximum instantaneous velocity change with which the roofs and bottoms of support are printed.", "description": "The maximum instantaneous velocity change with which the roofs and floors of support are printed.",
"unit": "mm/s", "unit": "mm/s",
"type": "float", "type": "float",
"default_value": 20, "default_value": 20,
@ -2450,7 +2555,42 @@
"enabled": "resolveOrValue('jerk_enabled') and extruderValue(support_interface_extruder_nr, 'support_interface_enable') and support_enable", "enabled": "resolveOrValue('jerk_enabled') and extruderValue(support_interface_extruder_nr, 'support_interface_enable') and support_enable",
"limit_to_extruder": "support_interface_extruder_nr", "limit_to_extruder": "support_interface_extruder_nr",
"settable_per_mesh": false, "settable_per_mesh": false,
"settable_per_extruder": true "settable_per_extruder": true,
"children":
{
"jerk_support_roof":
{
"label": "Support Roof Jerk",
"description": "The maximum instantaneous velocity change with which the roofs of support are printed.",
"unit": "mm/s",
"type": "float",
"default_value": 20,
"value": "jerk_support_interface",
"minimum_value": "0.1",
"minimum_value_warning": "5",
"maximum_value_warning": "50",
"enabled": "resolveOrValue('jerk_enabled') and extruderValue(support_roof_extruder_nr, 'support_roof_enable') and support_enable",
"limit_to_extruder": "support_roof_extruder_nr",
"settable_per_mesh": false,
"settable_per_extruder": true
},
"jerk_support_bottom":
{
"label": "Support Floor Jerk",
"description": "The maximum instantaneous velocity change with which the floors of support are printed.",
"unit": "mm/s",
"type": "float",
"default_value": 20,
"value": "jerk_support_interface",
"minimum_value": "0.1",
"minimum_value_warning": "5",
"maximum_value_warning": "50",
"enabled": "resolveOrValue('jerk_enabled') and extruderValue(support_bottom_extruder_nr, 'support_bottom_enable') and support_enable",
"limit_to_extruder": "support_bottom_extruder_nr",
"settable_per_mesh": false,
"settable_per_extruder": true
}
}
} }
} }
}, },
@ -2878,13 +3018,38 @@
"support_interface_extruder_nr": "support_interface_extruder_nr":
{ {
"label": "Support Interface Extruder", "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.", "description": "The extruder train to use for printing the roofs and floors of the support. This is used in multi-extrusion.",
"type": "extruder", "type": "extruder",
"default_value": "0", "default_value": "0",
"value": "support_extruder_nr", "value": "support_extruder_nr",
"enabled": "support_enable and machine_extruder_count > 1", "enabled": "support_enable and machine_extruder_count > 1",
"settable_per_mesh": false, "settable_per_mesh": false,
"settable_per_extruder": false "settable_per_extruder": false,
"children":
{
"support_roof_extruder_nr":
{
"label": "Support Roof Extruder",
"description": "The extruder train to use for printing the roofs of the support. This is used in multi-extrusion.",
"type": "extruder",
"default_value": "0",
"value": "support_interface_extruder_nr",
"enabled": "support_enable and machine_extruder_count > 1",
"settable_per_mesh": false,
"settable_per_extruder": false
},
"support_bottom_extruder_nr":
{
"label": "Support Floor Extruder",
"description": "The extruder train to use for printing the floors of the support. This is used in multi-extrusion.",
"type": "extruder",
"default_value": "0",
"value": "support_interface_extruder_nr",
"enabled": "support_enable and machine_extruder_count > 1",
"settable_per_mesh": false,
"settable_per_extruder": false
}
}
} }
} }
}, },
@ -2914,7 +3079,7 @@
"maximum_value": "90", "maximum_value": "90",
"maximum_value_warning": "80", "maximum_value_warning": "80",
"default_value": 50, "default_value": 50,
"limit_to_extruder": "support_interface_extruder_nr if support_interface_enable else support_infill_extruder_nr", "limit_to_extruder": "support_roof_extruder_nr if support_roof_enable else support_infill_extruder_nr",
"enabled": "support_enable", "enabled": "support_enable",
"settable_per_mesh": true "settable_per_mesh": true
}, },
@ -3006,7 +3171,7 @@
"type": "float", "type": "float",
"enabled": "support_enable", "enabled": "support_enable",
"value": "extruderValue(support_extruder_nr, 'support_z_distance')", "value": "extruderValue(support_extruder_nr, 'support_z_distance')",
"limit_to_extruder": "support_interface_extruder_nr if support_interface_enable else support_infill_extruder_nr", "limit_to_extruder": "support_roof_extruder_nr if support_roof_enable else support_infill_extruder_nr",
"settable_per_mesh": true "settable_per_mesh": true
}, },
"support_bottom_distance": "support_bottom_distance":
@ -3018,7 +3183,7 @@
"maximum_value_warning": "machine_nozzle_size", "maximum_value_warning": "machine_nozzle_size",
"default_value": 0.1, "default_value": 0.1,
"value": "extruderValue(support_extruder_nr, 'support_z_distance') if resolveOrValue('support_type') == 'everywhere' else 0", "value": "extruderValue(support_extruder_nr, 'support_z_distance') if resolveOrValue('support_type') == 'everywhere' else 0",
"limit_to_extruder": "support_interface_extruder_nr if support_interface_enable else support_infill_extruder_nr", "limit_to_extruder": "support_bottom_extruder_nr if support_bottom_enable else support_infill_extruder_nr",
"type": "float", "type": "float",
"enabled": "support_enable and resolveOrValue('support_type') == 'everywhere'", "enabled": "support_enable and resolveOrValue('support_type') == 'everywhere'",
"settable_per_mesh": true "settable_per_mesh": true
@ -3074,7 +3239,7 @@
"unit": "mm", "unit": "mm",
"type": "float", "type": "float",
"default_value": 0.3, "default_value": 0.3,
"limit_to_extruder": "support_interface_extruder_nr if support_interface_enable else support_infill_extruder_nr", "limit_to_extruder": "support_bottom_extruder_nr if support_bottom_enable else support_infill_extruder_nr",
"minimum_value": "0", "minimum_value": "0",
"maximum_value_warning": "1.0", "maximum_value_warning": "1.0",
"enabled": "support_enable", "enabled": "support_enable",
@ -3114,7 +3279,32 @@
"default_value": false, "default_value": false,
"limit_to_extruder": "support_interface_extruder_nr", "limit_to_extruder": "support_interface_extruder_nr",
"enabled": "support_enable", "enabled": "support_enable",
"settable_per_mesh": true "settable_per_mesh": true,
"children":
{
"support_roof_enable":
{
"label": "Enable Support Roof",
"description": "Generate a dense slab of material between the top of support and the model. This will create a skin between the model and support.",
"type": "bool",
"default_value": false,
"value": "support_interface_enable",
"limit_to_extruder": "support_roof_extruder_nr",
"enabled": "support_enable",
"settable_per_mesh": true
},
"support_bottom_enable":
{
"label": "Enable Support Floor",
"description": "Generate a dense slab of material between the bottom of the support and the model. This will create a skin between the model and support.",
"type": "bool",
"default_value": false,
"value": "support_interface_enable",
"limit_to_extruder": "support_bottom_extruder_nr",
"enabled": "support_enable",
"settable_per_mesh": true
}
}
}, },
"support_interface_height": "support_interface_height":
{ {
@ -3141,32 +3331,31 @@
"minimum_value": "0", "minimum_value": "0",
"minimum_value_warning": "0.2 + resolveOrValue('layer_height')", "minimum_value_warning": "0.2 + resolveOrValue('layer_height')",
"maximum_value_warning": "10", "maximum_value_warning": "10",
"value": "extruderValue(support_interface_extruder_nr, 'support_interface_height')", "value": "extruderValue(support_roof_extruder_nr, 'support_interface_height')",
"limit_to_extruder": "support_interface_extruder_nr", "limit_to_extruder": "support_roof_extruder_nr",
"enabled": "extruderValue(support_interface_extruder_nr, 'support_interface_enable') and support_enable", "enabled": "extruderValue(support_roof_extruder_nr, 'support_roof_enable') and support_enable",
"settable_per_mesh": true "settable_per_mesh": true
}, },
"support_bottom_height": "support_bottom_height":
{ {
"label": "Support Bottom Thickness", "label": "Support Floor 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.", "description": "The thickness of the support floors. This controls the number of dense layers that are printed on top of places of a model on which support rests.",
"unit": "mm", "unit": "mm",
"type": "float", "type": "float",
"default_value": 1, "default_value": 1,
"value": "extruderValue(support_interface_extruder_nr, 'support_interface_height')", "value": "extruderValue(support_bottom_extruder_nr, 'support_interface_height')",
"minimum_value": "0", "minimum_value": "0",
"minimum_value_warning": "min(0.2 + resolveOrValue('layer_height'), extruderValue(support_interface_extruder_nr, 'support_bottom_stair_step_height'))", "minimum_value_warning": "min(0.2 + resolveOrValue('layer_height'), extruderValue(support_bottom_extruder_nr, 'support_bottom_stair_step_height'))",
"maximum_value_warning": "10", "maximum_value_warning": "10",
"limit_to_extruder": "support_interface_extruder_nr", "limit_to_extruder": "support_bottom_extruder_nr",
"enabled": "extruderValue(support_interface_extruder_nr, 'support_interface_enable') and support_enable", "enabled": "extruderValue(support_bottom_extruder_nr, 'support_bottom_enable') and support_enable",
"settable_per_mesh": true "settable_per_mesh": true
} }
} }
}, },
"support_interface_skip_height": "support_interface_skip_height": {
{
"label": "Support Interface Resolution", "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.", "description": "When checking where there's model above and below 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", "unit": "mm",
"type": "float", "type": "float",
"default_value": 0.3, "default_value": 0.3,
@ -3179,7 +3368,7 @@
"support_interface_density": "support_interface_density":
{ {
"label": "Support Interface Density", "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.", "description": "Adjusts the density of the roofs and floors of the support structure. A higher value results in better overhangs, but the supports are harder to remove.",
"unit": "%", "unit": "%",
"type": "float", "type": "float",
"default_value": 100, "default_value": 100,
@ -3191,20 +3380,69 @@
"settable_per_extruder": true, "settable_per_extruder": true,
"children": "children":
{ {
"support_interface_line_distance": "support_roof_density":
{ {
"label": "Support Interface Line Distance", "label": "Support Roof Density",
"description": "Distance between the printed support interface lines. This setting is calculated by the Support Interface Density, but can be adjusted separately.", "description": "The density of the roofs of the support structure. A higher value results in better overhangs, but the supports are harder to remove.",
"unit": "mm", "unit": "%",
"type": "float", "type": "float",
"default_value": 0.4, "default_value": 100,
"minimum_value": "0", "minimum_value": "0",
"minimum_value_warning": "support_interface_line_width - 0.0001", "maximum_value": "100",
"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))", "limit_to_extruder": "support_roof_extruder_nr",
"limit_to_extruder": "support_interface_extruder_nr", "enabled": "extruderValue(support_roof_extruder_nr, 'support_roof_enable') and support_enable",
"enabled": "extruderValue(support_interface_extruder_nr, 'support_interface_enable') and support_enable",
"settable_per_mesh": false, "settable_per_mesh": false,
"settable_per_extruder": true "settable_per_extruder": true,
"children":
{
"support_roof_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.",
"unit": "mm",
"type": "float",
"default_value": 0.4,
"minimum_value": "0",
"minimum_value_warning": "support_roof_line_width - 0.0001",
"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))",
"limit_to_extruder": "support_roof_extruder_nr",
"enabled": "extruderValue(support_roof_extruder_nr, 'support_roof_enable') and support_enable",
"settable_per_mesh": false,
"settable_per_extruder": true
}
}
},
"support_bottom_density":
{
"label": "Support Floor Density",
"description": "The density of the floors of the support structure. A higher value results in better adhesion of the support on top of the model.",
"unit": "%",
"type": "float",
"default_value": 100,
"minimum_value": "0",
"maximum_value": "100",
"limit_to_extruder": "support_bottom_extruder_nr",
"enabled": "extruderValue(support_bottom_extruder_nr, 'support_bottom_enable') and support_enable",
"settable_per_mesh": false,
"settable_per_extruder": true,
"children":
{
"support_bottom_line_distance":
{
"label": "Support Floor Line Distance",
"description": "Distance between the printed support floor lines. This setting is calculated by the Support Floor Density, but can be adjusted separately.",
"unit": "mm",
"type": "float",
"default_value": 0.4,
"minimum_value": "0",
"minimum_value_warning": "support_bottom_line_width - 0.0001",
"value": "0 if support_bottom_density == 0 else (support_bottom_line_width * 100) / support_bottom_density * (2 if support_bottom_pattern == 'grid' else (3 if support_bottom_pattern == 'triangles' else 1))",
"limit_to_extruder": "support_bottom_extruder_nr",
"enabled": "extruderValue(support_bottom_extruder_nr, 'support_bottom_enable') and support_enable",
"settable_per_mesh": false,
"settable_per_extruder": true
}
}
} }
} }
}, },
@ -3226,7 +3464,52 @@
"limit_to_extruder": "support_interface_extruder_nr", "limit_to_extruder": "support_interface_extruder_nr",
"enabled": "extruderValue(support_interface_extruder_nr, 'support_interface_enable') and support_enable", "enabled": "extruderValue(support_interface_extruder_nr, 'support_interface_enable') and support_enable",
"settable_per_mesh": false, "settable_per_mesh": false,
"settable_per_extruder": true "settable_per_extruder": true,
"children":
{
"support_roof_pattern":
{
"label": "Support Roof Pattern",
"description": "The pattern with which the roofs of the support are printed.",
"type": "enum",
"options":
{
"lines": "Lines",
"grid": "Grid",
"triangles": "Triangles",
"concentric": "Concentric",
"concentric_3d": "Concentric 3D",
"zigzag": "Zig Zag"
},
"default_value": "concentric",
"value": "support_interface_pattern",
"limit_to_extruder": "support_roof_extruder_nr",
"enabled": "extruderValue(support_roof_extruder_nr, 'support_roof_enable') and support_enable",
"settable_per_mesh": false,
"settable_per_extruder": true
},
"support_bottom_pattern":
{
"label": "Support Floor Pattern",
"description": "The pattern with which the floors of the support are printed.",
"type": "enum",
"options":
{
"lines": "Lines",
"grid": "Grid",
"triangles": "Triangles",
"concentric": "Concentric",
"concentric_3d": "Concentric 3D",
"zigzag": "Zig Zag"
},
"default_value": "concentric",
"value": "support_interface_pattern",
"limit_to_extruder": "support_bottom_extruder_nr",
"enabled": "extruderValue(support_bottom_extruder_nr, 'support_bottom_enable') and support_enable",
"settable_per_mesh": false,
"settable_per_extruder": true
}
}
}, },
"support_use_towers": "support_use_towers":
{ {

View File

@ -1,66 +1,66 @@
[general] [general]
version = 2 version = 2
name = Draft Print name = Draft Print
definition = ultimaker3 definition = ultimaker3
[metadata] [metadata]
type = quality type = quality
quality_type = draft quality_type = draft
material = generic_pc_ultimaker3_AA_0.4 material = generic_pc_ultimaker3_AA_0.4
weight = -2 weight = -2
[values] [values]
acceleration_enabled = True acceleration_enabled = True
acceleration_print = 4000 acceleration_print = 4000
adhesion_type = raft adhesion_type = raft
brim_width = 20 brim_width = 20
cool_fan_full_at_height = =layer_height_0 + layer_height cool_fan_full_at_height = =layer_height_0 + layer_height
cool_fan_speed_max = 90 cool_fan_speed_max = 90
cool_min_layer_time_fan_speed_max = 5 cool_min_layer_time_fan_speed_max = 5
cool_min_speed = 6 cool_min_speed = 6
infill_line_width = =round(line_width * 0.4 / 0.35, 2) infill_line_width = =round(line_width * 0.4 / 0.35, 2)
infill_overlap = 0 infill_overlap = 0
infill_overlap_mm = 0.05 infill_overlap_mm = 0.05
infill_pattern = triangles infill_pattern = triangles
infill_wipe_dist = 0.1 infill_wipe_dist = 0.1
jerk_enabled = True jerk_enabled = True
jerk_print = 25 jerk_print = 25
layer_height = 0.2 layer_height = 0.2
machine_min_cool_heat_time_window = 15 machine_min_cool_heat_time_window = 15
machine_nozzle_cool_down_speed = 0.85 machine_nozzle_cool_down_speed = 0.85
machine_nozzle_heat_up_speed = 1.5 machine_nozzle_heat_up_speed = 1.5
material_final_print_temperature = =material_print_temperature - 10 material_final_print_temperature = =material_print_temperature - 10
material_initial_print_temperature = =material_print_temperature - 5 material_initial_print_temperature = =material_print_temperature - 5
material_print_temperature = =default_material_print_temperature + 10 material_print_temperature = =default_material_print_temperature + 10
material_standby_temperature = 100 material_standby_temperature = 100
multiple_mesh_overlap = 0 multiple_mesh_overlap = 0
ooze_shield_angle = 40 ooze_shield_angle = 40
prime_tower_enable = True prime_tower_enable = True
prime_tower_size = 16 prime_tower_size = 16
prime_tower_wipe_enabled = True prime_tower_wipe_enabled = True
raft_airgap = 0.25 raft_airgap = 0.25
retraction_count_max = 80 retraction_count_max = 80
retraction_extrusion_window = 1 retraction_extrusion_window = 1
retraction_hop = 2 retraction_hop = 2
retraction_hop_enabled = True retraction_hop_enabled = True
retraction_hop_only_when_collides = True retraction_hop_only_when_collides = True
retraction_min_travel = 0.8 retraction_min_travel = 0.8
retraction_prime_speed = 15 retraction_prime_speed = 15
skin_overlap = 30 skin_overlap = 30
speed_layer_0 = 25 speed_layer_0 = 25
speed_print = 50 speed_print = 50
speed_topbottom = 25 speed_topbottom = 25
speed_travel = 250 speed_travel = 250
speed_wall = =math.ceil(speed_print * 40 / 50) speed_wall = =math.ceil(speed_print * 40 / 50)
speed_wall_0 = =math.ceil(speed_wall * 25 / 40) speed_wall_0 = =math.ceil(speed_wall * 25 / 40)
support_bottom_distance = =support_z_distance support_bottom_distance = =support_z_distance
support_interface_density = 87.5 support_interface_density = 87.5
support_interface_pattern = lines support_interface_pattern = lines
switch_extruder_prime_speed = 15 switch_extruder_prime_speed = 15
switch_extruder_retraction_amount = 20 switch_extruder_retraction_amount = 20
switch_extruder_retraction_speeds = 35 switch_extruder_retraction_speeds = 35
travel_avoid_distance = 3 travel_avoid_distance = 3
wall_0_inset = 0 wall_0_inset = 0
wall_line_width_x = =round(line_width * 0.4 / 0.35, 2) wall_line_width_x = =round(line_width * 0.4 / 0.35, 2)
wall_thickness = 1.2 wall_thickness = 1.2
xy_offset = -0.15 xy_offset = -0.15

View File

@ -1,65 +1,65 @@
[general] [general]
version = 2 version = 2
name = Fast Print name = Fast Print
definition = ultimaker3 definition = ultimaker3
[metadata] [metadata]
type = quality type = quality
quality_type = fast quality_type = fast
material = generic_pc_ultimaker3_AA_0.4 material = generic_pc_ultimaker3_AA_0.4
weight = -1 weight = -1
[values] [values]
acceleration_enabled = True acceleration_enabled = True
acceleration_print = 4000 acceleration_print = 4000
adhesion_type = raft adhesion_type = raft
brim_width = 20 brim_width = 20
cool_fan_full_at_height = =layer_height_0 + layer_height cool_fan_full_at_height = =layer_height_0 + layer_height
cool_fan_speed_max = 85 cool_fan_speed_max = 85
cool_min_layer_time_fan_speed_max = 5 cool_min_layer_time_fan_speed_max = 5
cool_min_speed = 7 cool_min_speed = 7
infill_line_width = =round(line_width * 0.4 / 0.35, 2) infill_line_width = =round(line_width * 0.4 / 0.35, 2)
infill_overlap_mm = 0.05 infill_overlap_mm = 0.05
infill_pattern = triangles infill_pattern = triangles
infill_wipe_dist = 0.1 infill_wipe_dist = 0.1
jerk_enabled = True jerk_enabled = True
jerk_print = 25 jerk_print = 25
layer_height = 0.15 layer_height = 0.15
machine_min_cool_heat_time_window = 15 machine_min_cool_heat_time_window = 15
machine_nozzle_cool_down_speed = 0.85 machine_nozzle_cool_down_speed = 0.85
machine_nozzle_heat_up_speed = 1.5 machine_nozzle_heat_up_speed = 1.5
material_final_print_temperature = =material_print_temperature - 10 material_final_print_temperature = =material_print_temperature - 10
material_initial_print_temperature = =material_print_temperature - 5 material_initial_print_temperature = =material_print_temperature - 5
material_print_temperature = =default_material_print_temperature + 10 material_print_temperature = =default_material_print_temperature + 10
material_standby_temperature = 100 material_standby_temperature = 100
multiple_mesh_overlap = 0 multiple_mesh_overlap = 0
ooze_shield_angle = 40 ooze_shield_angle = 40
prime_tower_enable = True prime_tower_enable = True
prime_tower_size = 16 prime_tower_size = 16
prime_tower_wipe_enabled = True prime_tower_wipe_enabled = True
raft_airgap = 0.25 raft_airgap = 0.25
retraction_count_max = 80 retraction_count_max = 80
retraction_extrusion_window = 1 retraction_extrusion_window = 1
retraction_hop = 2 retraction_hop = 2
retraction_hop_enabled = True retraction_hop_enabled = True
retraction_hop_only_when_collides = True retraction_hop_only_when_collides = True
retraction_min_travel = 0.8 retraction_min_travel = 0.8
retraction_prime_speed = 15 retraction_prime_speed = 15
skin_overlap = 30 skin_overlap = 30
speed_layer_0 = 25 speed_layer_0 = 25
speed_print = 50 speed_print = 50
speed_topbottom = 25 speed_topbottom = 25
speed_travel = 250 speed_travel = 250
speed_wall = =math.ceil(speed_print * 40 / 50) speed_wall = =math.ceil(speed_print * 40 / 50)
speed_wall_0 = =math.ceil(speed_wall * 25 / 40) speed_wall_0 = =math.ceil(speed_wall * 25 / 40)
support_bottom_distance = =support_z_distance support_bottom_distance = =support_z_distance
support_interface_density = 87.5 support_interface_density = 87.5
support_interface_pattern = lines support_interface_pattern = lines
switch_extruder_prime_speed = 15 switch_extruder_prime_speed = 15
switch_extruder_retraction_amount = 20 switch_extruder_retraction_amount = 20
switch_extruder_retraction_speeds = 35 switch_extruder_retraction_speeds = 35
travel_avoid_distance = 3 travel_avoid_distance = 3
wall_0_inset = 0 wall_0_inset = 0
wall_line_width_x = =round(line_width * 0.4 / 0.35, 2) wall_line_width_x = =round(line_width * 0.4 / 0.35, 2)
wall_thickness = 1.2 wall_thickness = 1.2
xy_offset = -0.15 xy_offset = -0.15

View File

@ -1,66 +1,66 @@
[general] [general]
version = 2 version = 2
name = High Quality name = High Quality
definition = ultimaker3 definition = ultimaker3
[metadata] [metadata]
type = quality type = quality
quality_type = high quality_type = high
material = generic_pc_ultimaker3_AA_0.4 material = generic_pc_ultimaker3_AA_0.4
weight = 1 weight = 1
[values] [values]
acceleration_enabled = True acceleration_enabled = True
acceleration_print = 4000 acceleration_print = 4000
adhesion_type = raft adhesion_type = raft
brim_width = 20 brim_width = 20
cool_fan_full_at_height = =layer_height_0 + layer_height cool_fan_full_at_height = =layer_height_0 + layer_height
cool_fan_speed_max = 50 cool_fan_speed_max = 50
cool_min_layer_time_fan_speed_max = 5 cool_min_layer_time_fan_speed_max = 5
cool_min_speed = 8 cool_min_speed = 8
infill_line_width = =round(line_width * 0.4 / 0.35, 2) infill_line_width = =round(line_width * 0.4 / 0.35, 2)
infill_overlap = 0 infill_overlap = 0
infill_overlap_mm = 0.05 infill_overlap_mm = 0.05
infill_pattern = triangles infill_pattern = triangles
infill_wipe_dist = 0.1 infill_wipe_dist = 0.1
jerk_enabled = True jerk_enabled = True
jerk_print = 25 jerk_print = 25
layer_height = 0.06 layer_height = 0.06
machine_min_cool_heat_time_window = 15 machine_min_cool_heat_time_window = 15
machine_nozzle_cool_down_speed = 0.85 machine_nozzle_cool_down_speed = 0.85
machine_nozzle_heat_up_speed = 1.5 machine_nozzle_heat_up_speed = 1.5
material_final_print_temperature = =material_print_temperature - 10 material_final_print_temperature = =material_print_temperature - 10
material_initial_print_temperature = =material_print_temperature - 5 material_initial_print_temperature = =material_print_temperature - 5
material_print_temperature = =default_material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 10
material_standby_temperature = 100 material_standby_temperature = 100
multiple_mesh_overlap = 0 multiple_mesh_overlap = 0
ooze_shield_angle = 40 ooze_shield_angle = 40
prime_tower_enable = True prime_tower_enable = True
prime_tower_size = 16 prime_tower_size = 16
prime_tower_wipe_enabled = True prime_tower_wipe_enabled = True
raft_airgap = 0.25 raft_airgap = 0.25
retraction_count_max = 80 retraction_count_max = 80
retraction_extrusion_window = 1 retraction_extrusion_window = 1
retraction_hop = 2 retraction_hop = 2
retraction_hop_enabled = True retraction_hop_enabled = True
retraction_hop_only_when_collides = True retraction_hop_only_when_collides = True
retraction_min_travel = 0.8 retraction_min_travel = 0.8
retraction_prime_speed = 15 retraction_prime_speed = 15
skin_overlap = 30 skin_overlap = 30
speed_layer_0 = 25 speed_layer_0 = 25
speed_print = 50 speed_print = 50
speed_topbottom = 25 speed_topbottom = 25
speed_travel = 250 speed_travel = 250
speed_wall = =math.ceil(speed_print * 40 / 50) speed_wall = =math.ceil(speed_print * 40 / 50)
speed_wall_0 = =math.ceil(speed_wall * 25 / 40) speed_wall_0 = =math.ceil(speed_wall * 25 / 40)
support_bottom_distance = =support_z_distance support_bottom_distance = =support_z_distance
support_interface_density = 87.5 support_interface_density = 87.5
support_interface_pattern = lines support_interface_pattern = lines
switch_extruder_prime_speed = 15 switch_extruder_prime_speed = 15
switch_extruder_retraction_amount = 20 switch_extruder_retraction_amount = 20
switch_extruder_retraction_speeds = 35 switch_extruder_retraction_speeds = 35
travel_avoid_distance = 3 travel_avoid_distance = 3
wall_0_inset = 0 wall_0_inset = 0
wall_line_width_x = =round(line_width * 0.4 / 0.35, 2) wall_line_width_x = =round(line_width * 0.4 / 0.35, 2)
wall_thickness = 1.2 wall_thickness = 1.2
xy_offset = -0.15 xy_offset = -0.15