From 1696d5ca39fb9becfdf422d97ef19b43b0b51620 Mon Sep 17 00:00:00 2001 From: SoftFever Date: Mon, 27 Jul 2026 03:08:47 +0800 Subject: [PATCH] Use the squared rib tower size in arrange estimates estimate_wipe_tower_polygon reserved the arrange footprint and clamped the tower X position with the raw prime_tower_width, under-reserving space whenever the rib wall squares the tower to a different width. --- src/slic3r/GUI/PartPlate.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/slic3r/GUI/PartPlate.cpp b/src/slic3r/GUI/PartPlate.cpp index 4b52592f2d..4f57c2577d 100644 --- a/src/slic3r/GUI/PartPlate.cpp +++ b/src/slic3r/GUI/PartPlate.cpp @@ -2298,6 +2298,7 @@ arrangement::ArrangePolygon PartPlate::estimate_wipe_tower_polygon(const Dynamic bool enable_wrapping = (wrapping_opt != nullptr) && wrapping_opt->value; wt_size = estimate_wipe_tower_size(config, w, v, extruder_count, plate_extruder_size, use_global_objects, enable_wrapping); int plate_width=m_width, plate_depth=m_depth; + w = wt_size(0); // effective width; differs from prime_tower_width when the rib wall squares the tower float depth = wt_size(1); float margin = WIPE_TOWER_MARGIN + tower_brim_width, wp_brim_width = 0.f; const ConfigOption* wipe_tower_brim_width_opt = config.option("prime_tower_brim_width");