mirror of
https://git.mirrors.martin98.com/https://github.com/prusa3d/PrusaSlicer.git
synced 2025-05-10 03:39:08 +08:00
3mf I/O - Added import and export of modifiers
This commit is contained in:
parent
8cd42966d6
commit
0e896e48e4
@ -62,6 +62,9 @@ const char* LAST_TRIANGLE_ID_ATTR = "lastid";
|
|||||||
const char* OBJECT_TYPE = "object";
|
const char* OBJECT_TYPE = "object";
|
||||||
const char* VOLUME_TYPE = "volume";
|
const char* VOLUME_TYPE = "volume";
|
||||||
|
|
||||||
|
const char* NAME_KEY = "name";
|
||||||
|
const char* MODIFIER_KEY = "modifier";
|
||||||
|
|
||||||
const unsigned int VALID_OBJECT_TYPES_COUNT = 1;
|
const unsigned int VALID_OBJECT_TYPES_COUNT = 1;
|
||||||
const char* VALID_OBJECT_TYPES[] =
|
const char* VALID_OBJECT_TYPES[] =
|
||||||
{
|
{
|
||||||
@ -1350,8 +1353,10 @@ namespace Slic3r {
|
|||||||
// apply volume's name and config data
|
// apply volume's name and config data
|
||||||
for (const Metadata& metadata : volume_data.metadata)
|
for (const Metadata& metadata : volume_data.metadata)
|
||||||
{
|
{
|
||||||
if (metadata.key == "name")
|
if (metadata.key == NAME_KEY)
|
||||||
volume->name = metadata.value;
|
volume->name = metadata.value;
|
||||||
|
else if ((metadata.key == MODIFIER_KEY) && (metadata.value == "1"))
|
||||||
|
volume->modifier = true;
|
||||||
else
|
else
|
||||||
volume->config.set_deserialize(metadata.key, metadata.value);
|
volume->config.set_deserialize(metadata.key, metadata.value);
|
||||||
}
|
}
|
||||||
@ -1807,7 +1812,11 @@ namespace Slic3r {
|
|||||||
|
|
||||||
// stores volume's name
|
// stores volume's name
|
||||||
if (!volume->name.empty())
|
if (!volume->name.empty())
|
||||||
stream << " <" << METADATA_TAG << " " << TYPE_ATTR << "=\"" << VOLUME_TYPE << "\" " << KEY_ATTR << "=\"name\" " << VALUE_ATTR << "=\"" << volume->name << "\"/>\n";
|
stream << " <" << METADATA_TAG << " " << TYPE_ATTR << "=\"" << VOLUME_TYPE << "\" " << KEY_ATTR << "=\"" << NAME_KEY << "\" " << VALUE_ATTR << "=\"" << volume->name << "\"/>\n";
|
||||||
|
|
||||||
|
// stores volume's modifier field
|
||||||
|
if (volume->modifier)
|
||||||
|
stream << " <" << METADATA_TAG << " " << TYPE_ATTR << "=\"" << VOLUME_TYPE << "\" " << KEY_ATTR << "=\"" << MODIFIER_KEY << "\" " << VALUE_ATTR << "=\"1\"/>\n";
|
||||||
|
|
||||||
// stores volume's config data
|
// stores volume's config data
|
||||||
for (const std::string& key : volume->config.keys())
|
for (const std::string& key : volume->config.keys())
|
||||||
|
Loading…
x
Reference in New Issue
Block a user