Support upload g-code to third-party printers#2
Merged
Conversation
SoftFever
added a commit
that referenced
this pull request
Aug 20, 2022
This reverts commit dc5e0ee.
2 tasks
ZdDroid
pushed a commit
to ZdDroid/OrcaSlicer
that referenced
this pull request
Oct 16, 2023
选择打印机增加关键字搜索OrcaSlicer#2
ZdDroid
pushed a commit
to ZdDroid/OrcaSlicer
that referenced
this pull request
Oct 18, 2023
2 tasks
2 tasks
2 tasks
3 tasks
3 tasks
3 tasks
buzzhuzz
added a commit
to buzzhuzz/OrcaSlicer
that referenced
this pull request
Jan 10, 2025
3 tasks
3 tasks
SoftFever
added a commit
that referenced
this pull request
Feb 25, 2025
* Add Zink Override Add Zink Override * Add Zink Override (#1) Add Zink Override * Fix escape literals * Fix Escape Literals (#2) * Add Zink Override Add Zink Override * Fix escape literals * Add checks for wayland/render gpu and manual user overrides --------- Co-authored-by: SoftFever <[email protected]>
edmondhuang
added a commit
to edmondhuang/OrcaSlicer
that referenced
this pull request
Mar 25, 2025
1 task
valerii-bokhan
added a commit
to valerii-bokhan/OrcaSlicer
that referenced
this pull request
Jan 28, 2026
commit 7fdf371 Author: kisslorand <[email protected]> Date: Thu Jan 22 13:44:11 2026 +0200 Fix tree support interface layer counts and contact handling - Correct non‑organic tree top interface layer budgeting so gaps don’t consume a layer (N stays N). - Remove the extra roof interface pass that was duplicating the 2nd layer. - Organic tree: use only the lowest contact footprint and avoid extra bottom‑contact extrusion so interface count matches the user setting. commit 73baf88 Author: kisslorand <[email protected]> Date: Wed Jan 7 17:50:17 2026 +0200 Enable support interface multimaterial for non organic tree Enables mixed-material support interface behavior for non organic tree support type. commit 606f4d8 Author: kisslorand <[email protected]> Date: Wed Jan 7 17:21:27 2026 +0200 Fix non organic tree interlaced support generation Deterministic local interlaced support layers generation for non-organic tree support commit 5996ab9 Author: kisslorand <[email protected]> Date: Tue Jan 6 16:21:17 2026 +0200 Fix non organic tree bottom support interface generation Slim tree bottom interface layer numbers were capped by the object's layer number beneath it. Fixed by refactoring the generation algorithm. commit e292b18 Author: kisslorand <[email protected]> Date: Sun Jan 4 01:29:15 2026 +0200 Typo and semantics fix differnt_support_interface_filament -> different_support_interface_filament soluble -> zero_top_z_gap commit 9e4c70a Author: kisslorand <[email protected]> Date: Sat Jan 3 18:47:28 2026 +0200 Additional fixes and robustness improvements Fix incorrect coupling between top and bottom support interface spacing and density, ensuring bottom interfaces use their own parameters for smoothing and toolpath generation. Restore correct bottom interface generation for organic (tree) supports when a non-zero bottom Z gap is used, and preserve contacts even when base polygons are empty. Improve robustness of organic support slicing by fixing layer index drift and guarding against degenerate polygon boolean operations. commit 710a388 Author: kisslorand <[email protected]> Date: Thu Jan 1 23:35:22 2026 +0200 Fix support interface semantics and gap handling Fix zero-gap interface detection and gap initialization for supports and raft. Ensures correct top/bottom contact semantics and avoids relying on default zero gaps. commit 12f51f9 Author: SoftFever <[email protected]> Date: Thu Jan 22 18:26:24 2026 +0800 try to fix build errors OrcaSlicer#2
valerii-bokhan
added a commit
to valerii-bokhan/OrcaSlicer
that referenced
this pull request
Jan 30, 2026
commit 7fdf371 Author: kisslorand <[email protected]> Date: Thu Jan 22 13:44:11 2026 +0200 Fix tree support interface layer counts and contact handling - Correct non‑organic tree top interface layer budgeting so gaps don’t consume a layer (N stays N). - Remove the extra roof interface pass that was duplicating the 2nd layer. - Organic tree: use only the lowest contact footprint and avoid extra bottom‑contact extrusion so interface count matches the user setting. commit 73baf88 Author: kisslorand <[email protected]> Date: Wed Jan 7 17:50:17 2026 +0200 Enable support interface multimaterial for non organic tree Enables mixed-material support interface behavior for non organic tree support type. commit 606f4d8 Author: kisslorand <[email protected]> Date: Wed Jan 7 17:21:27 2026 +0200 Fix non organic tree interlaced support generation Deterministic local interlaced support layers generation for non-organic tree support commit 5996ab9 Author: kisslorand <[email protected]> Date: Tue Jan 6 16:21:17 2026 +0200 Fix non organic tree bottom support interface generation Slim tree bottom interface layer numbers were capped by the object's layer number beneath it. Fixed by refactoring the generation algorithm. commit e292b18 Author: kisslorand <[email protected]> Date: Sun Jan 4 01:29:15 2026 +0200 Typo and semantics fix differnt_support_interface_filament -> different_support_interface_filament soluble -> zero_top_z_gap commit 9e4c70a Author: kisslorand <[email protected]> Date: Sat Jan 3 18:47:28 2026 +0200 Additional fixes and robustness improvements Fix incorrect coupling between top and bottom support interface spacing and density, ensuring bottom interfaces use their own parameters for smoothing and toolpath generation. Restore correct bottom interface generation for organic (tree) supports when a non-zero bottom Z gap is used, and preserve contacts even when base polygons are empty. Improve robustness of organic support slicing by fixing layer index drift and guarding against degenerate polygon boolean operations. commit 710a388 Author: kisslorand <[email protected]> Date: Thu Jan 1 23:35:22 2026 +0200 Fix support interface semantics and gap handling Fix zero-gap interface detection and gap initialization for supports and raft. Ensures correct top/bottom contact semantics and avoids relying on default zero gaps. commit 12f51f9 Author: SoftFever <[email protected]> Date: Thu Jan 22 18:26:24 2026 +0800 try to fix build errors OrcaSlicer#2
valerii-bokhan
added a commit
to valerii-bokhan/OrcaSlicer
that referenced
this pull request
Feb 1, 2026
commit 7fdf371 Author: kisslorand <[email protected]> Date: Thu Jan 22 13:44:11 2026 +0200 Fix tree support interface layer counts and contact handling - Correct non‑organic tree top interface layer budgeting so gaps don’t consume a layer (N stays N). - Remove the extra roof interface pass that was duplicating the 2nd layer. - Organic tree: use only the lowest contact footprint and avoid extra bottom‑contact extrusion so interface count matches the user setting. commit 73baf88 Author: kisslorand <[email protected]> Date: Wed Jan 7 17:50:17 2026 +0200 Enable support interface multimaterial for non organic tree Enables mixed-material support interface behavior for non organic tree support type. commit 606f4d8 Author: kisslorand <[email protected]> Date: Wed Jan 7 17:21:27 2026 +0200 Fix non organic tree interlaced support generation Deterministic local interlaced support layers generation for non-organic tree support commit 5996ab9 Author: kisslorand <[email protected]> Date: Tue Jan 6 16:21:17 2026 +0200 Fix non organic tree bottom support interface generation Slim tree bottom interface layer numbers were capped by the object's layer number beneath it. Fixed by refactoring the generation algorithm. commit e292b18 Author: kisslorand <[email protected]> Date: Sun Jan 4 01:29:15 2026 +0200 Typo and semantics fix differnt_support_interface_filament -> different_support_interface_filament soluble -> zero_top_z_gap commit 9e4c70a Author: kisslorand <[email protected]> Date: Sat Jan 3 18:47:28 2026 +0200 Additional fixes and robustness improvements Fix incorrect coupling between top and bottom support interface spacing and density, ensuring bottom interfaces use their own parameters for smoothing and toolpath generation. Restore correct bottom interface generation for organic (tree) supports when a non-zero bottom Z gap is used, and preserve contacts even when base polygons are empty. Improve robustness of organic support slicing by fixing layer index drift and guarding against degenerate polygon boolean operations. commit 710a388 Author: kisslorand <[email protected]> Date: Thu Jan 1 23:35:22 2026 +0200 Fix support interface semantics and gap handling Fix zero-gap interface detection and gap initialization for supports and raft. Ensures correct top/bottom contact semantics and avoids relying on default zero gaps. commit 12f51f9 Author: SoftFever <[email protected]> Date: Thu Jan 22 18:26:24 2026 +0800 try to fix build errors OrcaSlicer#2
valerii-bokhan
added a commit
to valerii-bokhan/OrcaSlicer
that referenced
this pull request
Feb 2, 2026
commit 7fdf371 Author: kisslorand <[email protected]> Date: Thu Jan 22 13:44:11 2026 +0200 Fix tree support interface layer counts and contact handling - Correct non‑organic tree top interface layer budgeting so gaps don’t consume a layer (N stays N). - Remove the extra roof interface pass that was duplicating the 2nd layer. - Organic tree: use only the lowest contact footprint and avoid extra bottom‑contact extrusion so interface count matches the user setting. commit 73baf88 Author: kisslorand <[email protected]> Date: Wed Jan 7 17:50:17 2026 +0200 Enable support interface multimaterial for non organic tree Enables mixed-material support interface behavior for non organic tree support type. commit 606f4d8 Author: kisslorand <[email protected]> Date: Wed Jan 7 17:21:27 2026 +0200 Fix non organic tree interlaced support generation Deterministic local interlaced support layers generation for non-organic tree support commit 5996ab9 Author: kisslorand <[email protected]> Date: Tue Jan 6 16:21:17 2026 +0200 Fix non organic tree bottom support interface generation Slim tree bottom interface layer numbers were capped by the object's layer number beneath it. Fixed by refactoring the generation algorithm. commit e292b18 Author: kisslorand <[email protected]> Date: Sun Jan 4 01:29:15 2026 +0200 Typo and semantics fix differnt_support_interface_filament -> different_support_interface_filament soluble -> zero_top_z_gap commit 9e4c70a Author: kisslorand <[email protected]> Date: Sat Jan 3 18:47:28 2026 +0200 Additional fixes and robustness improvements Fix incorrect coupling between top and bottom support interface spacing and density, ensuring bottom interfaces use their own parameters for smoothing and toolpath generation. Restore correct bottom interface generation for organic (tree) supports when a non-zero bottom Z gap is used, and preserve contacts even when base polygons are empty. Improve robustness of organic support slicing by fixing layer index drift and guarding against degenerate polygon boolean operations. commit 710a388 Author: kisslorand <[email protected]> Date: Thu Jan 1 23:35:22 2026 +0200 Fix support interface semantics and gap handling Fix zero-gap interface detection and gap initialization for supports and raft. Ensures correct top/bottom contact semantics and avoids relying on default zero gaps. commit 12f51f9 Author: SoftFever <[email protected]> Date: Thu Jan 22 18:26:24 2026 +0800 try to fix build errors OrcaSlicer#2
valerii-bokhan
added a commit
to valerii-bokhan/OrcaSlicer
that referenced
this pull request
Feb 2, 2026
commit 7fdf371 Author: kisslorand <[email protected]> Date: Thu Jan 22 13:44:11 2026 +0200 Fix tree support interface layer counts and contact handling - Correct non‑organic tree top interface layer budgeting so gaps don’t consume a layer (N stays N). - Remove the extra roof interface pass that was duplicating the 2nd layer. - Organic tree: use only the lowest contact footprint and avoid extra bottom‑contact extrusion so interface count matches the user setting. commit 73baf88 Author: kisslorand <[email protected]> Date: Wed Jan 7 17:50:17 2026 +0200 Enable support interface multimaterial for non organic tree Enables mixed-material support interface behavior for non organic tree support type. commit 606f4d8 Author: kisslorand <[email protected]> Date: Wed Jan 7 17:21:27 2026 +0200 Fix non organic tree interlaced support generation Deterministic local interlaced support layers generation for non-organic tree support commit 5996ab9 Author: kisslorand <[email protected]> Date: Tue Jan 6 16:21:17 2026 +0200 Fix non organic tree bottom support interface generation Slim tree bottom interface layer numbers were capped by the object's layer number beneath it. Fixed by refactoring the generation algorithm. commit e292b18 Author: kisslorand <[email protected]> Date: Sun Jan 4 01:29:15 2026 +0200 Typo and semantics fix differnt_support_interface_filament -> different_support_interface_filament soluble -> zero_top_z_gap commit 9e4c70a Author: kisslorand <[email protected]> Date: Sat Jan 3 18:47:28 2026 +0200 Additional fixes and robustness improvements Fix incorrect coupling between top and bottom support interface spacing and density, ensuring bottom interfaces use their own parameters for smoothing and toolpath generation. Restore correct bottom interface generation for organic (tree) supports when a non-zero bottom Z gap is used, and preserve contacts even when base polygons are empty. Improve robustness of organic support slicing by fixing layer index drift and guarding against degenerate polygon boolean operations. commit 710a388 Author: kisslorand <[email protected]> Date: Thu Jan 1 23:35:22 2026 +0200 Fix support interface semantics and gap handling Fix zero-gap interface detection and gap initialization for supports and raft. Ensures correct top/bottom contact semantics and avoids relying on default zero gaps. commit 12f51f9 Author: SoftFever <[email protected]> Date: Thu Jan 22 18:26:24 2026 +0800 try to fix build errors OrcaSlicer#2
valerii-bokhan
added a commit
to valerii-bokhan/OrcaSlicer
that referenced
this pull request
Feb 2, 2026
commit 7fdf371 Author: kisslorand <[email protected]> Date: Thu Jan 22 13:44:11 2026 +0200 Fix tree support interface layer counts and contact handling - Correct non‑organic tree top interface layer budgeting so gaps don’t consume a layer (N stays N). - Remove the extra roof interface pass that was duplicating the 2nd layer. - Organic tree: use only the lowest contact footprint and avoid extra bottom‑contact extrusion so interface count matches the user setting. commit 73baf88 Author: kisslorand <[email protected]> Date: Wed Jan 7 17:50:17 2026 +0200 Enable support interface multimaterial for non organic tree Enables mixed-material support interface behavior for non organic tree support type. commit 606f4d8 Author: kisslorand <[email protected]> Date: Wed Jan 7 17:21:27 2026 +0200 Fix non organic tree interlaced support generation Deterministic local interlaced support layers generation for non-organic tree support commit 5996ab9 Author: kisslorand <[email protected]> Date: Tue Jan 6 16:21:17 2026 +0200 Fix non organic tree bottom support interface generation Slim tree bottom interface layer numbers were capped by the object's layer number beneath it. Fixed by refactoring the generation algorithm. commit e292b18 Author: kisslorand <[email protected]> Date: Sun Jan 4 01:29:15 2026 +0200 Typo and semantics fix differnt_support_interface_filament -> different_support_interface_filament soluble -> zero_top_z_gap commit 9e4c70a Author: kisslorand <[email protected]> Date: Sat Jan 3 18:47:28 2026 +0200 Additional fixes and robustness improvements Fix incorrect coupling between top and bottom support interface spacing and density, ensuring bottom interfaces use their own parameters for smoothing and toolpath generation. Restore correct bottom interface generation for organic (tree) supports when a non-zero bottom Z gap is used, and preserve contacts even when base polygons are empty. Improve robustness of organic support slicing by fixing layer index drift and guarding against degenerate polygon boolean operations. commit 710a388 Author: kisslorand <[email protected]> Date: Thu Jan 1 23:35:22 2026 +0200 Fix support interface semantics and gap handling Fix zero-gap interface detection and gap initialization for supports and raft. Ensures correct top/bottom contact semantics and avoids relying on default zero gaps. commit 12f51f9 Author: SoftFever <[email protected]> Date: Thu Jan 22 18:26:24 2026 +0800 try to fix build errors OrcaSlicer#2
edmondhuang
added a commit
to edmondhuang/OrcaSlicer
that referenced
this pull request
Feb 6, 2026
1 task
cdvankammen
added a commit
to cdvankammen/OrcaSlicer
that referenced
this pull request
Feb 15, 2026
Phase 4 Completion Summary What Was Implemented (~315 lines of code) 1. Extended PlateSettingsDialog (PlateSettingsDialog.hpp +25 lines) - Added checkboxes for custom printer/filaments - Added ComboBox controls for preset selection - Added sync and getter methods 2. Dialog UI Implementation (PlateSettingsDialog.cpp +265 lines) - Printer preset section with checkbox + dropdown - Filament presets section with checkbox + multiple dropdowns (one per extruder) - Populate methods that load presets from PresetBundle - Sync methods that load current values from PartPlate - Getter methods that return selected values 3. Plater Integration (Plater.cpp +20 lines) - Load current preset names when dialog opens - Save selected preset names when user clicks OK - Logging for debugging 4. Visual Indicator (PartPlate.cpp +5 lines) - Updated condition to show "changed" icon when plate has custom presets User Experience The dialog now has this layout: ┌─ Plate Settings ─────────────────────────┐ │ │ │ [existing settings: bed type, etc.] │ │ │ │ [✓] Custom printer for this plate │ │ [Bambu Lab X1C 0.4 nozzle ▼] │ │ │ │ [✓] Custom filaments for this plate │ │ Extruder 1: [PLA Basic ▼] │ │ Extruder 2: [PETG Basic ▼] │ │ Extruder 3: [TPU 95A ▼] │ │ │ │ [Cancel] [OK] │ └───────────────────────────────────────────┘ Features - ✅ Checkboxes enable/disable preset selection - ✅ Dropdowns populated from PresetBundle with all visible presets - ✅ "Same as Global" option at top of each dropdown - ✅ Per-extruder filament selection - ✅ Full save/load integration with PartPlate - ✅ Visual indicator (colored icon) when plate has custom settings Feature OrcaSlicer#2 Overall Progress Status: 80% Complete (4/5 phases done) Phase: 1. Backend Data Structures Status: ✅ Complete Lines: ~25 ──────────────────────────────────────── Phase: 2. 3MF Serialization Status: ✅ Complete Lines: ~50 ──────────────────────────────────────── Phase: 3. Config Resolution Status: ✅ Complete Lines: ~105 ──────────────────────────────────────── Phase: 4. GUI Implementation Status: ✅ Complete Lines: ~315 ──────────────────────────────────────── Phase: 5. Slicing Integration & Testing Status: 📋 Pending Lines: ~280 est. ──────────────────────────────────────── Phase: Total Status: 80% Lines: 495 / 775 What Remains (Phase 5) - Apply plate config during slicing (~100 lines, 2-3 hours) - Add validation checks (~80 lines, 1-2 hours) - Comprehensive testing (~100 lines tests, 4-6 hours) Estimated time to complete Feature OrcaSlicer#2: 7-11 hours The GUI is now fully functional and ready for slicing integration!
1 task
wight554
pushed a commit
to wight554/OrcaSlicer
that referenced
this pull request
Mar 13, 2026
* feat: Add preset renaming functionality This commit introduces the ability to rename printer and filament presets. It includes a new dialog for renaming, updates to the preset management classes, and UI integration for the rename action. Co-authored-by: bickusua <[email protected]> * Fix: Correctly save renamed presets and remove unused DPI logic Co-authored-by: bickusua <[email protected]> * feat: Add preset rename history and dialog Co-authored-by: bickusua <[email protected]> * Refactor config option access and remove unnecessary Wrap call Co-authored-by: bickusua <[email protected]> * Refactor RenamedProfilesDialog for better layout and appearance Co-authored-by: bickusua <[email protected]> * Fix: Remove unnecessary label alignment in RenamedProfilesDialog Co-authored-by: bickusua <[email protected]> * Refactor RenamedProfilesDialog to use static text for labels Co-authored-by: bickusua <[email protected]> * Fix: Use standard arrow for profile rename description Co-authored-by: bickusua <[email protected]> --------- Co-authored-by: Cursor Agent <[email protected]> Co-authored-by: bickusua <[email protected]>
wight554
pushed a commit
to wight554/OrcaSlicer
that referenced
this pull request
Mar 14, 2026
* feat: Add preset renaming functionality This commit introduces the ability to rename printer and filament presets. It includes a new dialog for renaming, updates to the preset management classes, and UI integration for the rename action. Co-authored-by: bickusua <[email protected]> * Fix: Correctly save renamed presets and remove unused DPI logic Co-authored-by: bickusua <[email protected]> * feat: Add preset rename history and dialog Co-authored-by: bickusua <[email protected]> * Refactor config option access and remove unnecessary Wrap call Co-authored-by: bickusua <[email protected]> * Refactor RenamedProfilesDialog for better layout and appearance Co-authored-by: bickusua <[email protected]> * Fix: Remove unnecessary label alignment in RenamedProfilesDialog Co-authored-by: bickusua <[email protected]> * Refactor RenamedProfilesDialog to use static text for labels Co-authored-by: bickusua <[email protected]> * Fix: Use standard arrow for profile rename description Co-authored-by: bickusua <[email protected]> --------- Co-authored-by: Cursor Agent <[email protected]> Co-authored-by: bickusua <[email protected]>
thereprocase
added a commit
to thereprocase/OrcaSlicer
that referenced
this pull request
Mar 31, 2026
Uruk #1: Single part = center on bed instantly, no GA wasted Uruk OrcaSlicer#5: Tiny bed (120mm A1 Mini) — halved bed margin from 1mm to 0.5mm per side to avoid over-shrinking small beds Also: moved bed dimension vars to function scope for early-exit paths Remaining Uruk issues (documented, not yet fixed): - OrcaSlicer#2: Re-arrange doesn't preserve previous positions (by design — Snuggle re-nests all selected parts from scratch) - OrcaSlicer#3: Unit mismatch (inch STLs) — Orca's import handles unit conversion before Snuggle sees the mesh - OrcaSlicer#4: Extreme size ratios — needs adaptive voxel resolution Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
thereprocase
added a commit
to thereprocase/OrcaSlicer
that referenced
this pull request
Mar 31, 2026
Issue #1 (WRONG): Single-part centering didn't set rotation field. Fix: explicit items[0].rotation = 0.0 Issue OrcaSlicer#2 (WRONG/HIGH): Empty voxel grids silently bypassed collision detection. Parts with failed voxelization appeared as zero-size points that never collided with anything. Fix: Empty grids are now detected and marked UNARRANGED before reaching the nester. nester_to_item mapping translates indices back correctly when writing results. Also verified NOT breaking (Fellowship consensus): - Coordinate transforms: all 4 paths correct (Sauron) - Overflow fallback: std::move safe, excludes is const (Frodo) - itemid ordering: sort restores correctly after split/recombine - Division by zero: all guarded - All-unarranged fallback: equivalent to default arranger Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
thereprocase
added a commit
to thereprocase/OrcaSlicer
that referenced
this pull request
Mar 31, 2026
Ledger fixes (Sauron #1): - W-001: clean up dangling brace in SnuggleArrange (cosmetic, already safe) - W-003 CRITICAL: GPU cleanup() now releases DC/HWND on all failure paths - W-006 HIGH: voxel_size<=0 guard in world_to_grid + collision_count - W-007 HIGH: multimap instance lookup replaces O(N²) linear scan - W-010: fmod replaces while-loop rotation normalization (DoS fix) - W-027: shared snuggle_constants.hpp for ROT_CACHE_BINS - W-028: PI_F/TWO_PI_F constants replace 9 bare literals UX fixes (Sauron OrcaSlicer#2, from Frodo's supervision): - Part gap slider min matches backend (1mm) - Duplicate compact checkbox removed - 4 missing tooltips added (Part gap, Timeout, Max parts, Multi-plate) - Progress messages humanized ("Optimizing... 42%") - Footer text clarified - Fallback notification added - Label references corrected Reviewed by: Gandalf (ledger walkthrough), Frodo (final approval) Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
thereprocase
added a commit
to thereprocase/OrcaSlicer
that referenced
this pull request
Apr 1, 2026
Critical: translation writeback computed bbox center instead of polygon origin (0,0). Parts would land at wrong positions offset by (bbox_center - origin). Fixed to track where the poly's local origin falls in bed coordinates after placement. High: removed dead code (6 unused variables from earlier approach). High: config key now uses technology postfix (_fff, _sla, _seq_print) matching the established pattern for multi-tech persistence. Medium: guard negative pixel offsets in collides/stamp to prevent undefined behavior from exclude polygons extending past bed edge. Medium: replaced goto-based instance matching with bool tracking and added warning log when no ModelInstance match is found. Fixes: Sauron #1 (critical), OrcaSlicer#2 (high), OrcaSlicer#3 (high), OrcaSlicer#5 (medium), Uruk-Hai UI #1 (high), OrcaSlicer#2 (high), OrcaSlicer#3 (medium), Uruk-Hai ArrangeJob OrcaSlicer#2 (high) Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
thereprocase
added a commit
to thereprocase/OrcaSlicer
that referenced
this pull request
Apr 5, 2026
Critical: translation writeback computed bbox center instead of polygon origin (0,0). Parts would land at wrong positions offset by (bbox_center - origin). Fixed to track where the poly's local origin falls in bed coordinates after placement. High: removed dead code (6 unused variables from earlier approach). High: config key now uses technology postfix (_fff, _sla, _seq_print) matching the established pattern for multi-tech persistence. Medium: guard negative pixel offsets in collides/stamp to prevent undefined behavior from exclude polygons extending past bed edge. Medium: replaced goto-based instance matching with bool tracking and added warning log when no ModelInstance match is found. Fixes: Sauron #1 (critical), OrcaSlicer#2 (high), OrcaSlicer#3 (high), OrcaSlicer#5 (medium), Uruk-Hai UI #1 (high), OrcaSlicer#2 (high), OrcaSlicer#3 (medium), Uruk-Hai ArrangeJob OrcaSlicer#2 (high) Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
thereprocase
added a commit
to thereprocase/OrcaSlicer
that referenced
this pull request
Apr 11, 2026
User priority OrcaSlicer#2: tall parts should cluster near the plate geometric center so the print head's late-phase XY travel envelope (at high layer counts where only tall parts are still printing) is bounded by their cluster extent instead of the full plate. Implementation: score_at's secondary cost (previously just dist-to- anchor squared) now also adds a tall-weighted distance-to-bed-center penalty. Items >= 100mm tall get full weight; shorter items scale linearly to zero. First item per plate is exempt (cbb_empty path) because it follows the anchor seed by design. Uses ArrangePolygon::height which Orca's ModelArrange.cpp already populates from the instance convex-hull bounding-box Z extent. The nester has ignored this field until now. Won't change anything for the synthetic tetromino/L-bracket tests (items have height=0 there) but should noticeably centralize tall parts on real user plates. Pairs with the travel-first priority ordering saved to memory/feedback_arrange_priorities.md.
thereprocase
added a commit
to thereprocase/OrcaSlicer
that referenced
this pull request
Apr 11, 2026
Critical: translation writeback computed bbox center instead of polygon origin (0,0). Parts would land at wrong positions offset by (bbox_center - origin). Fixed to track where the poly's local origin falls in bed coordinates after placement. High: removed dead code (6 unused variables from earlier approach). High: config key now uses technology postfix (_fff, _sla, _seq_print) matching the established pattern for multi-tech persistence. Medium: guard negative pixel offsets in collides/stamp to prevent undefined behavior from exclude polygons extending past bed edge. Medium: replaced goto-based instance matching with bool tracking and added warning log when no ModelInstance match is found. Fixes: Sauron #1 (critical), OrcaSlicer#2 (high), OrcaSlicer#3 (high), OrcaSlicer#5 (medium), Uruk-Hai UI #1 (high), OrcaSlicer#2 (high), OrcaSlicer#3 (medium), Uruk-Hai ArrangeJob OrcaSlicer#2 (high) Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
thereprocase
added a commit
to thereprocase/OrcaSlicer
that referenced
this pull request
Apr 11, 2026
User priority OrcaSlicer#2: tall parts should cluster near the plate geometric center so the print head's late-phase XY travel envelope (at high layer counts where only tall parts are still printing) is bounded by their cluster extent instead of the full plate. Implementation: score_at's secondary cost (previously just dist-to- anchor squared) now also adds a tall-weighted distance-to-bed-center penalty. Items >= 100mm tall get full weight; shorter items scale linearly to zero. First item per plate is exempt (cbb_empty path) because it follows the anchor seed by design. Uses ArrangePolygon::height which Orca's ModelArrange.cpp already populates from the instance convex-hull bounding-box Z extent. The nester has ignored this field until now. Won't change anything for the synthetic tetromino/L-bracket tests (items have height=0 there) but should noticeably centralize tall parts on real user plates. Pairs with the travel-first priority ordering saved to memory/feedback_arrange_priorities.md.
thereprocase
added a commit
to thereprocase/OrcaSlicer
that referenced
this pull request
Apr 12, 2026
Big boss review point OrcaSlicer#2: intersection_ex per candidate × per placed item compounds badly. Most candidate grid positions aren't near any placed item, so most intersection_ex calls return 'no overlap' after significant polygon math. Add a cheap AABB overlap check first; only call intersection_ex on placed items whose bbox actually overlaps the candidate's bbox. Implementation: - Cache each placed item's bbox in placed_bboxes alongside placed_polys - Compute the candidate bbox in world coords from (x, y) + rot_bb size - For each placed item, AABB check: skip if bboxes don't overlap - If NO placed bbox overlaps the candidate, the candidate is provably collision-free — skip all intersection_ex calls entirely - If some DO overlap, call intersection_ex only on those - The real polygon check remains the ground truth; the AABB is a shortcut not a replacement This is the GOOD use of bbox — broad-phase collision pruning, not scoring. Every physics engine (including Box2D) does this. Standard AABB-then-narrow-phase pattern. The 'bbox is never right' memo applies to SCORING metrics, not to collision broad phase. Expected speedup: 5-10x on typical inputs per the big boss review estimate. Not directly measured — this commit is semantics-preserving and the existing test suite already takes seconds, not minutes, so a before/after timing isn't cleanly observable at this scale. Will matter more when C2 M2.3's hull-scored path runs on larger groups (post-M3 spillover recovery, post-bitmap-collision-refactor). Test verification: 161 cases / 1436 assertions green. Cat 1.4 L-shape discriminator still lands at ~201 mm hull perimeter unchanged — proof the pre-reject is purely a speedup, not a behavior change.
3 tasks
1 task
4 tasks
3 tasks
ildarcheg
added a commit
to ildarcheg/OrcaSlicer
that referenced
this pull request
May 20, 2026
1. Section 2 placement + Section 1 inspect + Section 3 case 9 + Section 4 test OrcaSlicer#14: clarify "FIRST source" -> source with LOWEST existing index in obj.volumes. Stable inspect --json output under --parts reordering. 2. Section 2 / Q4 filament + per-vol config: empty sources (dropped per Q7) are excluded from agreement checks. New unit test OrcaSlicer#16. 3. Section 2 / per-vol config: strict rule -- all-carry-same OR none-carry, otherwise refuse with hint message. New unit test OrcaSlicer#17. 4. Section 3: new "Validation order (deterministic precedence)" subsection. 5. Section 3: new "Idempotency" subsection. 6. Section 4: new unit test OrcaSlicer#15 (explicit --filament override on agreeing sources) and note above e2e test OrcaSlicer#2 calling out its integration-test nature. Unit test count: 14 -> 17. E2E: 13. Roundtrip: 1.
4 tasks
dnevera
pushed a commit
to dnevera/OrcaSlicer
that referenced
this pull request
Jun 1, 2026
- Fix OrcaSlicer#1: Combined nozzle_in_extruder_change and filament_in_nozzle_change checks in process_filament_change to prevent double-counting of unload/load times. - Fix OrcaSlicer#2: Removed get_hotend_change_time() addition in process_filament_change as hotend change time is already accounted for via SYNC gcode. - Fix OrcaSlicer#3: Added tracking for total_flush_filament_changes statistics. - Fix OrcaSlicer#4: Passed nozzle_id to process_filament_change to correctly identify the active nozzle under multi-nozzle configuration.
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.
No description provided.