Apply DISTINCT_E_FACTORS to sync_from_steppers

Followup to #5840
master
Scott Lahteine 7 years ago
parent 4da8b1494b
commit 57f92a4632

@ -1416,10 +1416,16 @@ void Planner::set_position_mm_kinematic(const float position[NUM_AXIS]) {
* Sync from the stepper positions. (e.g., after an interrupted move) * Sync from the stepper positions. (e.g., after an interrupted move)
*/ */
void Planner::sync_from_steppers() { void Planner::sync_from_steppers() {
LOOP_XYZE(i) position[i] = stepper.position((AxisEnum)i); LOOP_XYZE(i) {
#if ENABLED(LIN_ADVANCE) position[i] = stepper.position((AxisEnum)i);
LOOP_XYZE(i) position_float[i] = stepper.position((AxisEnum)i) * (i == E_AXIS ? steps_to_mm[E_AXIS + active_extruder] : steps_to_mm[i]); #if ENABLED(LIN_ADVANCE)
#endif position_float[i] = position[i] * steps_to_mm[i
#if ENABLED(DISTINCT_E_FACTORS)
+ (i == E_AXIS ? active_extruder : 0)
#endif
];
#endif
}
} }
/** /**

Loading…
Cancel
Save