Skip to content

feat: add print bed visualization with config system (Feature 5)#10

Merged
kraulerson merged 10 commits intomainfrom
feat/print-bed-visualization
Apr 8, 2026
Merged

feat: add print bed visualization with config system (Feature 5)#10
kraulerson merged 10 commits intomainfrom
feat/print-bed-visualization

Conversation

@kraulerson
Copy link
Copy Markdown
Owner

Summary

  • Add schema-versioned user preferences system (config.py) with atomic write and corrupt-file recovery
  • Add print volume overlay: wireframe box + 10mm grid floor, toggleable via toolbar (P) or View menu
  • 5 printer presets (Ender 3, Prusa MK4, Voron 2.4, Bambu X1 Carbon, Bambu P1S) + custom dimensions dialog
  • Overflow detection with hatching on floor (X/Y) and ceiling plane (Z) + status bar text
  • Preset selection persisted across sessions via config

Test Plan

  • 272 tests passing (45 new: 13 config, 18 print bed, 6 scene manager, 10 main window)
  • ruff: clean
  • mypy: clean
  • Visual smoke test — toggle, presets, custom dialog, overflow hatching on all 3 axes
  • Feature recorded: 1/2 toward next UAT

🤖 Generated with Claude Code

Karl Raulerson and others added 10 commits April 7, 2026 17:34
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Print volume wireframe box + grid floor with 5 printer presets,
custom dimensions dialog, overflow hatching, and full schema-versioned
config system. Approved during brainstorming session.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
5-task TDD plan: config module, PrintBedManager, SceneManager
integration, MainWindow UI (toggle, dropdown, custom dialog),
and manual smoke test.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Adds AppConfig, load_config, and save_config with deep-merge defaults,
corrupt/version-mismatch recovery, and atomic rename write.
11 unit tests, all passing.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…rflow

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds show_print_bed(), hide_print_bed(), and print_bed_visible to
SceneManager. clear() now also removes print bed actors. 6 new tests,
all 258 tests pass.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…alog into MainWindow

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Covers the type annotation fixes in c53dd79.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
When mesh exceeds bed Z height, a hatched plane is drawn at the
Z ceiling to visually indicate the overflow. Extends the existing
X/Y floor hatching pattern to all three axes.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@kraulerson kraulerson merged commit 3f67a39 into main Apr 8, 2026
2 of 5 checks passed
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