mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-06 22:47:29 -06:00
Flatten equation in UFP settings export
This commit is contained in:
parent
cb6c19c1c6
commit
ccf9a47f08
1 changed files with 17 additions and 4 deletions
|
@ -12,6 +12,7 @@ from PyQt6.QtCore import QBuffer
|
|||
|
||||
from UM.Application import Application
|
||||
from UM.Logger import Logger
|
||||
from UM.Settings.SettingFunction import SettingFunction
|
||||
from UM.Mesh.MeshWriter import MeshWriter # The writer we need to implement.
|
||||
from UM.MimeTypeDatabase import MimeTypeDatabase, MimeType
|
||||
from UM.PluginRegistry import PluginRegistry # To get the g-code writer.
|
||||
|
@ -233,11 +234,17 @@ class UFPWriter(MeshWriter):
|
|||
# Add global user or quality changes
|
||||
global_flattened_changes = InstanceContainer.createMergedInstanceContainer(global_stack.userChanges, global_stack.qualityChanges)
|
||||
for setting in global_flattened_changes.getAllKeys():
|
||||
settings["global"]["changes"][setting] = str(global_flattened_changes.getProperty(setting, "value"))
|
||||
value = global_flattened_changes.getProperty(setting, "value")
|
||||
if isinstance(property_value, SettingFunction):
|
||||
property_value = property_value(value)
|
||||
settings["global"]["changes"][setting] = value
|
||||
|
||||
# Get global all settings values without user or quality changes
|
||||
for setting in global_stack.getAllKeys():
|
||||
settings["global"]["all_settings"][setting] = str(global_stack.getProperty(setting, "value"))
|
||||
value = global_stack.getProperty(setting, "value")
|
||||
if isinstance(property_value, SettingFunction):
|
||||
property_value = property_value(value)
|
||||
settings["global"]["all_settings"][setting] = value
|
||||
|
||||
for i, extruder in enumerate(global_stack.extruderList):
|
||||
# Add extruder fields to settings dictionary
|
||||
|
@ -249,10 +256,16 @@ class UFPWriter(MeshWriter):
|
|||
# Add extruder user or quality changes
|
||||
extruder_flattened_changes = InstanceContainer.createMergedInstanceContainer(extruder.userChanges, extruder.qualityChanges)
|
||||
for setting in extruder_flattened_changes.getAllKeys():
|
||||
settings[f"extruder_{i}"]["changes"][setting] = str(extruder_flattened_changes.getProperty(setting, "value"))
|
||||
value = extruder_flattened_changes.getProperty(setting, "value")
|
||||
if isinstance(property_value, SettingFunction):
|
||||
property_value = property_value(value)
|
||||
settings[f"extruder_{i}"]["changes"][setting] = value
|
||||
|
||||
# Get extruder all settings values without user or quality changes
|
||||
for setting in extruder.getAllKeys():
|
||||
settings[f"extruder_{i}"]["all_settings"][setting] = str(extruder.getProperty(setting, "value"))
|
||||
value = extruder.getProperty(setting, "value")
|
||||
if isinstance(property_value, SettingFunction):
|
||||
property_value = property_value(value)
|
||||
settings[f"extruder_{i}"]["all_settings"][setting] = value
|
||||
|
||||
return settings
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue