diff --git a/plugins/3MFReader/ThreeMFReader.py b/plugins/3MFReader/ThreeMFReader.py index 669bee8f40..37ca1e98aa 100755 --- a/plugins/3MFReader/ThreeMFReader.py +++ b/plugins/3MFReader/ThreeMFReader.py @@ -1,4 +1,4 @@ -# Copyright (c) 2019 Ultimaker B.V. +# Copyright (c) 2021 Ultimaker B.V. # Cura is released under the terms of the LGPLv3 or higher. import os.path @@ -178,7 +178,7 @@ class ThreeMFReader(MeshReader): if key in known_setting_keys: setting_container.setProperty(key, "value", setting_value) else: - Logger.log("w", "Unable to set setting %s", key) + um_node.metadata[key] = settings[key] if len(um_node.getChildren()) > 0 and um_node.getMeshData() is None: if len(um_node.getAllChildren()) == 1: diff --git a/plugins/3MFWriter/ThreeMFWriter.py b/plugins/3MFWriter/ThreeMFWriter.py index 99659817a5..c85eca88bf 100644 --- a/plugins/3MFWriter/ThreeMFWriter.py +++ b/plugins/3MFWriter/ThreeMFWriter.py @@ -109,7 +109,11 @@ class ThreeMFWriter(MeshWriter): # Get values for all changed settings & save them. for key in changed_setting_keys: - savitar_node.setSetting(key, str(stack.getProperty(key, "value"))) + savitar_node.setSetting("cura:" + key, str(stack.getProperty(key, "value"))) + + # Store the metadata. + for key, value in um_node.metadata.items(): + savitar_node.setSetting(key, value) for child_node in um_node.getChildren(): # only save the nodes on the active build plate