feat: show sequential print order in object list (front-to-back) #914

Open
opened 2026-04-05 16:35:12 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @SilentAxis on 2/1/2026

Summary

  • Display [1] [2] [3] sequence number prefixes on object names in the sidebar when sequential printing (By Object) is enabled
  • Sort objects by Y position (lowest Y = front of bed = printed first) to indicate fan-safe print order
  • Fix auto-arrange to order print sequence front-to-back in sequential mode

Motivation

Printers with rear-mounted part cooling fans (e.g., Neptune 4 Max) need objects to print front-to-back to avoid the fan hitting previously printed parts. This feature makes the print order visible before slicing and ensures auto-arrange respects this ordering.

Changes

  • ObjectDataViewModel.hpp/cpp: Added display-only prefix (m_seq_prefix) to object list items, with Y-position sorting
  • GUI_ObjectList.hpp/cpp: Added update_sequential_print_order() for triggering refreshes
  • Plater.cpp: Triggers order update after background validation
  • PartPlate.cpp: Sort model objects by Y position after auto-arrange in sequential mode

Test plan

  • Enable By Object print sequence, add 3+ objects at different Y positions
  • Verify [1] [2] [3] appear in sidebar ordered front-to-back
  • Click Auto-arrange, verify order matches spatial layout
  • Move objects, verify numbers update
  • Switch to By Layer mode, verify prefixes disappear
*Originally created by @SilentAxis on 2/1/2026* ## Summary - Display [1] [2] [3] sequence number prefixes on object names in the sidebar when sequential printing (By Object) is enabled - Sort objects by Y position (lowest Y = front of bed = printed first) to indicate fan-safe print order - Fix auto-arrange to order print sequence front-to-back in sequential mode ## Motivation Printers with rear-mounted part cooling fans (e.g., Neptune 4 Max) need objects to print front-to-back to avoid the fan hitting previously printed parts. This feature makes the print order visible before slicing and ensures auto-arrange respects this ordering. ## Changes - **ObjectDataViewModel.hpp/cpp**: Added display-only prefix (m_seq_prefix) to object list items, with Y-position sorting - **GUI_ObjectList.hpp/cpp**: Added update_sequential_print_order() for triggering refreshes - **Plater.cpp**: Triggers order update after background validation - **PartPlate.cpp**: Sort model objects by Y position after auto-arrange in sequential mode ## Test plan - [ ] Enable By Object print sequence, add 3+ objects at different Y positions - [ ] Verify [1] [2] [3] appear in sidebar ordered front-to-back - [ ] Click Auto-arrange, verify order matches spatial layout - [ ] Move objects, verify numbers update - [ ] Switch to By Layer mode, verify prefixes disappear
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/OrcaSlicer#914