feat: add support_interface_min_area - #615
Merged
zackaree-shen merged 3 commits intoJul 27, 2026
Merged
Conversation
|
❌ Documentation validation failed 🔗 Link Validation Errors📄 doc/developer-reference\Built-in-placeholders-variables.md:
📄 doc/developer-reference\How-to-wiki.md:
📄 doc/Home.md:
📄 doc/Tab.cpp:
🖼️ Image Validation Errors📄 doc/developer-reference\How-to-create-profiles.md:
|
|
❌ Documentation validation failed 🔗 Link Validation Errors📄 doc/developer-reference\Built-in-placeholders-variables.md:
📄 doc/developer-reference\How-to-wiki.md:
📄 doc/Home.md:
📄 doc/Tab.cpp:
🖼️ Image Validation Errors📄 doc/developer-reference\How-to-create-profiles.md:
|
zackaree-shen
approved these changes
Jul 27, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Introduces a user-configurable option
support_interface_min_area(minimum support contact area) that exposes theminimum_roof_areathreshold — previously hardcoded to 1 mm² in the tree support paths — and lowers its default to 0.25 mm².Background / Motivation
Tree supports tend to generate many tiny roof / interface fragments under small overhangs. These fragments extrude unstably, give poor support performance, and add slicing noise. The area threshold was previously hardcoded (1 mm²) in both the node-based and organic tree implementations, with no way to tune it per machine / material / use case. This PR promotes it to a visible setting, letting users balance keeping more precise small contact patches against dropping fragmented contacts in favor of normal support.
Option details
support_interface_min_areacoFloat(f_enum_open— preset values + free input)0/0.25/0.64/10(0 = no filtering, keep all contact surfaces)Changes
1. Definition & propagation
support_interface_min_area(label / tooltip / sidetext / enum / default).minimum_roof_areachanged fromconst 1.0to a value read from config.TreeSupportMeshGroupSettings::minimum_roof_areais read from config; default 1.0 → 0.25.2. Full UI / config integration
invalidate_state_by_config_optionsso changing the value triggers a re-slice._L()so it is localizable.3. Localization:
.pottemplate + all 20 language.pofiles translated (one label + one tooltip each); verified withmsgfmt --check-format.Scope & behavior change⚠️
1(or0to disable filtering entirely).Verification
.pofiles compiled to.moviascripts/run_gettext.bat;--check-formatpasses.0 / 0.25 / 1on models with fine overhangs (e.g. Benchy mast/chimney, cantilever test parts) and check removability.Files (32)
.pot+ 20.po;zh_CN.poincludes context lines)default.mp4