Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CoolingBuffer.cpp:533 Assertion `sm.length > 0' failed in vase mode with fuzzy skin enabled. #13739

Open
2 tasks
themanyone opened this issue Dec 10, 2024 · 0 comments

Comments

@themanyone
Copy link
Contributor

themanyone commented Dec 10, 2024

Description of the bug

The assertion sm.length > 0 means that a G1/G2/G3 move inside a _EXTRUDE_SET_SPEED block has zero length. This can happen
when "fuzzy skin" is enabled in vase mode, as the perimeter generator might generate zero-length segments. The fix is to
ignore zero-length segments when accumulating length for a speed modifier.

Project file & How to reproduce

  1. Start prusa-slicer alpha
  2. Load a simple primitive such as "cylinder".
  3. Enable vase mode and fuzzy skin
  4. Slice
prusa-slicer: /home/k/Downloads/src/Prusa/src/libslic3r/GCode/CoolingBuffer.cpp:533: 
std::vector<Slic3r::PerExtruderAdjustments> Slic3r::CoolingBuffer::parse_layer_gcode(const std::string&, 
std::array<float, 5>&) const: Assertion `sm.length > 0' failed.

Aider bot suggested a patch to gracefully skip zero-length extrusions in cooling moves. Will follow up with a PR.

Checklist of files included above

  • Project file
  • Screenshot

Version of PrusaSlicer

2.9.9-alpha1 [git]

Operating system

Linux Fedora 41

Printer model

Geeetch A10T

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant