FIX: get wrong value in retract params

1.Should get value by filament id instead of extruder id
2.Fix many other issues caused by incorrect usage

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3278d7de0f8976a97c9e5ccef80bba4a58553f5a
(cherry picked from commit 30c51dd1171fc16ba778308745fab2eb246aedd0)
(cherry picked from commit e9027478f8948352d99d33519994b044ca18a65a)
This commit is contained in:
xun.zhang
2024-12-10 16:19:27 +08:00
committed by Noisyfox
parent 49f8943885
commit a7956a841d
3 changed files with 28 additions and 27 deletions

View File

@@ -862,10 +862,11 @@ std::string GCodeWriter::lift(LiftType lift_type, bool spiral_vase)
double target_lift = 0;
{
int extruder_id = filament()->extruder_id();
int filament_id = filament()->id();
double above = this->config.retract_lift_above.get_at(extruder_id);
double below = this->config.retract_lift_below.get_at(extruder_id);
if (m_pos(2) >= above && (below == 0 || m_pos(2) <= below))
target_lift = this->config.z_hop.get_at(extruder_id);
target_lift = this->config.z_hop.get_at(filament_id);
}
// BBS
if (m_lifted == 0 && m_to_lift == 0 && target_lift > 0) {