Skip to content

Commit 1827b98

Browse files
committed
fix: move wave authority pass AFTER process_external_surfaces
1 parent bb6cb34 commit 1827b98

1 file changed

Lines changed: 9 additions & 7 deletions

File tree

‎src/libslic3r/PrintObject.cpp‎

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -592,13 +592,6 @@ void PrintObject::prepare_infill()
592592
} // for each region
593593
#endif /* SLIC3R_DEBUG_SLICE_PROCESSING */
594594

595-
// Orca: authoritative wave-overhang floor-layer pass. Runs AFTER all surface-type
596-
// classification (detect_surfaces_type + discover_vertical_shells + discover_horizontal_shells)
597-
// so that whatever Orca decided inside the wave shadow gets overridden: N=0 => all stInternal,
598-
// N>=1 => exactly N uniform stInternalSolid layers above each wave strip.
599-
this->apply_wave_overhang_floor_layer_authority();
600-
m_print->throw_if_canceled();
601-
602595
// this will detect bridges and reverse bridges
603596
// and rearrange top/bottom/internal surfaces
604597
// It produces enlarged overlapping bridging areas.
@@ -611,6 +604,15 @@ void PrintObject::prepare_infill()
611604
this->process_external_surfaces();
612605
m_print->throw_if_canceled();
613606

607+
// Orca: authoritative wave-overhang floor-layer pass. Must run AFTER
608+
// process_external_surfaces (which rearranges bridges / top / bottom /
609+
// internal surfaces via 3 mm offset+overlap logic and would undo our
610+
// overrides if run before). This is the LAST classifier — everything in
611+
// the wave-shadow footprint now wins: N=0 => stInternal for 0 solid
612+
// layers, N>=1 => N uniform stInternalSolid layers.
613+
this->apply_wave_overhang_floor_layer_authority();
614+
m_print->throw_if_canceled();
615+
614616
// Debugging output.
615617
#ifdef SLIC3R_DEBUG_SLICE_PROCESSING
616618
for (size_t region_id = 0; region_id < this->num_printing_regions(); ++ region_id) {

0 commit comments

Comments
 (0)