FIX:use modelobject extruder_id when modelvolume has no extruder_id

jira: STUDIO-11423
Change-Id: I59d2289ed899d31ea58d7cec5657fdc868acfe83
(cherry picked from commit 446ba69024983a49e3e176f64e8600e54092063c)
This commit is contained in:
zhou.xu 2025-04-10 10:50:02 +08:00 committed by lane.wei
parent 6de1122a93
commit 89a0af1c87

View File

@ -2410,7 +2410,7 @@ void GUI::ObjectList::add_new_model_object_from_old_object() {
ModelObject * new_object = model.add_object(); ModelObject * new_object = model.add_object();
new_object->name = into_u8(_L("Sub-merged body")); new_object->name = into_u8(_L("Sub-merged body"));
new_object->add_instance(); // each object should have at least one instance new_object->add_instance(); // each object should have at least one instance
int min_extruder = (int) EnforcerBlockerType::ExtruderMax - 1; int min_extruder = (int) EnforcerBlockerType::ExtruderMax;
for (auto mv : sel_volumes) { for (auto mv : sel_volumes) {
new_object->add_volume(*mv, mv->type()); new_object->add_volume(*mv, mv->type());
auto option = mv->config.option("extruder"); auto option = mv->config.option("extruder");
@ -2419,6 +2419,9 @@ void GUI::ObjectList::add_new_model_object_from_old_object() {
if (min_extruder > volume_extruder_id) { if (min_extruder > volume_extruder_id) {
min_extruder = volume_extruder_id; min_extruder = volume_extruder_id;
} }
} else {
auto opt = mo->config.option("extruder");
if (opt && min_extruder != opt->getInt()) { min_extruder = opt->getInt(); }
} }
} }
new_object->sort_volumes(true); new_object->sort_volumes(true);