Skip to content

make Fuzzy skin options only available when Fuzzy skin is not disabled#10312

Merged
SoftFever merged 68 commits into
OrcaSlicer:mainfrom
discip:patch-1
Jan 15, 2026
Merged

make Fuzzy skin options only available when Fuzzy skin is not disabled#10312
SoftFever merged 68 commits into
OrcaSlicer:mainfrom
discip:patch-1

Conversation

@discip

@discip discip commented Aug 2, 2025

Copy link
Copy Markdown
Contributor

Mimicking the behavior of Ironing.

demo

@ianalexis

Copy link
Copy Markdown
Collaborator

I would make a bool instead of FuzzySkinType fuzzy_skin = config->opt_enum<FuzzySkinType>("fuzzy_skin"); and latter fuzzy_skin != FuzzySkinType::None
Directly bool has_fuzzy_skin = config->opt_enum<FuzzySkinType>("fuzzy_skin") != FuzzySkinType::None;
Another thing, check you added a empty line (125) in .github/workflows/build_all.yml

@Noisyfox

Noisyfox commented Aug 3, 2025

Copy link
Copy Markdown
Collaborator

Fuzzy skin painting. I didn't bother to check if any fuzzy painting is applied so I just show those options regardless.

@discip

discip commented Aug 4, 2025

Copy link
Copy Markdown
Contributor Author

Is there a way to check whether Fuzzy skin painting is used?

@ianalexis

ianalexis commented Aug 5, 2025

Copy link
Copy Markdown
Collaborator

I would make a bool instead

Before paint on fuzzy it was like that

Is there a way to check whether Fuzzy skin painting is used?

JUST A QUICK SEARCH IF HELPS:
Try with ModelObject::is_fuzzy_skin_painted or is_fuzzy_skin_painted
Maybe add an option "Paint only" and modify the logic with that.
https://github.com/SoftFever/OrcaSlicer/blob/f27a40d29ba3dd525dd41f94b2856827c5c6c1cf/src/libslic3r/PrintApply.cpp#L1045

@SoftFever SoftFever requested a review from Copilot August 5, 2025 15:08

This comment was marked as outdated.

@discip

discip commented Aug 6, 2025

Copy link
Copy Markdown
Contributor Author

@SoftFever
Unfortunately the last build doesn't work for me.
It doesn't even make it past the splash screen.
I tried both AppImage and Flatpak.

Seems to be related to has_painted_fuzzy_skin.
I'm not sure if it is the correct way of implementing that.
Any idea on what might be wrong here? 😅

thanks in advance

@discip

discip commented Aug 8, 2025

Copy link
Copy Markdown
Contributor Author

@Noisyfox
Could you please assist with making it work with has_painted_fuzzy_skin.
I already tried to use Copilot, but it was not able to help me.

@Noisyfox

Noisyfox commented Aug 11, 2025

Copy link
Copy Markdown
Collaborator

There is no such option called painted_fuzzy_skin hens it didn't work. I think you need to either add an fuzzy skin mode called "painted" like what brim ear painting does; or introduce an hidden option that stores the fuzzy skin painting state, like how has_scarf_joint_seam is implemented (though I'm not sure if this could trigger the ConfigManipulation to update the UI).

discip added 2 commits August 11, 2025 08:36
Since I'm not able to include the dependency on **`Paint-on fuzzy skin`**, this is the working state for now.
Maybe one of the skilled programmers could improve it by implementing that feature as well. 😊
@Noisyfox

Noisyfox commented Nov 13, 2025

Copy link
Copy Markdown
Collaborator

One thoughts on this: BambuStudio added a new fuzzy type (disabled), which disabled both paint on fuzzy and normal fuzzy. I think that makes hiding these options easier. Maybe we could do the same thing and don't need to worry about checking different regions/options & adding internal hidden properties etc.

@discip

discip commented Nov 13, 2025

Copy link
Copy Markdown
Contributor Author

As you might have noticed, I'm no programmer, so I would be happy if you could take this on.
I'm thankful for every help I can get.

Noisyfox and others added 4 commits November 14, 2025 19:07
The fuzzy skin "None" option has been split into None (allow paint) and Disabled (disables painting). Two parameters can be adjusted in None mode, and the behavior remains the same as the original None mode. Additionally, can setting the "disable" modifier to suppress fuzzy generation within a specific area.

jira: STUDIO-14114
Change-Id: I174a3ff7adac05bc0a031a90a24a03b3d7ba41e8
(cherry picked from commit d38f4dd5e7f5a842a270de35b6a17bc5c4586485)
@Noisyfox Noisyfox changed the title make Fuzzy skin options only available when Fuzzy skin is enabled make Fuzzy skin options only available when Fuzzy skin is not disabled Nov 14, 2025
@Noisyfox

Copy link
Copy Markdown
Collaborator

Ok I've cherry picked the changes from BBS and made necessary changes accordingly.
One more thing that I'd like to do is adding a warning message in fuzzy painting gizmo if fuzzy mode is set to disabled (similar to what we have in brim painting gizmo).

@discip

discip commented Nov 14, 2025

Copy link
Copy Markdown
Contributor Author

Great!
Please do as you see fit.

Thank you!

@Noisyfox Noisyfox marked this pull request as ready for review November 14, 2025 14:39
@discip

discip commented Nov 14, 2025

Copy link
Copy Markdown
Contributor Author

Just 2 more thoughts:

  1. What about modifiers (height range, svg, ...).

    Maybe the text should say Only modifiers instead of None (allow paint)?

  2. Essentially None (allow paint) and Disabled are redundant as long as the latter does modifiers not prevent from having effect, while options are not accessible.

@Noisyfox

Copy link
Copy Markdown
Collaborator

2. Essentially None (allow paint) and Disabled are redundant as long as the latter does modifiers not prevent from having effect, while options are not accessible.

They are different, disabled act like a blocker when used with modifiers, while none means no global fuzzy but only painted on.

@discip

discip commented Nov 26, 2025

Copy link
Copy Markdown
Contributor Author

Then this should be good to go, right. 😊

const auto fuzziy_type = config.type;

if (fuzziy_type == FuzzySkinType::None) {
if (fuzziy_type == FuzzySkinType::None|| fuzziy_type == FuzzySkinType::Disabled_fuzzy) {

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Noisyfox

Any chance fuzziy is a typo?

Suggested change
if (fuzziy_type == FuzzySkinType::None|| fuzziy_type == FuzzySkinType::Disabled_fuzzy) {
if (fuzzy_type == FuzzySkinType::None|| fuzzy_type == FuzzySkinType::Disabled_fuzzy) {

@SoftFever SoftFever merged commit b37f68d into OrcaSlicer:main Jan 15, 2026
11 checks passed
ianalexis added a commit to OrcaSlicer/OrcaSlicer_WIKI that referenced this pull request May 8, 2026
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

Successfully merging this pull request may close these issues.

6 participants