Skip to content

Apply fuzzy skin to the spiral wall when spiralize is enabled#2348

Open
kvanonavk (kvanonavk) wants to merge 1 commit into
Ultimaker:mainfrom
kvanonavk:fix-fuzzy-skin-spiralize-12850
Open

Apply fuzzy skin to the spiral wall when spiralize is enabled#2348
kvanonavk (kvanonavk) wants to merge 1 commit into
Ultimaker:mainfrom
kvanonavk:fix-fuzzy-skin-spiralize-12850

Conversation

@kvanonavk

Copy link
Copy Markdown

Description

This fixes fuzzy skin not being applied when Spiralize Outer Contour is enabled, a regression introduced with the variable-width wall toolpaths (Arachne) in Cura 5.0.

FffPolygonGenerator::processFuzzyWalls() only processes part.wall_toolpaths, but in spiralize mode the wall is stored as plain polygons in part.spiral_wall, so fuzzy skin was only visible on the initial bottom layers (the only layers that get wall toolpaths). Before 5.0 the spiral wall was handled explicitly (spiralize ? part.spiral_wall : part.insets[0]).

This restores that behavior by applying the same fuzzing to the spiral wall polygons, including the "Fuzzy Skin Outside Only" hole check and the first-layer brim exception.

Fixes Ultimaker/Cura#12850

Type of change

  • Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

  • Headless CLI slices of tests/integration/resources/cylinder1000.stl with magic_spiralize=true and magic_fuzzy_skin_enabled=true (otherwise default fdmprinter settings), comparing the radial deviation of the wall from the layer centroid per layer:
    • Before: spiralized layers were perfect circles (radial std. dev. ≈ 0.004 mm, i.e. only simplification noise); only the initial bottom layers were fuzzed.
    • After: every spiralized layer shows the expected jitter (std. dev. ≈ 0.15 mm at the default 0.3 mm fuzzy thickness), while the bottom layers are unchanged.
  • Regression check: slicing with fuzzy skin enabled but spiralize disabled is unaffected.
  • Visual check of the sliced result in the Cura preview.

Test Configuration:

  • Operating System: Windows 11

IMPORTANT

The code was generated using Claude's Fable model. I was annoyed by this bug for quite a while (the issue on Github is almost 4 years old) so I decided to give it a go using Fable. Looks fine and works as expected but I'd really appreciate if someone could take a look at it and verify that it can be merged, thank you!

@github-actions github-actions Bot added the PR: Community Contribution 👑 Community Contribution PR's label Jul 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

PR: Community Contribution 👑 Community Contribution PR's

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fuzzy skin not working with spiralize outer contour mode

1 participant