ENH: auto adapt distance in arrangement

JIRA: STUDIO-4408
1. if min_obj_distance is 0, use auto mode
2. normal support, 5mm gap, tree support, 22mm gap, no support, 0.1mm
   gap

Change-Id: I906ccf267bef1f33a946572614d658fd50cfcda3
(cherry picked from commit 3c65150434c9938442b0c8d7995f21bb5e50db89)
This commit is contained in:
shuai.liu 2023-09-13 15:43:53 +08:00 committed by Lane.Wei
parent 6574a0fec4
commit b9cc020fea
5 changed files with 14 additions and 10 deletions

View file

@ -156,12 +156,19 @@ ArrangePolygon get_instance_arrange_poly(ModelInstance* instance, const Slic3r::
ap.brim_width = 0;
}
#else
ap.brim_width = 0;
ap.brim_width = 1.0;
// For by-layer printing, need to shrink bed a little, so the support won't go outside bed.
// We set it to 5mm because that's how much a normal support will grow by default.
// normal support 5mm, other support 22mm, no support 0mm
auto supp_type_ptr = obj->get_config_value<ConfigOptionBool>(config, "enable_support");
if (supp_type_ptr && supp_type_ptr->getBool())
auto support_type_ptr = obj->get_config_value<ConfigOptionEnum<SupportType>>(config, "support_type");
auto support_type = support_type_ptr->value;
auto enable_support = supp_type_ptr->getBool();
int support_int = support_type_ptr->getInt();
if (enable_support && (support_type == stNormalAuto || support_type == stNormal))
ap.brim_width = 5.0;
else if(enable_support) ap.brim_width = 22.0;
#endif
ap.height = obj->bounding_box().size().z();