mirror of
https://github.com/Ultimaker/Cura.git
synced 2026-03-06 10:34:37 -07:00
Merge branch 'main' into CURA-12528_unwrap_uvs
This commit is contained in:
commit
bef7bac6a1
21 changed files with 309 additions and 59 deletions
|
|
@ -9,7 +9,6 @@ import time
|
|||
import platform
|
||||
from pathlib import Path
|
||||
from typing import cast, TYPE_CHECKING, Optional, Callable, List, Any, Dict
|
||||
import requests
|
||||
|
||||
import numpy
|
||||
from PyQt6.QtCore import QObject, QTimer, QUrl, QUrlQuery, pyqtSignal, pyqtProperty, QEvent, pyqtEnum, QCoreApplication, \
|
||||
|
|
@ -1645,14 +1644,10 @@ class CuraApplication(QtApplication):
|
|||
Logger.log("w", "Unable to reload data because we don't have a filename.")
|
||||
|
||||
for file_name, nodes in objects_in_filename.items():
|
||||
file_path = os.path.normpath(os.path.dirname(file_name))
|
||||
job = ReadMeshJob(file_name,
|
||||
add_to_recent_files=file_path != tempfile.gettempdir()) # Don't add temp files to the recent files list
|
||||
job._nodes = nodes # type: ignore
|
||||
job.finished.connect(self._reloadMeshFinished)
|
||||
on_done = None
|
||||
if has_merged_nodes:
|
||||
job.finished.connect(self.updateOriginOfMergedMeshes)
|
||||
job.start()
|
||||
on_done = self.updateOriginOfMergedMeshes
|
||||
self.getController().getScene().reloadNodes(nodes, file_name, on_done)
|
||||
|
||||
@pyqtSlot("QStringList")
|
||||
def setExpandedCategories(self, categories: List[str]) -> None:
|
||||
|
|
@ -1835,53 +1830,6 @@ class CuraApplication(QtApplication):
|
|||
fileLoaded = pyqtSignal(str)
|
||||
fileCompleted = pyqtSignal(str)
|
||||
|
||||
def _reloadMeshFinished(self, job) -> None:
|
||||
"""
|
||||
Function called when ReadMeshJob finishes reloading a file in the background, then update node objects in the
|
||||
scene from its source file. The function gets all the nodes that exist in the file through the job result, and
|
||||
then finds the scene nodes that need to be refreshed by their name. Each job refreshes all nodes of a file.
|
||||
Nodes that are not present in the updated file are kept in the scene.
|
||||
|
||||
:param job: The :py:class:`Uranium.UM.ReadMeshJob.ReadMeshJob` running in the background that reads all the
|
||||
meshes in a file
|
||||
"""
|
||||
|
||||
job_result = job.getResult() # nodes that exist inside the file read by this job
|
||||
if len(job_result) == 0:
|
||||
Logger.log("e", "Reloading the mesh failed.")
|
||||
return
|
||||
renamed_nodes = {} # type: Dict[str, int]
|
||||
# Find the node to be refreshed based on its id
|
||||
for job_result_node in job_result:
|
||||
mesh_data = job_result_node.getMeshData()
|
||||
if not mesh_data:
|
||||
Logger.log("w", "Could not find a mesh in reloaded node.")
|
||||
continue
|
||||
|
||||
# Solves issues with object naming
|
||||
result_node_name = job_result_node.getName()
|
||||
if not result_node_name:
|
||||
result_node_name = os.path.basename(mesh_data.getFileName())
|
||||
if result_node_name in renamed_nodes: # objects may get renamed by ObjectsModel._renameNodes() when loaded
|
||||
renamed_nodes[result_node_name] += 1
|
||||
result_node_name = "{0}({1})".format(result_node_name, renamed_nodes[result_node_name])
|
||||
else:
|
||||
renamed_nodes[job_result_node.getName()] = 0
|
||||
|
||||
# Find the matching scene node to replace
|
||||
scene_node = None
|
||||
for replaced_node in job._nodes:
|
||||
if replaced_node.getName() == result_node_name:
|
||||
scene_node = replaced_node
|
||||
break
|
||||
|
||||
if scene_node:
|
||||
scene_node.setMeshData(mesh_data)
|
||||
else:
|
||||
# Current node is a new one in the file, or it's name has changed
|
||||
# TODO: Load this mesh into the scene. Also alter the "_reloadJobFinished" action in UM.Scene
|
||||
Logger.log("w", "Could not find matching node for object '{0}' in the scene.".format(result_node_name))
|
||||
|
||||
def _openFile(self, filename):
|
||||
self.readLocalFile(QUrl.fromLocalFile(filename))
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,18 @@
|
|||
[general]
|
||||
definition = ultimaker_s8
|
||||
name = Accurate
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
intent_category = engineering
|
||||
material = generic_cpe_plus
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
type = intent
|
||||
variant = AA+ 0.4
|
||||
|
||||
[values]
|
||||
infill_sparse_density = 20
|
||||
top_bottom_thickness = =wall_thickness
|
||||
wall_thickness = =line_width * 4
|
||||
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
[general]
|
||||
definition = ultimaker_s8
|
||||
name = Accurate
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
intent_category = engineering
|
||||
material = generic_pc
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
type = intent
|
||||
variant = AA+ 0.4
|
||||
|
||||
[values]
|
||||
infill_sparse_density = 20
|
||||
top_bottom_thickness = =wall_thickness
|
||||
wall_thickness = =line_width * 4
|
||||
|
||||
|
|
@ -5,6 +5,7 @@ version = 4
|
|||
|
||||
[metadata]
|
||||
intent_category = engineering
|
||||
is_experimental = True
|
||||
material = generic_cpe_plus
|
||||
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
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ version = 4
|
|||
|
||||
[metadata]
|
||||
intent_category = engineering
|
||||
is_experimental = True
|
||||
material = generic_pc
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ version = 4
|
|||
|
||||
[metadata]
|
||||
intent_category = engineering
|
||||
is_experimental = True
|
||||
material = generic_petcf
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
|
|
|
|||
|
|
@ -0,0 +1,18 @@
|
|||
[general]
|
||||
definition = ultimaker_s8
|
||||
name = Accurate
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
intent_category = engineering
|
||||
material = generic_nylon-cf-slide
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
type = intent
|
||||
variant = CC+ 0.6
|
||||
|
||||
[values]
|
||||
infill_sparse_density = 20
|
||||
top_bottom_thickness = =wall_thickness
|
||||
wall_thickness = =line_width * 4
|
||||
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
[general]
|
||||
definition = ultimaker_s8
|
||||
name = Accurate
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
intent_category = engineering
|
||||
material = generic_petcf
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
type = intent
|
||||
variant = CC+ 0.6
|
||||
|
||||
[values]
|
||||
infill_sparse_density = 20
|
||||
top_bottom_thickness = =wall_thickness
|
||||
wall_thickness = =line_width * 4
|
||||
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
[general]
|
||||
definition = ultimaker_s8
|
||||
name = Fast
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
material = generic_cpe_plus
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
type = quality
|
||||
variant = AA+ 0.4
|
||||
weight = -2
|
||||
|
||||
[values]
|
||||
adhesion_type = brim
|
||||
material_alternate_walls = True
|
||||
material_final_print_temperature = =material_print_temperature - 15
|
||||
material_initial_print_temperature = =material_print_temperature - 15
|
||||
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
[general]
|
||||
definition = ultimaker_s8
|
||||
name = Fast
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
material = generic_pc
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
type = quality
|
||||
variant = AA+ 0.4
|
||||
weight = -2
|
||||
|
||||
[values]
|
||||
adhesion_type = brim
|
||||
cool_min_layer_time = 6
|
||||
cool_min_layer_time_fan_speed_max = 12
|
||||
inset_direction = inside_out
|
||||
material_alternate_walls = True
|
||||
material_final_print_temperature = =material_print_temperature - 15
|
||||
material_flow = 95
|
||||
material_initial_print_temperature = =material_print_temperature - 15
|
||||
retraction_prime_speed = 15
|
||||
speed_wall_x = =speed_wall_0
|
||||
|
||||
|
|
@ -15,4 +15,5 @@ weight = -2
|
|||
cool_min_layer_time = 4
|
||||
material_print_temperature = =default_material_print_temperature + 5
|
||||
retraction_prime_speed = 15
|
||||
support_structure = tree
|
||||
|
||||
|
|
|
|||
|
|
@ -1,9 +1,10 @@
|
|||
[general]
|
||||
definition = ultimaker_s8
|
||||
name = Fast
|
||||
name = Fast - Experimental
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
is_experimental = True
|
||||
material = generic_cpe_plus
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
|
|
|
|||
|
|
@ -1,9 +1,10 @@
|
|||
[general]
|
||||
definition = ultimaker_s8
|
||||
name = Fast
|
||||
name = Fast - Experimental
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
is_experimental = True
|
||||
material = generic_nylon-cf-slide
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
|
|
@ -12,6 +13,12 @@ variant = CC+ 0.4
|
|||
weight = -2
|
||||
|
||||
[values]
|
||||
bridge_skin_material_flow = 100
|
||||
bridge_skin_speed = 30
|
||||
bridge_wall_material_flow = 100
|
||||
bridge_wall_speed = 30
|
||||
cool_min_layer_time_fan_speed_max = 11
|
||||
retraction_prime_speed = 15
|
||||
support_structure = tree
|
||||
wall_overhang_speed_factors = [100,90,80,70,60,50]
|
||||
|
||||
|
|
|
|||
|
|
@ -1,9 +1,10 @@
|
|||
[general]
|
||||
definition = ultimaker_s8
|
||||
name = Fast
|
||||
name = Fast - Experimental
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
is_experimental = True
|
||||
material = generic_pc
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
|
|
|
|||
|
|
@ -1,9 +1,10 @@
|
|||
[general]
|
||||
definition = ultimaker_s8
|
||||
name = Fast
|
||||
name = Fast - Experimental
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
is_experimental = True
|
||||
material = generic_petcf
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
|
|
@ -12,5 +13,12 @@ variant = CC+ 0.4
|
|||
weight = -2
|
||||
|
||||
[values]
|
||||
adhesion_type = skirt
|
||||
bridge_skin_material_flow = 100
|
||||
bridge_skin_speed = 30
|
||||
bridge_wall_material_flow = 100
|
||||
bridge_wall_speed = 30
|
||||
support_structure = tree
|
||||
switch_extruder_retraction_amount = 16
|
||||
wall_overhang_speed_factors = [100,90,80,70,60,50]
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,60 @@
|
|||
[general]
|
||||
definition = ultimaker_s8
|
||||
name = Fast
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
material = generic_nylon-cf-slide
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
type = quality
|
||||
variant = CC+ 0.6
|
||||
weight = -2
|
||||
|
||||
[values]
|
||||
acceleration_roofing = =acceleration_topbottom/2
|
||||
bridge_enable_more_layers = True
|
||||
bridge_skin_density = 70
|
||||
bridge_skin_material_flow = 100
|
||||
bridge_skin_material_flow_2 = 70
|
||||
bridge_skin_speed = 30
|
||||
bridge_skin_speed_2 = =speed_print*2/3
|
||||
bridge_wall_material_flow = 100
|
||||
bridge_wall_min_length = 2
|
||||
bridge_wall_speed = 30
|
||||
cool_min_layer_time = 6
|
||||
cool_min_layer_time_fan_speed_max = 11
|
||||
cool_min_layer_time_overhang = 11
|
||||
cool_min_temperature = =material_print_temperature-10
|
||||
flooring_monotonic = False
|
||||
infill_material_flow = =material_flow if infill_sparse_density < 95 else 95
|
||||
infill_pattern = ='zigzag' if infill_sparse_density > 50 else 'grid'
|
||||
jerk_roofing = =jerk_print
|
||||
material_flow = 95
|
||||
retraction_hop_enabled = False
|
||||
retraction_prime_speed = 25
|
||||
roofing_line_width = 0.5
|
||||
roofing_material_flow = =skin_material_flow
|
||||
roofing_monotonic = False
|
||||
skin_material_flow = =0.95*material_flow
|
||||
skin_outline_count = 0
|
||||
speed_print = 80
|
||||
speed_roofing = 50
|
||||
speed_wall = =speed_print
|
||||
speed_wall_0_roofing = =speed_roofing
|
||||
speed_wall_x_roofing = =speed_roofing
|
||||
support_bottom_distance = =support_z_distance
|
||||
support_line_width = 0.6
|
||||
support_structure = tree
|
||||
support_tree_tip_diameter = 2.0
|
||||
support_tree_top_rate = 10
|
||||
support_xy_distance = 1.2
|
||||
support_xy_distance_overhang = =1.5*machine_nozzle_size
|
||||
support_z_distance = =min(2*layer_height, 0.4)
|
||||
top_bottom_thickness = =wall_thickness
|
||||
wall_0_inset = =0.05
|
||||
wall_line_width_0 = 0.5
|
||||
wall_overhang_speed_factors = [100,90,80,70,60,50]
|
||||
wall_x_material_flow = =material_flow
|
||||
xy_offset = 0.075
|
||||
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
[general]
|
||||
definition = ultimaker_s8
|
||||
name = Fast
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
material = generic_petcf
|
||||
quality_type = draft
|
||||
setting_version = 25
|
||||
type = quality
|
||||
variant = CC+ 0.6
|
||||
weight = -2
|
||||
|
||||
[values]
|
||||
acceleration_roofing = =acceleration_topbottom/2
|
||||
adhesion_type = skirt
|
||||
bridge_enable_more_layers = True
|
||||
bridge_skin_density = 70
|
||||
bridge_skin_material_flow = 100
|
||||
bridge_skin_material_flow_2 = 70
|
||||
bridge_skin_speed = 30
|
||||
bridge_skin_speed_2 = =speed_print*2/3
|
||||
bridge_wall_material_flow = 100
|
||||
bridge_wall_min_length = 2
|
||||
bridge_wall_speed = 30
|
||||
cool_min_layer_time = 6
|
||||
cool_min_layer_time_overhang = 11
|
||||
cool_min_temperature = =material_print_temperature-10
|
||||
flooring_monotonic = False
|
||||
infill_material_flow = =material_flow if infill_sparse_density < 95 else 95
|
||||
infill_pattern = ='zigzag' if infill_sparse_density > 50 else 'grid'
|
||||
jerk_roofing = =jerk_print
|
||||
material_pressure_advance_factor = 0.25
|
||||
retraction_hop_enabled = False
|
||||
retraction_prime_speed = 15
|
||||
roofing_line_width = 0.5
|
||||
roofing_material_flow = =skin_material_flow
|
||||
roofing_monotonic = False
|
||||
skin_material_flow = =0.95*material_flow
|
||||
skin_outline_count = 0
|
||||
skirt_height = 5
|
||||
speed_print = 80
|
||||
speed_roofing = 50
|
||||
speed_wall = =speed_print
|
||||
speed_wall_0_roofing = =speed_roofing
|
||||
speed_wall_x_roofing = =speed_roofing
|
||||
support_bottom_distance = =support_z_distance
|
||||
support_interface_enable = False
|
||||
support_line_width = 0.6
|
||||
support_structure = tree
|
||||
support_tree_tip_diameter = 2.0
|
||||
support_tree_top_rate = 10
|
||||
support_xy_distance = 1.2
|
||||
support_xy_distance_overhang = =1.5*machine_nozzle_size
|
||||
support_z_distance = =min(2*layer_height, 0.4)
|
||||
switch_extruder_retraction_amount = 16
|
||||
top_bottom_thickness = =wall_thickness
|
||||
wall_0_inset = =0.05
|
||||
wall_line_width_0 = 0.5
|
||||
wall_overhang_speed_factors = [100,90,80,70,60,50]
|
||||
wall_x_material_flow = =material_flow
|
||||
xy_offset = 0.075
|
||||
|
||||
|
|
@ -1,3 +1,10 @@
|
|||
[5.10.2]
|
||||
|
||||
* UltiMaker S6 and S8 improvements:
|
||||
- Introduced the CC+ 0.6 core to the UltiMaker S6 and S8. This core delivers better results for demanding applications and will be replacing the CC+ 0.4 core.
|
||||
- Added new profiles for PC and CPE+ on UltiMaker S6 and S8
|
||||
- Updated the default support type for the PETG material for UltiMaker S6 and S8
|
||||
|
||||
[5.10.1]
|
||||
|
||||
* New features and improvements:
|
||||
|
|
|
|||
17
resources/variants/ultimaker_s6_cc_plus06.inst.cfg
Normal file
17
resources/variants/ultimaker_s6_cc_plus06.inst.cfg
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
[general]
|
||||
definition = ultimaker_s6
|
||||
name = CC+ 0.6
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
hardware_type = nozzle
|
||||
setting_version = 25
|
||||
type = variant
|
||||
|
||||
[values]
|
||||
machine_nozzle_cool_down_speed = 0.9
|
||||
machine_nozzle_id = CC+ 0.6
|
||||
machine_nozzle_size = 0.6
|
||||
machine_nozzle_tip_outer_diameter = 1.2
|
||||
retraction_prime_speed = =retraction_speed
|
||||
|
||||
17
resources/variants/ultimaker_s8_cc_plus06.inst.cfg
Normal file
17
resources/variants/ultimaker_s8_cc_plus06.inst.cfg
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
[general]
|
||||
definition = ultimaker_s8
|
||||
name = CC+ 0.6
|
||||
version = 4
|
||||
|
||||
[metadata]
|
||||
hardware_type = nozzle
|
||||
setting_version = 25
|
||||
type = variant
|
||||
|
||||
[values]
|
||||
machine_nozzle_cool_down_speed = 0.9
|
||||
machine_nozzle_id = CC+ 0.6
|
||||
machine_nozzle_size = 0.6
|
||||
machine_nozzle_tip_outer_diameter = 1.2
|
||||
retraction_prime_speed = =retraction_speed
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue