Localize babystepping in the Temperature class
So that `ultralcd.cpp` doesn’t need to worry about the details.
This commit is contained in:
@ -303,6 +303,37 @@ class Temperature {
|
||||
#endif
|
||||
}
|
||||
|
||||
#if ENABLED(BABYSTEPPING)
|
||||
|
||||
FORCE_INLINE void babystep_axis(AxisEnum axis, int distance) {
|
||||
#if ENABLED(COREXY) || ENABLED(COREXZ)
|
||||
#if ENABLED(BABYSTEP_XY)
|
||||
switch (axis) {
|
||||
case X_AXIS: // X on CoreXY and CoreXZ
|
||||
babystepsTodo[A_AXIS] += distance * 2;
|
||||
babystepsTodo[CORE_AXIS_2] += distance * 2;
|
||||
break;
|
||||
case CORE_AXIS_2: // Y on CoreXY, Z on CoreXZ
|
||||
babystepsTodo[A_AXIS] += distance * 2;
|
||||
babystepsTodo[CORE_AXIS_2] -= distance * 2;
|
||||
break;
|
||||
case CORE_AXIS_3: // Z on CoreXY, Y on CoreXZ
|
||||
babystepsTodo[CORE_AXIS_3] += distance;
|
||||
break;
|
||||
}
|
||||
#elif ENABLED(COREXZ)
|
||||
babystepsTodo[A_AXIS] += distance * 2;
|
||||
babystepsTodo[C_AXIS] -= distance * 2;
|
||||
#else
|
||||
babystepsTodo[Z_AXIS] += distance;
|
||||
#endif
|
||||
#else
|
||||
babystepsTodo[axis] += distance;
|
||||
#endif
|
||||
}
|
||||
|
||||
#endif // BABYSTEPPING
|
||||
|
||||
private:
|
||||
|
||||
void set_current_temp_raw();
|
||||
|
Reference in New Issue
Block a user