mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-11 16:57:51 -06:00
Fix build plate compatibility check
CURA-5078
This commit is contained in:
parent
d98cab48ac
commit
2c5cc17b49
2 changed files with 14 additions and 3 deletions
|
@ -919,11 +919,21 @@ class MachineManager(QObject):
|
||||||
|
|
||||||
def activeMaterialsCompatible(self):
|
def activeMaterialsCompatible(self):
|
||||||
# check material - variant compatibility
|
# check material - variant compatibility
|
||||||
|
result = True
|
||||||
|
machine_has_buildplate = Util.parseBool(self._global_container_stack.getMetaDataEntry("has_variant_buildplates", False))
|
||||||
if Util.parseBool(self._global_container_stack.getMetaDataEntry("has_materials", False)):
|
if Util.parseBool(self._global_container_stack.getMetaDataEntry("has_materials", False)):
|
||||||
for position, extruder in self._global_container_stack.extruders.items():
|
for position, extruder in self._global_container_stack.extruders.items():
|
||||||
if not extruder.material.getMetaDataEntry("compatible"):
|
if not extruder.material.getMetaDataEntry("compatible"):
|
||||||
return False
|
result = False
|
||||||
return True
|
break
|
||||||
|
if machine_has_buildplate:
|
||||||
|
buildplate_compatibility_dict = extruder.material.getMetaDataEntry("buildplate_compatible")
|
||||||
|
if buildplate_compatibility_dict:
|
||||||
|
buildplate_name = self._global_container_stack.variant.getName()
|
||||||
|
result = buildplate_compatibility_dict.get(buildplate_name, True)
|
||||||
|
if not result:
|
||||||
|
break
|
||||||
|
return result
|
||||||
|
|
||||||
## Update current quality type and machine after setting material
|
## Update current quality type and machine after setting material
|
||||||
def _updateQualityWithMaterial(self):
|
def _updateQualityWithMaterial(self):
|
||||||
|
|
|
@ -617,7 +617,8 @@ class XmlMaterialProfile(InstanceContainer):
|
||||||
|
|
||||||
from cura.Machines.VariantManager import VariantType
|
from cura.Machines.VariantManager import VariantType
|
||||||
variant_manager = CuraApplication.getInstance().getVariantManager()
|
variant_manager = CuraApplication.getInstance().getVariantManager()
|
||||||
variant_node = variant_manager.getVariantNode(machine_id, buildplate_id)
|
variant_node = variant_manager.getVariantNode(machine_id, buildplate_id,
|
||||||
|
variant_type = VariantType.BUILD_PLATE)
|
||||||
if not variant_node:
|
if not variant_node:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue