Ultimaker / Cura

3D printer / slicing GUI built on top of the Uranium framework
GNU Lesser General Public License v3.0
6.08k stars 2.06k forks source link

[5.4.0] Not using shortest route between areas to bridge #16917

Open techflick opened 11 months ago

techflick commented 11 months ago

Cura Version

5.4.0

Operating System

Windows 10, 22H2, 19045.3448

Printer

Anycubic i3 Mega and Chiron

Reproduction steps

I wanted to force Cura to use bridging over narrow gaps on my model (by bumping up Bridge Skin Support Threshold), so bending of the bridged area would be more reliable.

Actual results

I then discovered that Curas bridging is not (in all areas) following the shortest path between the areas to bridge /across the area to bridge, which leads Cura to use irrationally long bridges and in 90° to the expected direction over the intended bridging area. irrational Bridging real world application irrational Bridging narrow irrational Bridging whide

Expected results

  1. I expected Short bridges, only across the narrow gap or at least over the whole area, in the same direction as the expected short bridges. shortbridge_pathsugestion png 5fc3bc9bfcfe4f8b543e639cc746588a
  2. After some consideration I concluded it must be because the length between the infill and the outer wall (a) is considered shorter than the path directly across the area to bridge (d) / it is ignored that to bridge the whole path directly across the area (b) would still be much shorter and more reliable than across the whole width (c) of the part. Depending on how the algorithm is working or is intended to work.

Add your .zip and screenshots here ⬇️

irrational Bridging .zip

tripletto commented 11 months ago

Jupp, had this as well. Cura 5.4 really loves to bridge 100 mm in length when it had the option to bridge only 20 mm instead, which would be the rational choice.

techflick commented 11 months ago

While I was compiling the simple model for reproducing of the bug I actually discovered as a workaround that it is working as expected when there is a bit more meat on the narrow side. But some times it is not possible to alter the model in this way and so the question stays: In the case of the narrow area, why are the short sides (brown) more valid then the long side (blue) to bridge between, if one of this possibility does not bridge the shortest path over the gap? more meat_validety More Meat.zip

techflick commented 4 months ago

I had a situation with the same problematic case and it seems 7.5.1 is working as expected for now.