Skip to content

ENH: add bridge_bottom_surface_pattern process setting - #11964

Open
bandesz wants to merge 1 commit into
bambulab:masterfrom
bandesz:enh-bridge-bottom-surface-pattern
Open

ENH: add bridge_bottom_surface_pattern process setting#11964
bandesz wants to merge 1 commit into
bambulab:masterfrom
bandesz:enh-bridge-bottom-surface-pattern

Conversation

@bandesz

@bandesz bandesz commented Aug 20, 2026

Copy link
Copy Markdown

Summary

  • Adds a process setting to choose the infill pattern for the underside of bridges (overhangs printed over support or air).
  • Pattern list matches top/bottom surface infill (Concentric, Rectilinear, Monotonic, etc.), with Default first.
  • Default uses monotonic when the top surface is monotonic, otherwise rectilinear — the same fallback as before this setting existed.
  • Addresses Select infill patern for bridge surface #3566.

The option lives under Strength → Top/bottom shells, is Advanced-mode, and is also available as a per-object/per-part override.

Why

Bridge infill is currently hardcoded to rectilinear (or monotonic only when the top surface pattern is monotonic). That works for rectangular overhangs, but round or fully supported bottoms (for example PLA supporting PETG with zero Z gap) benefit from concentric or other solid patterns.

Behavior

  • Default is setting behaviour, not a fill algorithm. It uses a dedicated BridgeBottomSurfacePattern enum so it is not on the shared InfillPattern map.
  • First-layer bottoms still use bottom_surface_pattern (is_bridge is only true for layer.id() > 0).
  • Non-first-layer stBottomBridge surfaces use bridge_bottom_surface_pattern.
  • Internal bridges (stInternalBridge) are unchanged.
  • Bridge flow is still used regardless of the selected pattern.
  • Changing the setting invalidates infill only (posInfill), same as other surface patterns.
  • bottom_surface_pattern tooltip still notes that it is not bridge infill.
  • New strings are marked with L(); language catalogs are left to the existing translation CI.

Test plan

  • Open Process settings → Strength → Top/bottom shells in Advanced mode and confirm Bridge bottom surface pattern appears next to Bottom surface pattern, with Default first, then the same pattern list.
  • Slice a model with a first-layer bottom: pattern still follows Bottom surface pattern, not the new setting.
  • Slice a model with an overhang/bridge (layer > 0) and Default: infill matches previous behaviour (monotonic if top surface is monotonic, otherwise rectilinear).
  • Change Bridge bottom surface pattern to Concentric / Monotonic / Hilbert and confirm preview infill updates without a full reslice.
  • Confirm per-object/per-part override in the object settings Strength section.
  • Load a BBL system process profile and confirm the default is Default (JSON key default).
  • Change the setting, switch presets, and confirm Unsaved Changes shows the human-readable pattern name.

Screenshots

Layer before the overhang, white layers are the support/raft interface (interface pattern set to concentric).

Screenshot 2026-08-21 at 08 45 28

Layer showing the bottom of the overhang, top object has bridge bottom surface pattern left as "Default", bottom object has it set to "Concentric"

Screenshot 2026-08-21 at 08 45 39

@bandesz
bandesz marked this pull request as draft August 20, 2026 08:00
@bandesz
bandesz force-pushed the enh-bridge-bottom-surface-pattern branch 2 times, most recently from 4f8d3dd to 1f272bc Compare August 20, 2026 18:11
Let users choose the infill pattern for the underside of bridges
(overhangs over support or air). The list matches top/bottom surface
infill, with Default first. Default uses monotonic when the top surface
is monotonic, otherwise rectilinear, preserving existing bridge infill.

Co-authored-by: Cursor <cursoragent@cursor.com>
@bandesz
bandesz force-pushed the enh-bridge-bottom-surface-pattern branch from 1f272bc to ce7b801 Compare August 20, 2026 19:20
@bandesz
bandesz marked this pull request as ready for review August 20, 2026 19:21
@bandesz

bandesz commented Aug 20, 2026

Copy link
Copy Markdown
Author

cc @SaltWei

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.

1 participant