mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-04-10 11:20:40 +08:00
Merge branch '5.10' into CURA-12458_security-fixes-that-came-in-via-the-inbox
This commit is contained in:
commit
79dfb7bd23
@ -1,15 +1,15 @@
|
||||
version: "5.10.0-beta.1"
|
||||
version: "5.10.0"
|
||||
requirements:
|
||||
- "cura_resources/5.10.0-beta.1"
|
||||
- "uranium/5.10.0-beta.1"
|
||||
- "curaengine/5.10.0-beta.1"
|
||||
- "cura_binary_data/5.10.0-beta.1"
|
||||
- "fdm_materials/5.10.0-beta.1"
|
||||
- "cura_resources/5.10.0"
|
||||
- "uranium/5.10.0"
|
||||
- "curaengine/5.10.0"
|
||||
- "cura_binary_data/5.10.0"
|
||||
- "fdm_materials/5.10.0"
|
||||
- "dulcificum/5.10.0"
|
||||
- "pysavitar/5.10.0"
|
||||
- "pynest2d/5.10.0"
|
||||
requirements_internal:
|
||||
- "fdm_materials/5.10.0-beta.1"
|
||||
- "fdm_materials/5.10.0"
|
||||
- "cura_private_data/5.10.0-alpha.0@internal/testing"
|
||||
requirements_enterprise:
|
||||
- "native_cad_plugin/2.0.0"
|
||||
|
@ -449,6 +449,6 @@ class PrintInformation(QObject):
|
||||
"""If this is a sort of output 'device' (like local or online file storage, rather than a printer),
|
||||
the user could have altered the file-name, and thus the project name should be altered as well."""
|
||||
if isinstance(output_device, ProjectOutputDevice):
|
||||
new_name = output_device.getLastOutputName()
|
||||
new_name = output_device.popLastOutputName()
|
||||
if new_name is not None:
|
||||
self.setJobName(os.path.splitext(os.path.basename(new_name))[0])
|
||||
|
@ -163,11 +163,21 @@ class PurgeLinesAndUnload(Script):
|
||||
"move_to_start":
|
||||
{
|
||||
"label": "Circle around to layer start ⚠️",
|
||||
"description": "Depending on where the 'Layer Start X' and 'Layer Start Y' are for the print, the opening travel move can pass across the print area and leave a string there. This option will generate an orthogonal path that moves the nozzle around the edges of the build plate and then comes in to the Start Point. || ⚠️ || The nozzle will drop to Z0.0 and touch the build plate at each stop in order to 'nail down the string' so it doesn't follow in a straight line.",
|
||||
"description": "Depending on where the 'Layer Start X' and 'Layer Start Y' are for the print, the opening travel move can pass across the print area and leave a string there. This option will generate an orthogonal path that moves the nozzle around the edges of the build plate and then comes in to the Start Point. || ⚠️ || The nozzle can drop to Z0.0 and touch the build plate at each stop in order to 'nail down the string'. The nozzle always raises after the touch-down. It will not drag on the bed.",
|
||||
"type": "bool",
|
||||
"default_value": false,
|
||||
"enabled": true
|
||||
},
|
||||
"move_to_start_min_z":
|
||||
{
|
||||
"label": " Minimum Z height ⚠️",
|
||||
"description": "When moving to the start position, the nozzle can touch down on the build plate at each stop (Z = 0.0). That will stick the string to the build plate at each direction change so it doesn't pull across the print area. Some printers may not respond well to Z=0.0. You may set a minimum Z height here (min is 0.0 and max is 0.50). The string must stick or it defeats the purpose of moving around the periphery.",
|
||||
"type": "float",
|
||||
"default_value": 0.0,
|
||||
"minimum_value": 0.0,
|
||||
"maximum_value": 0.5,
|
||||
"enabled": "move_to_start"
|
||||
},
|
||||
"adjust_starting_e":
|
||||
{
|
||||
"label": "Adjust Starting E location",
|
||||
@ -254,7 +264,9 @@ class PurgeLinesAndUnload(Script):
|
||||
self.prime_blob_distance = self.getSettingValueByKey("prime_blob_distance")
|
||||
else:
|
||||
self.prime_blob_distance = 0
|
||||
|
||||
# Set the minimum Z to stick the string to the build plate when Move to Start is selected.
|
||||
self.touchdown_z = self.getSettingValueByKey("move_to_start_min_z")
|
||||
|
||||
# Mapping settings to corresponding methods
|
||||
procedures = {
|
||||
"add_purge_lines": self._add_purge_lines,
|
||||
@ -385,7 +397,7 @@ class PurgeLinesAndUnload(Script):
|
||||
def add_move(axis: str, position: float) -> None:
|
||||
moves.append(
|
||||
f"G0 F{self.speed_travel} {axis}{position} ; Start move\n"
|
||||
f"G0 F600 Z0 ; Nail down the string\n"
|
||||
f"G0 F600 Z{self.touchdown_z} ; Nail down the string\n"
|
||||
f"G0 F600 Z2 ; Move up\n"
|
||||
)
|
||||
|
||||
@ -479,6 +491,14 @@ class PurgeLinesAndUnload(Script):
|
||||
|
||||
def calculate_purge_volume(line_width, purge_length, volume_per_mm):
|
||||
return round((line_width * 0.3 * purge_length) * 1.25 / volume_per_mm, 5)
|
||||
|
||||
def adjust_for_prime_blob_gcode(retract_speed, retract_distance):
|
||||
"""Generates G-code lines for prime blob adjustment."""
|
||||
gcode_lines = [
|
||||
f"G1 F{retract_speed} E{retract_distance} ; Unretract",
|
||||
"G92 E0 ; Reset extruder"
|
||||
]
|
||||
return "\n".join(gcode_lines)
|
||||
|
||||
purge_location = self.getSettingValueByKey("purge_line_location")
|
||||
purge_extrusion_full = True if self.getSettingValueByKey("purge_line_length") == "purge_full" else False
|
||||
@ -494,6 +514,8 @@ class PurgeLinesAndUnload(Script):
|
||||
# Travel to the purge start
|
||||
purge_str += f"G0 F{self.speed_travel} X{self.machine_left + self.border_distance} Y{self.machine_front + 10} ; Move to start\n"
|
||||
purge_str += f"G0 F600 Z0.3 ; Move down\n"
|
||||
if self.prime_blob_enable:
|
||||
purge_str += adjust_for_prime_blob_gcode(self.retract_speed, self.retract_dist)
|
||||
# Purge two lines
|
||||
purge_str += f"G1 F{self.print_speed} X{self.machine_left + self.border_distance} Y{y_stop} E{purge_volume} ; First line\n"
|
||||
purge_str += f"G0 X{self.machine_left + 3 + self.border_distance} Y{y_stop} ; Move over\n"
|
||||
@ -513,6 +535,8 @@ class PurgeLinesAndUnload(Script):
|
||||
# Travel to the purge start
|
||||
purge_str += f"G0 F{self.speed_travel} X{self.machine_right - self.border_distance} ; Move\nG0 Y{self.machine_back - 10} ; Move\n"
|
||||
purge_str += f"G0 F600 Z0.3 ; Move down\n"
|
||||
if self.prime_blob_enable:
|
||||
purge_str += adjust_for_prime_blob_gcode(self.retract_speed, self.retract_dist)
|
||||
# Purge two lines
|
||||
purge_str += f"G1 F{self.print_speed} X{self.machine_right - self.border_distance} Y{y_stop} E{purge_volume} ; First line\n"
|
||||
purge_str += f"G0 X{self.machine_right - 3 - self.border_distance} Y{y_stop} ; Move over\n"
|
||||
@ -533,6 +557,8 @@ class PurgeLinesAndUnload(Script):
|
||||
# Travel to the purge start
|
||||
purge_str += f"G0 F{self.speed_travel} X{self.machine_left + 10} Y{self.machine_front + self.border_distance} ; Move to start\n"
|
||||
purge_str += f"G0 F600 Z0.3 ; Move down\n"
|
||||
if self.prime_blob_enable:
|
||||
purge_str += adjust_for_prime_blob_gcode(self.retract_speed, self.retract_dist)
|
||||
# Purge two lines
|
||||
purge_str += f"G1 F{self.print_speed} X{x_stop} Y{self.machine_front + self.border_distance} E{purge_volume} ; First line\n"
|
||||
purge_str += f"G0 X{x_stop} Y{self.machine_front + 3 + self.border_distance} ; Move over\n"
|
||||
@ -554,6 +580,8 @@ class PurgeLinesAndUnload(Script):
|
||||
purge_str += f"G0 F{self.speed_travel} Y{self.machine_back - self.border_distance} ; Ortho Move to back\n"
|
||||
purge_str += f"G0 X{self.machine_right - 10} ; Ortho move to start\n"
|
||||
purge_str += f"G0 F600 Z0.3 ; Move down\n"
|
||||
if self.prime_blob_enable:
|
||||
purge_str += adjust_for_prime_blob_gcode(self.retract_speed, self.retract_dist)
|
||||
# Purge two lines
|
||||
purge_str += f"G1 F{self.print_speed} X{x_stop} Y{self.machine_back - self.border_distance} E{purge_volume} ; First line\n"
|
||||
purge_str += f"G0 X{x_stop} Y{self.machine_back - 3 - self.border_distance} ; Move over\n"
|
||||
@ -575,6 +603,8 @@ class PurgeLinesAndUnload(Script):
|
||||
# Travel to the purge start
|
||||
purge_str += f"G0 F{self.speed_travel} X{self.machine_left + self.border_distance} Y{self.machine_front + 10} ; Move to start\n"
|
||||
purge_str += f"G0 F600 Z0.3 ; Move down\n"
|
||||
if self.prime_blob_enable:
|
||||
purge_str += adjust_for_prime_blob_gcode(self.retract_speed, self.retract_dist)
|
||||
# Purge two lines
|
||||
purge_str += f"G1 F{self.print_speed} X{self.machine_left + self.border_distance} Y{y_stop} E{purge_volume} ; First line\n"
|
||||
purge_str += f"G0 X{self.machine_left + 3 + self.border_distance} Y{y_stop} ; Move over\n"
|
||||
@ -594,6 +624,8 @@ class PurgeLinesAndUnload(Script):
|
||||
# Travel to the purge start
|
||||
purge_str += f"G0 F{self.speed_travel} X{self.machine_right - self.border_distance} Z2 ; Move\nG0 Y{self.machine_back - 10} Z2 ; Move to start\n"
|
||||
purge_str += f"G0 F600 Z0.3 ; Move down\n"
|
||||
if self.prime_blob_enable:
|
||||
purge_str += adjust_for_prime_blob_gcode(self.retract_speed, self.retract_dist)
|
||||
# Purge two lines
|
||||
purge_str += f"G1 F{self.print_speed} X{self.machine_right - self.border_distance} Y{y_stop} E{purge_volume} ; First line\n"
|
||||
purge_str += f"G0 X{self.machine_right - 3 - self.border_distance} Y{y_stop} ; Move over\n"
|
||||
@ -613,6 +645,8 @@ class PurgeLinesAndUnload(Script):
|
||||
# Travel to the purge start
|
||||
purge_str += f"G0 F{self.speed_travel} X{self.machine_left + 10} Z2 ; Move\nG0 Y{self.machine_front + self.border_distance} Z2 ; Move to start\n"
|
||||
purge_str += f"G0 F600 Z0.3 ; Move down\n"
|
||||
if self.prime_blob_enable:
|
||||
purge_str += adjust_for_prime_blob_gcode(self.retract_speed, self.retract_dist)
|
||||
# Purge two lines
|
||||
purge_str += f"G1 F{self.print_speed} X{x_stop} Y{self.machine_front + self.border_distance} E{purge_volume} ; First line\n"
|
||||
purge_str += f"G0 X{x_stop} Y{self.machine_front + 3 + self.border_distance} ; Move over\n"
|
||||
@ -633,6 +667,8 @@ class PurgeLinesAndUnload(Script):
|
||||
purge_str += f"G0 F{self.speed_travel} Y{self.machine_back - self.border_distance} Z2; Ortho Move to back\n"
|
||||
purge_str += f"G0 X{self.machine_right - 10} Z2 ; Ortho Move to start\n"
|
||||
purge_str += f"G0 F600 Z0.3 ; Move down\n"
|
||||
if self.prime_blob_enable:
|
||||
purge_str += adjust_for_prime_blob_gcode(self.retract_speed, self.retract_dist)
|
||||
# Purge two lines
|
||||
purge_str += f"G1 F{self.print_speed} X{x_stop} Y{self.machine_back - self.border_distance} E{purge_volume} ; First line\n"
|
||||
purge_str += f"G0 X{x_stop} Y{self.machine_back - 3 - self.border_distance} ; Move over\n"
|
||||
@ -945,7 +981,7 @@ class PurgeLinesAndUnload(Script):
|
||||
blob_string = "G0 F1200 Z20 ; Move up\n"
|
||||
blob_string += f"G0 F{self.speed_travel} X{blob_x} Y{blob_y} ; Move to blob location\n"
|
||||
blob_string += f"G1 F{speed_blob} E{self.prime_blob_distance} ; Blob\n"
|
||||
blob_string += f"G1 F{self.retract_speed} E-{self.retract_dist} ; Retract\n"
|
||||
blob_string += f"G1 F{self.retract_speed} E{self.prime_blob_distance - self.retract_dist} ; Retract\n"
|
||||
blob_string += "G92 E0 ; Reset extruder\n"
|
||||
blob_string += "M300 P500 S600 ; Beep\n"
|
||||
blob_string += "G4 S2 ; Wait\n"
|
||||
|
@ -1 +1 @@
|
||||
version: "5.10.0-beta.1"
|
||||
version: "5.10.0"
|
||||
|
@ -3021,6 +3021,7 @@
|
||||
"minimum_value": "0.0001",
|
||||
"minimum_value_warning": "50",
|
||||
"maximum_value_warning": "150",
|
||||
"enabled": "roofing_layer_count > 0 and top_layers > 0",
|
||||
"limit_to_extruder": "wall_0_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
@ -3035,6 +3036,7 @@
|
||||
"minimum_value": "0.0001",
|
||||
"minimum_value_warning": "50",
|
||||
"maximum_value_warning": "150",
|
||||
"enabled": "roofing_layer_count > 0 and top_layers > 0",
|
||||
"limit_to_extruder": "wall_x_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
@ -3049,6 +3051,7 @@
|
||||
"minimum_value": "0.0001",
|
||||
"minimum_value_warning": "50",
|
||||
"maximum_value_warning": "150",
|
||||
"enabled": "flooring_layer_count > 0 and bottom_layers > 0",
|
||||
"limit_to_extruder": "wall_0_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
@ -3063,6 +3066,7 @@
|
||||
"minimum_value": "0.0001",
|
||||
"minimum_value_warning": "50",
|
||||
"maximum_value_warning": "150",
|
||||
"enabled": "flooring_layer_count > 0 and bottom_layers > 0",
|
||||
"limit_to_extruder": "wall_x_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
}
|
||||
@ -3464,6 +3468,7 @@
|
||||
"maximum_value_warning": "150",
|
||||
"default_value": 30,
|
||||
"value": "speed_wall_0",
|
||||
"enabled": "roofing_layer_count > 0 and top_layers > 0",
|
||||
"limit_to_extruder": "wall_0_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
@ -3478,6 +3483,7 @@
|
||||
"maximum_value_warning": "150",
|
||||
"default_value": 60,
|
||||
"value": "speed_wall_x",
|
||||
"enabled": "roofing_layer_count > 0 and top_layers > 0",
|
||||
"limit_to_extruder": "wall_x_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
@ -3492,6 +3498,7 @@
|
||||
"maximum_value_warning": "150",
|
||||
"default_value": 30,
|
||||
"value": "speed_wall_0",
|
||||
"enabled": "flooring_layer_count > 0 and bottom_layers > 0",
|
||||
"limit_to_extruder": "wall_0_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
@ -3506,6 +3513,7 @@
|
||||
"maximum_value_warning": "150",
|
||||
"default_value": 60,
|
||||
"value": "speed_wall_x",
|
||||
"enabled": "flooring_layer_count > 0 and bottom_layers > 0",
|
||||
"limit_to_extruder": "wall_x_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
}
|
||||
@ -3878,7 +3886,7 @@
|
||||
"maximum_value_warning": "10000",
|
||||
"default_value": 3000,
|
||||
"value": "acceleration_wall_0",
|
||||
"enabled": "resolveOrValue('acceleration_enabled')",
|
||||
"enabled": "resolveOrValue('acceleration_enabled') and roofing_layer_count > 0 and top_layers > 0",
|
||||
"limit_to_extruder": "wall_0_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
@ -3893,7 +3901,7 @@
|
||||
"maximum_value_warning": "10000",
|
||||
"default_value": 3000,
|
||||
"value": "acceleration_wall_x",
|
||||
"enabled": "resolveOrValue('acceleration_enabled')",
|
||||
"enabled": "resolveOrValue('acceleration_enabled') and roofing_layer_count > 0 and top_layers > 0",
|
||||
"limit_to_extruder": "wall_x_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
@ -3908,7 +3916,7 @@
|
||||
"maximum_value_warning": "10000",
|
||||
"default_value": 3000,
|
||||
"value": "acceleration_wall_0",
|
||||
"enabled": "resolveOrValue('acceleration_enabled')",
|
||||
"enabled": "resolveOrValue('acceleration_enabled') and flooring_layer_count > 0 and bottom_layers > 0",
|
||||
"limit_to_extruder": "wall_0_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
@ -3923,7 +3931,7 @@
|
||||
"maximum_value_warning": "10000",
|
||||
"default_value": 3000,
|
||||
"value": "acceleration_wall_x",
|
||||
"enabled": "resolveOrValue('acceleration_enabled')",
|
||||
"enabled": "resolveOrValue('acceleration_enabled') and flooring_layer_count > 0 and bottom_layers > 0",
|
||||
"limit_to_extruder": "wall_x_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
}
|
||||
@ -4251,7 +4259,7 @@
|
||||
"maximum_value_warning": "50",
|
||||
"default_value": 20,
|
||||
"value": "jerk_wall_0",
|
||||
"enabled": "resolveOrValue('jerk_enabled')",
|
||||
"enabled": "resolveOrValue('jerk_enabled') and roofing_layer_count > 0 and top_layers > 0",
|
||||
"limit_to_extruder": "wall_0_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
@ -4265,7 +4273,7 @@
|
||||
"maximum_value_warning": "50",
|
||||
"default_value": 20,
|
||||
"value": "jerk_wall_x",
|
||||
"enabled": "resolveOrValue('jerk_enabled')",
|
||||
"enabled": "resolveOrValue('jerk_enabled') and roofing_layer_count > 0 and top_layers > 0",
|
||||
"limit_to_extruder": "wall_x_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
@ -4279,7 +4287,7 @@
|
||||
"maximum_value_warning": "50",
|
||||
"default_value": 20,
|
||||
"value": "jerk_wall_0",
|
||||
"enabled": "resolveOrValue('jerk_enabled')",
|
||||
"enabled": "resolveOrValue('jerk_enabled') and flooring_layer_count > 0 and bottom_layers > 0",
|
||||
"limit_to_extruder": "wall_0_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
@ -4293,7 +4301,7 @@
|
||||
"maximum_value_warning": "50",
|
||||
"default_value": 20,
|
||||
"value": "jerk_wall_x",
|
||||
"enabled": "resolveOrValue('jerk_enabled')",
|
||||
"enabled": "resolveOrValue('jerk_enabled') and flooring_layer_count > 0 and bottom_layers > 0",
|
||||
"limit_to_extruder": "wall_x_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
}
|
||||
|
@ -84,7 +84,7 @@
|
||||
"material_standby_temperature":
|
||||
{
|
||||
"minimum_value": "0",
|
||||
"value": "material_print_temperature - 100"
|
||||
"value": "resolveOrValue('material_print_temperature') - 100"
|
||||
},
|
||||
"meshfix_maximum_deviation": { "value": "machine_nozzle_size / 10" },
|
||||
"meshfix_maximum_resolution": { "value": "max(speed_wall_0 / 75, 0.5)" },
|
||||
|
@ -48,27 +48,145 @@
|
||||
},
|
||||
"overrides":
|
||||
{
|
||||
"acceleration_infill": { "value": "acceleration_print" },
|
||||
"acceleration_layer_0": { "value": 2000 },
|
||||
"acceleration_prime_tower": { "value": "acceleration_print" },
|
||||
"acceleration_print": { "value": 20000 },
|
||||
"acceleration_print_layer_0": { "value": "acceleration_layer_0" },
|
||||
"acceleration_roofing": { "value": "acceleration_wall_0" },
|
||||
"acceleration_skirt_brim": { "value": "acceleration_layer_0" },
|
||||
"acceleration_support": { "value": "acceleration_print" },
|
||||
"acceleration_support_bottom": { "value": "acceleration_support_interface" },
|
||||
"acceleration_support_infill": { "value": "acceleration_support" },
|
||||
"acceleration_support_interface": { "value": "acceleration_support" },
|
||||
"acceleration_support_roof": { "value": "acceleration_support_interface" },
|
||||
"acceleration_topbottom": { "value": "acceleration_print" },
|
||||
"acceleration_travel": { "value": 10000 },
|
||||
"acceleration_flooring":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_roofing"
|
||||
},
|
||||
"acceleration_infill":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_print"
|
||||
},
|
||||
"acceleration_layer_0":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": 2000
|
||||
},
|
||||
"acceleration_prime_tower":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_print"
|
||||
},
|
||||
"acceleration_print":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": 20000
|
||||
},
|
||||
"acceleration_print_layer_0":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_layer_0"
|
||||
},
|
||||
"acceleration_roofing":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_wall_0"
|
||||
},
|
||||
"acceleration_skirt_brim":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_layer_0"
|
||||
},
|
||||
"acceleration_support":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_print"
|
||||
},
|
||||
"acceleration_support_bottom":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_support_interface"
|
||||
},
|
||||
"acceleration_support_infill":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_support"
|
||||
},
|
||||
"acceleration_support_interface":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_support"
|
||||
},
|
||||
"acceleration_support_roof":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_support_interface"
|
||||
},
|
||||
"acceleration_topbottom":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_print"
|
||||
},
|
||||
"acceleration_travel":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": 10000
|
||||
},
|
||||
"acceleration_travel_enabled": { "value": true },
|
||||
"acceleration_travel_layer_0": { "value": "acceleration_layer_0" },
|
||||
"acceleration_wall": { "value": "acceleration_print/8" },
|
||||
"acceleration_wall_0": { "value": "acceleration_wall" },
|
||||
"acceleration_wall_0_roofing": { "value": "acceleration_wall_0" },
|
||||
"acceleration_wall_x": { "value": "acceleration_print" },
|
||||
"acceleration_wall_x_roofing": { "value": "acceleration_wall" },
|
||||
"acceleration_travel_layer_0":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_layer_0"
|
||||
},
|
||||
"acceleration_wall":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_print/8"
|
||||
},
|
||||
"acceleration_wall_0":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_wall"
|
||||
},
|
||||
"acceleration_wall_0_flooring":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_wall_0_roofing"
|
||||
},
|
||||
"acceleration_wall_0_roofing":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_wall_0"
|
||||
},
|
||||
"acceleration_wall_x":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_print"
|
||||
},
|
||||
"acceleration_wall_x_flooring":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_wall_x_roofing"
|
||||
},
|
||||
"acceleration_wall_x_roofing":
|
||||
{
|
||||
"maximum_value": "machine_max_acceleration_x",
|
||||
"maximum_value_warning": "machine_max_acceleration_x*0.8",
|
||||
"value": "acceleration_wall"
|
||||
},
|
||||
"adhesion_type": { "value": "'brim' if support_enable and support_structure=='tree' else 'skirt'" },
|
||||
"bottom_thickness": { "value": "3*layer_height if top_layers==4 and not support_enable else top_bottom_thickness" },
|
||||
"bridge_skin_material_flow": { "value": 200 },
|
||||
@ -89,10 +207,14 @@
|
||||
"cool_min_layer_time_overhang": { "value": 9 },
|
||||
"cool_min_layer_time_overhang_min_segment_length": { "value": 2 },
|
||||
"cool_min_speed": { "value": 6 },
|
||||
"cool_min_temperature": { "value": "material_print_temperature-15" },
|
||||
"cool_min_temperature":
|
||||
{
|
||||
"minimum_value_warning": "material_print_temperature-15",
|
||||
"value": "material_print_temperature-15"
|
||||
},
|
||||
"default_material_print_temperature": { "maximum_value_warning": 320 },
|
||||
"extra_infill_lines_to_support_skins": { "value": "'walls_and_lines'" },
|
||||
"flooring_layer_count": { "value": 0 },
|
||||
"flooring_layer_count": { "value": 1 },
|
||||
"gradual_flow_enabled": { "value": false },
|
||||
"hole_xy_offset": { "value": 0.075 },
|
||||
"infill_material_flow": { "value": "material_flow" },
|
||||
@ -241,6 +363,8 @@
|
||||
"value": "jerk_wall_0"
|
||||
},
|
||||
"machine_gcode_flavor": { "default_value": "Cheetah" },
|
||||
"machine_max_acceleration_x": { "default_value": 50000 },
|
||||
"machine_max_acceleration_y": { "default_value": 50000 },
|
||||
"machine_max_feedrate_x": { "default_value": 500 },
|
||||
"machine_max_feedrate_y": { "default_value": 500 },
|
||||
"machine_max_jerk_e":
|
||||
@ -281,6 +405,7 @@
|
||||
"optimize_wall_printing_order": { "value": false },
|
||||
"prime_tower_brim_enable": { "value": true },
|
||||
"prime_tower_min_volume": { "value": 10 },
|
||||
"prime_tower_mode": { "resolve": "'normal'" },
|
||||
"retraction_amount": { "value": 6.5 },
|
||||
"retraction_combing_avoid_distance": { "value": 1.2 },
|
||||
"retraction_combing_max_distance": { "value": 50 },
|
||||
@ -293,6 +418,7 @@
|
||||
"skin_material_flow": { "value": 95 },
|
||||
"skin_overlap": { "value": 0 },
|
||||
"skin_preshrink": { "value": 0 },
|
||||
"skirt_brim_minimal_length": { "value": 1000 },
|
||||
"skirt_brim_speed":
|
||||
{
|
||||
"maximum_value_warning": 300,
|
||||
@ -344,7 +470,7 @@
|
||||
"speed_support":
|
||||
{
|
||||
"maximum_value_warning": 300,
|
||||
"value": "speed_print"
|
||||
"value": "speed_wall"
|
||||
},
|
||||
"speed_support_bottom":
|
||||
{
|
||||
@ -374,11 +500,13 @@
|
||||
"speed_travel":
|
||||
{
|
||||
"maximum_value": 500,
|
||||
"maximum_value_warning": 400,
|
||||
"value": 400
|
||||
},
|
||||
"speed_travel_layer_0":
|
||||
{
|
||||
"maximum_value": 500,
|
||||
"maximum_value_warning": 400,
|
||||
"value": 150
|
||||
},
|
||||
"speed_wall":
|
||||
@ -417,13 +545,17 @@
|
||||
"value": "speed_wall"
|
||||
},
|
||||
"support_angle": { "value": 60 },
|
||||
"support_bottom_distance": { "maximum_value_warning": "3*layer_height" },
|
||||
"support_bottom_offset": { "value": 0 },
|
||||
"support_brim_width": { "value": 10 },
|
||||
"support_interface_enable": { "value": true },
|
||||
"support_interface_offset": { "value": "support_offset" },
|
||||
"support_line_width": { "value": "1.25*line_width" },
|
||||
"support_offset": { "value": "1.2 if support_structure == 'tree' else 0.8" },
|
||||
"support_pattern": { "value": "'gyroid' if support_structure == 'tree' else 'lines'" },
|
||||
"support_roof_height": { "minimum_value_warning": 0 },
|
||||
"support_structure": { "value": "'normal'" },
|
||||
"support_top_distance": { "maximum_value_warning": "3*layer_height" },
|
||||
"support_tree_bp_diameter": { "value": 15 },
|
||||
"support_tree_tip_diameter": { "value": 1.0 },
|
||||
"support_tree_top_rate": { "value": 20 },
|
||||
|
@ -5,6 +5,7 @@ version = 4
|
||||
|
||||
[metadata]
|
||||
intent_category = engineering
|
||||
is_experimental = True
|
||||
material = generic_nylon-cf-slide
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
|
@ -5,6 +5,7 @@ version = 4
|
||||
|
||||
[metadata]
|
||||
intent_category = engineering
|
||||
is_experimental = True
|
||||
material = generic_nylon-cf-slide
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
|
@ -46,33 +46,26 @@ Item
|
||||
|
||||
text:
|
||||
{
|
||||
if(provider.properties.enabled == "True")
|
||||
{
|
||||
return ""
|
||||
}
|
||||
var key = definition ? definition.key : ""
|
||||
var requires = settingDefinitionsModel.getRequires(key, "enabled")
|
||||
if (requires.length == 0)
|
||||
{
|
||||
return catalog.i18nc("@item:tooltip", "This setting has been hidden by the active machine and will not be visible.");
|
||||
}
|
||||
else
|
||||
{
|
||||
var requires_text = ""
|
||||
for (var i in requires)
|
||||
{
|
||||
if (requires_text == "")
|
||||
{
|
||||
requires_text = requires[i].label
|
||||
}
|
||||
else
|
||||
{
|
||||
requires_text += ", " + requires[i].label
|
||||
}
|
||||
}
|
||||
if (provider.properties.enabled === "True") return "";
|
||||
|
||||
return catalog.i18ncp("@item:tooltip %1 is list of setting names", "This setting has been hidden by the value of %1. Change the value of that setting to make this setting visible.", "This setting has been hidden by the values of %1. Change the values of those settings to make this setting visible.", requires.length) .arg(requires_text);
|
||||
var key = definition ? definition.key : "";
|
||||
var requires = settingDefinitionsModel.getRequires(key, "enabled");
|
||||
|
||||
if (requires.length === 0) {
|
||||
return catalog.i18nc(
|
||||
"@item:tooltip",
|
||||
"This setting has been hidden by the active machine and will not be visible."
|
||||
);
|
||||
}
|
||||
|
||||
var requiresText = requires.map(r => r.label).join(", ");
|
||||
|
||||
return catalog.i18ncp(
|
||||
"@item:tooltip %1 is list of setting names",
|
||||
"This setting has been hidden by the value of %1. Change the value of that setting to make this setting visible.",
|
||||
"This setting has been hidden by the values of %1. Change the values of those settings to make this setting visible.",
|
||||
requires.length
|
||||
).arg(requiresText);
|
||||
}
|
||||
|
||||
UM.ColorImage
|
||||
|
@ -1,7 +1,7 @@
|
||||
// Copyright (c) 2022 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.1
|
||||
import QtQuick 2.15
|
||||
import QtQuick.Controls 2.15
|
||||
|
||||
import UM 1.5 as UM
|
||||
@ -27,10 +27,7 @@ UM.PreferencesPage
|
||||
]
|
||||
|
||||
signal scrollToSection( string key )
|
||||
onScrollToSection:
|
||||
{
|
||||
settingsListView.positionViewAtIndex(definitionsModel.getIndex(key), ListView.Beginning)
|
||||
}
|
||||
onScrollToSection: settingsListView.positionViewAtIndex(definitionsModel.getIndex(key), ListView.Beginning)
|
||||
|
||||
function reset()
|
||||
{
|
||||
@ -118,30 +115,14 @@ UM.PreferencesPage
|
||||
model: settingVisibilityPresetsModel.items
|
||||
textRole: "name"
|
||||
|
||||
currentIndex:
|
||||
{
|
||||
var idx = -1;
|
||||
for(var i = 0; i < settingVisibilityPresetsModel.items.length; ++i)
|
||||
{
|
||||
if(settingVisibilityPresetsModel.items[i].presetId === settingVisibilityPresetsModel.activePreset)
|
||||
{
|
||||
idx = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
return idx;
|
||||
}
|
||||
|
||||
onActivated:
|
||||
{
|
||||
var preset_id = settingVisibilityPresetsModel.items[index].presetId
|
||||
settingVisibilityPresetsModel.setActivePreset(preset_id)
|
||||
}
|
||||
currentIndex: settingVisibilityPresetsModel.items.findIndex(i => i.presetId === settingVisibilityPresetsModel.activePreset)
|
||||
onActivated: settingVisibilityPresetsModel.setActivePreset(settingVisibilityPresetsModel.items[index].presetId)
|
||||
}
|
||||
|
||||
ListView
|
||||
{
|
||||
id: settingsListView
|
||||
reuseItems: true
|
||||
anchors
|
||||
{
|
||||
top: filter.bottom
|
||||
@ -164,33 +145,31 @@ UM.PreferencesPage
|
||||
expanded: ["*"]
|
||||
visibilityHandler: UM.SettingPreferenceVisibilityHandler {}
|
||||
}
|
||||
cacheBuffer: 1000000 // Set a large cache to effectively just cache every list item.
|
||||
|
||||
property Component settingVisibilityCategory: Cura.SettingVisibilityCategory {}
|
||||
property Component settingVisibilityItem: Cura.SettingVisibilityItem {}
|
||||
Component
|
||||
{
|
||||
id: settingVisibilityCategory
|
||||
Cura.SettingVisibilityCategory {}
|
||||
}
|
||||
|
||||
Component
|
||||
{
|
||||
id: settingVisibilityItem
|
||||
Cura.SettingVisibilityItem {}
|
||||
}
|
||||
|
||||
delegate: Loader
|
||||
{
|
||||
id: loader
|
||||
|
||||
width: settingsListView.width - scrollBar.width
|
||||
height: model.type !== undefined ? UM.Theme.getSize("section").height : 0
|
||||
|
||||
property var definition: model
|
||||
property var settingDefinitionsModel: definitionsModel
|
||||
|
||||
asynchronous: true
|
||||
asynchronous: false
|
||||
active: model.type !== undefined
|
||||
sourceComponent:
|
||||
{
|
||||
switch (model.type)
|
||||
{
|
||||
case "category":
|
||||
return settingsListView.settingVisibilityCategory
|
||||
default:
|
||||
return settingsListView.settingVisibilityItem
|
||||
}
|
||||
}
|
||||
sourceComponent: model.type === "category" ? settingVisibilityCategory : settingVisibilityItem
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,9 +1,10 @@
|
||||
[general]
|
||||
definition = ultimaker_s3
|
||||
name = Fast
|
||||
name = Fast - Experimental
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
is_experimental = True
|
||||
material = generic_nylon-cf-slide
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
|
@ -1,9 +1,10 @@
|
||||
[general]
|
||||
definition = ultimaker_s5
|
||||
name = Fast
|
||||
name = Fast - Experimental
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
is_experimental = True
|
||||
material = generic_nylon-cf-slide
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
|
Loading…
x
Reference in New Issue
Block a user