mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-18 04:25:56 +08:00
Merge branch '2.7'
This commit is contained in:
commit
050caf49b2
@ -442,7 +442,7 @@ class BuildVolume(SceneNode):
|
|||||||
|
|
||||||
def _updateExtraZClearance(self) -> None:
|
def _updateExtraZClearance(self) -> None:
|
||||||
extra_z = 0.0
|
extra_z = 0.0
|
||||||
extruders = ExtruderManager.getInstance().getMachineExtruders(self._global_container_stack.getId())
|
extruders = ExtruderManager.getInstance().getUsedExtruderStacks()
|
||||||
use_extruders = False
|
use_extruders = False
|
||||||
for extruder in extruders:
|
for extruder in extruders:
|
||||||
if extruder.getProperty("retraction_hop_enabled", "value"):
|
if extruder.getProperty("retraction_hop_enabled", "value"):
|
||||||
|
@ -333,9 +333,23 @@ class ContainerManager(QObject):
|
|||||||
@pyqtSlot(str, result = bool)
|
@pyqtSlot(str, result = bool)
|
||||||
def isContainerUsed(self, container_id):
|
def isContainerUsed(self, container_id):
|
||||||
Logger.log("d", "Checking if container %s is currently used", container_id)
|
Logger.log("d", "Checking if container %s is currently used", container_id)
|
||||||
containers = self._container_registry.findContainerStacks()
|
# check if this is a material container. If so, check if any material with the same GUID is being used by any
|
||||||
for stack in containers:
|
# stacks.
|
||||||
if container_id in [child.getId() for child in stack.getContainers()]:
|
container_ids_to_check = [container_id]
|
||||||
|
container_results = self._container_registry.findInstanceContainers(id = container_id, type = "material")
|
||||||
|
if container_results:
|
||||||
|
this_container = container_results[0]
|
||||||
|
container_guid = this_container.getMetaDataEntry("GUID")
|
||||||
|
# check all material container IDs with the same GUID
|
||||||
|
material_containers = self._container_registry.findInstanceContainers(GUID = container_guid,
|
||||||
|
type = "material")
|
||||||
|
if material_containers:
|
||||||
|
container_ids_to_check = [container.getId() for container in material_containers]
|
||||||
|
|
||||||
|
all_stacks = self._container_registry.findContainerStacks()
|
||||||
|
for stack in all_stacks:
|
||||||
|
for used_container_id in container_ids_to_check:
|
||||||
|
if used_container_id in [child.getId() for child in stack.getContainers()]:
|
||||||
Logger.log("d", "The container is in use by %s", stack.getId())
|
Logger.log("d", "The container is in use by %s", stack.getId())
|
||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
|
@ -916,6 +916,8 @@ class MachineManager(QObject):
|
|||||||
global_quality = quality_manager.findQualityByQualityType(quality_type, global_machine_definition, [], global_quality = True)
|
global_quality = quality_manager.findQualityByQualityType(quality_type, global_machine_definition, [], global_quality = True)
|
||||||
else:
|
else:
|
||||||
global_quality = quality_manager.findQualityByQualityType(quality_type, global_machine_definition, [material])
|
global_quality = quality_manager.findQualityByQualityType(quality_type, global_machine_definition, [material])
|
||||||
|
if not global_quality:
|
||||||
|
global_quality = self._empty_quality_container
|
||||||
|
|
||||||
# Find the values for each extruder.
|
# Find the values for each extruder.
|
||||||
extruder_stacks = ExtruderManager.getInstance().getActiveExtruderStacks()
|
extruder_stacks = ExtruderManager.getInstance().getActiveExtruderStacks()
|
||||||
@ -929,6 +931,8 @@ class MachineManager(QObject):
|
|||||||
quality_changes = quality_changes_list[0]
|
quality_changes = quality_changes_list[0]
|
||||||
else:
|
else:
|
||||||
quality_changes = global_quality_changes
|
quality_changes = global_quality_changes
|
||||||
|
if not quality_changes:
|
||||||
|
quality_changes = self._empty_quality_changes_container
|
||||||
|
|
||||||
material = stack.material
|
material = stack.material
|
||||||
quality = quality_manager.findQualityByQualityType(quality_type, global_machine_definition, [material])
|
quality = quality_manager.findQualityByQualityType(quality_type, global_machine_definition, [material])
|
||||||
|
@ -997,7 +997,7 @@
|
|||||||
"type": "[int]",
|
"type": "[int]",
|
||||||
"default_value": "[ ]",
|
"default_value": "[ ]",
|
||||||
"value": "skin_angles",
|
"value": "skin_angles",
|
||||||
"enabled": "roofing_pattern != 'concentric'",
|
"enabled": "roofing_pattern != 'concentric' and roofing_layer_count > 0 and top_layers > 0",
|
||||||
"limit_to_extruder": "roofing_extruder_nr",
|
"limit_to_extruder": "roofing_extruder_nr",
|
||||||
"settable_per_mesh": true
|
"settable_per_mesh": true
|
||||||
},
|
},
|
||||||
|
Loading…
x
Reference in New Issue
Block a user