diff --git a/src/libslic3r/PerimeterGenerator.cpp b/src/libslic3r/PerimeterGenerator.cpp index e0a8be1e334..a773807d604 100644 --- a/src/libslic3r/PerimeterGenerator.cpp +++ b/src/libslic3r/PerimeterGenerator.cpp @@ -302,7 +302,8 @@ void PerimeterGenerator::process() last = diff_ex(last, unsupported_filtered); //ExPolygons no_bridge = diff_ex(offset_ex(unbridgeable, ext_perimeter_width * 3 / 2), last); //bridges_temp = diff_ex(bridges_temp, no_bridge); - unsupported_filtered = diff_ex(offset_ex(bridges_temp, ext_perimeter_width * 3 / 2), offset_ex(unbridgeable, ext_perimeter_width * 2, jtSquare)); + coordf_t bridged_infill_margin = config->bridged_infill_margin.get_abs_value(ext_perimeter_width); + unsupported_filtered = diff_ex(offset_ex(bridges_temp, bridged_infill_margin), offset_ex(unbridgeable, ext_perimeter_width * 2, jtSquare)); unsupported_filtered = intersection_ex(unsupported_filtered, reference); } else { ExPolygons unbridgeable = intersection_ex(unsupported, diff_ex(unsupported_filtered, offset_ex(bridgeable_simplified, ext_perimeter_width / 2))); diff --git a/src/libslic3r/PrintObject.cpp b/src/libslic3r/PrintObject.cpp index ef3ea78cd84..c9d48093f53 100644 --- a/src/libslic3r/PrintObject.cpp +++ b/src/libslic3r/PrintObject.cpp @@ -825,7 +825,6 @@ namespace Slic3r { } } else if ( opt_key == "bottom_solid_min_thickness" - || opt_key == "bridged_infill_margin" || opt_key == "ensure_vertical_shell_thickness" || opt_key == "fill_density" || opt_key == "interface_shells" @@ -868,6 +867,7 @@ namespace Slic3r { steps.emplace_back(posInfill); } else if ( opt_key == "bridge_angle" + || opt_key == "bridged_infill_margin" || opt_key == "extra_perimeters" || opt_key == "extra_perimeters_odd_layers" || opt_key == "external_infill_margin"