Add overlap-aware preprocessingAutoJoin to union multi-mesh models before slicing#194
Draft
jgphilpott with Copilot wants to merge 5 commits into
Draft
Add overlap-aware preprocessingAutoJoin to union multi-mesh models before slicing#194jgphilpott with Copilot wants to merge 5 commits into
preprocessingAutoJoin to union multi-mesh models before slicing#194jgphilpott with Copilot wants to merge 5 commits into
Conversation
Copilot created this pull request from a session on behalf of
jgphilpott
July 1, 2026 16:34
View session
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.
Slicing multi-mesh designs (e.g. overlapping STL parts) was treating each mesh independently, producing interior wall paths through the model. This change adds an optional preprocessing join step that unions overlapping meshes into one printable solid before layer generation.
Configuration surface
preprocessingAutoJoin(defaultfalse) toPolysliceoptions.getPreprocessingAutoJoin()setPreprocessingAutoJoin(enabled)Preprocessing pipeline
extractMeshes(scene)to collect all mesh nodes from scene/group hierarchies.hasOverlappingMeshes(meshes)using world-space bounding-box intersection checks.autoJoinOverlappingMeshes(meshes):Polytree.unite(..., false)Slice integration
extractMeshes(...).preprocessingAutoJoinis enabled, slicing now attempts overlap-aware union before existing mesh preprocessing and layer slicing.Docs and benchmark usage
preprocessingAutoJoin.