mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-08-04 00:32:08 +00:00
fix(H2C): carousel nozzle change zone — ramming depth, M632 barriers, preheat suppression
- Add nozzle_change_depth override for carousel rotations (same extruder, different nozzle) in plan_toolchange() and plan_tower_new() — previously depth was 0 because condition checked m_filament_map (extruder-level) instead of m_filament_nozzle_map (nozzle-level) - Emit M632/M633 carousel barriers inside NOZZLE_CHANGE_START/END markers in nozzle_change_new(), matching BBS ramming() L3421-3429 pattern - Add is_extruder_change flag to NozzleChangeResult (matches BBS field) to propagate carousel/extruder-change distinction downstream - Suppress duplicate M632 in add_M104_by_requirement for carousel — M632 already emitted inside nozzle_change_new(); extruder change preheat M104 preserved (BBS has no add_M104_by_requirement at all) Reference to BBS: BambuStudio/src/libslic3r/GCode/WipeTower.cpp ramming() extruder_change flag, is_need_ramming(), plan_toolchange()
This commit is contained in:
@@ -3940,6 +3940,9 @@ void Print::_make_wipe_tower()
|
||||
m_wipe_tower_data.tool_ordering.empty() ? 0.f : m_wipe_tower_data.tool_ordering.back().print_z, m_wipe_tower_data.tool_ordering.all_extruders());
|
||||
wipe_tower.set_has_tpu_filament(this->has_tpu_filament());
|
||||
wipe_tower.set_filament_map(this->get_filament_maps());
|
||||
// Vortek H2C: pass nozzle-level map for carousel rotation detection in tool_change_new()
|
||||
// Reference to BBS: BambuStudio/src/libslic3r/GCode/WipeTower.hpp set_nozzle_group_result()
|
||||
wipe_tower.set_filament_nozzle_map(this->get_filament_nozzle_maps());
|
||||
// Feed the has_filament_switcher device flag (develop-only dynamic key, read defensively from
|
||||
// the full config — no shipping profile sets it) and the shared printable bed used by the PETG
|
||||
// pre-extrusion offset clamp. Both are inert unless has_filament_switcher is set.
|
||||
|
||||
Reference in New Issue
Block a user