FIX: potential collsion in by object seq

1. update the expand length
2. enhance rod collision detect

jira:STUDIO-12199

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I1350ef5612b833405928e22c542a7a6f0c671105
(cherry picked from commit 7a197af3e0aa6d6c1493768d757ecdc938e49c1d)
This commit is contained in:
xun.zhang
2025-05-15 17:35:55 +08:00
committed by Noisyfox
parent d7c15664dd
commit 44e62213e9
3 changed files with 91 additions and 40 deletions

View File

@@ -4603,16 +4603,8 @@ LayerResult GCode::process_layer(
ctx.curr_layer = this->layer();
ctx.curr_extruder_id = m_writer.filament()->extruder_id();
ctx.picture_extruder_id = most_used_extruder;
if (m_config.nozzle_diameter.size() > 1) {
ctx.extruder_height_gap = std::abs(m_config.extruder_printable_height.values[0] - m_config.extruder_printable_height.values[1]);
ctx.liftable_extruder_id = m_config.extruder_printable_height.values[0] < m_config.extruder_printable_height.values[1] ? 0 : 1;
}
ctx.height_to_rod = m_config.extruder_clearance_height_to_rod;
ctx.print_sequence = m_config.print_sequence;
if (m_config.print_sequence == PrintSequence::ByObject)
ctx.printed_objects = printed_objects;
ctx.based_on_all_layer = m_config.timelapse_type == TimelapseType::tlSmooth;
auto timelapse_pos=m_timelapse_pos_picker.pick_pos(ctx);