mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-12-11 16:00:17 -07:00
Store object and volume names in the new 'name' property instead of relying on material id
This commit is contained in:
parent
f590bbb430
commit
aacc01a56f
10 changed files with 50 additions and 24 deletions
|
|
@ -56,6 +56,9 @@ sub write_file {
|
|||
foreach my $opt_key (@{$config->get_keys}) {
|
||||
printf $fh qq{ <metadata type=\"slic3r.%s\">%s</metadata>\n}, $opt_key, $config->serialize($opt_key);
|
||||
}
|
||||
if ($object->name) {
|
||||
printf $fh qq{ <metadata type=\"name\">%s</metadata>\n}, $object->name;
|
||||
}
|
||||
|
||||
printf $fh qq{ <mesh>\n};
|
||||
printf $fh qq{ <vertices>\n};
|
||||
|
|
@ -81,12 +84,15 @@ sub write_file {
|
|||
foreach my $volume (@{ $object->volumes }) {
|
||||
my $vertices_offset = shift @vertices_offset;
|
||||
printf $fh qq{ <volume%s>\n},
|
||||
(!defined $volume->material_id) ? '' : (sprintf ' materialid="%s"', $volume->material_id);
|
||||
($volume->material_id eq '') ? '' : (sprintf ' materialid="%s"', $volume->material_id);
|
||||
|
||||
my $config = $volume->config;
|
||||
foreach my $opt_key (@{$config->get_keys}) {
|
||||
printf $fh qq{ <metadata type=\"slic3r.%s\">%s</metadata>\n}, $opt_key, $config->serialize($opt_key);
|
||||
}
|
||||
if ($volume->name) {
|
||||
printf $fh qq{ <metadata type=\"name\">%s</metadata>\n}, $volume->name;
|
||||
}
|
||||
if ($volume->modifier) {
|
||||
printf $fh qq{ <metadata type=\"slic3r.modifier\">1</metadata>\n};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -114,6 +114,10 @@ sub end_element {
|
|||
} elsif ($opt_key eq 'modifier' && $self->{_volume}) {
|
||||
$self->{_volume}->set_modifier($value);
|
||||
}
|
||||
} elsif ($self->{_metadata_type} eq 'name' && $self->{_volume}) {
|
||||
$self->{_volume}->set_name($value);
|
||||
} elsif ($self->{_metadata_type} eq 'name' && $self->{_object}) {
|
||||
$self->{_object}->set_name($value);
|
||||
} elsif ($self->{_material}) {
|
||||
$self->{_material}->set_attribute($self->{_metadata_type}, $value);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -25,11 +25,9 @@ sub read_file {
|
|||
|
||||
my $model = Slic3r::Model->new;
|
||||
|
||||
my $material_id = basename($file);
|
||||
$model->set_material($material_id);
|
||||
|
||||
my $object = $model->add_object;
|
||||
my $volume = $object->add_volume(mesh => $mesh, material_id => $material_id);
|
||||
my $basename = basename($file);
|
||||
my $object = $model->add_object(input_file => $file, name => $basename);
|
||||
my $volume = $object->add_volume(mesh => $mesh, name => $basename);
|
||||
return $model;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -16,10 +16,9 @@ sub read_file {
|
|||
|
||||
my $model = Slic3r::Model->new;
|
||||
|
||||
my $material_id = basename($file);
|
||||
$model->set_material($material_id);
|
||||
my $object = $model->add_object;
|
||||
my $volume = $object->add_volume(mesh => $mesh, material_id => $material_id);
|
||||
my $basename = basename($file);
|
||||
my $object = $model->add_object(input_file => $file, name => $basename);
|
||||
my $volume = $object->add_volume(mesh => $mesh, name => $basename);
|
||||
return $model;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue