|
|
@ -1671,7 +1671,7 @@ static void clean_up_after_endstop_or_probe_move() { |
|
|
|
|
|
|
|
#endif //HAS_BED_PROBE
|
|
|
|
|
|
|
|
#if ENABLED(Z_PROBE_ALLEN_KEY) || ENABLED(Z_PROBE_SLED) || ENABLED(Z_SAFE_HOMING) || HAS_PROBING_PROCEDURE || HOTENDS > 1 || ENABLED(NOZZLE_CLEAN_FEATURE) || ENABLED(NOZZLE_PARK_FEATURE) |
|
|
|
#if ENABLED(Z_PROBE_ALLEN_KEY) || ENABLED(Z_PROBE_SLED) || HAS_PROBING_PROCEDURE || HOTENDS > 1 || ENABLED(NOZZLE_CLEAN_FEATURE) || ENABLED(NOZZLE_PARK_FEATURE) |
|
|
|
static bool axis_unhomed_error(const bool x, const bool y, const bool z) { |
|
|
|
const bool xx = x && !axis_homed[X_AXIS], |
|
|
|
yy = y && !axis_homed[Y_AXIS], |
|
|
@ -2520,8 +2520,7 @@ bool position_is_reachable(float target[XYZ] |
|
|
|
#endif |
|
|
|
) { |
|
|
|
float dx = RAW_X_POSITION(target[X_AXIS]), |
|
|
|
dy = RAW_Y_POSITION(target[Y_AXIS]), |
|
|
|
dz = RAW_Z_POSITION(target[Z_AXIS]); |
|
|
|
dy = RAW_Y_POSITION(target[Y_AXIS]); |
|
|
|
|
|
|
|
#if HAS_BED_PROBE |
|
|
|
if (by_probe) { |
|
|
@ -2540,6 +2539,7 @@ bool position_is_reachable(float target[XYZ] |
|
|
|
#elif ENABLED(DELTA) |
|
|
|
return HYPOT2(dx, dy) <= sq(DELTA_PRINTABLE_RADIUS); |
|
|
|
#else |
|
|
|
const float dz = RAW_Z_POSITION(target[Z_AXIS]); |
|
|
|
return dx >= X_MIN_POS - 0.0001 && dx <= X_MAX_POS + 0.0001 |
|
|
|
&& dy >= Y_MIN_POS - 0.0001 && dy <= Y_MAX_POS + 0.0001 |
|
|
|
&& dz >= Z_MIN_POS - 0.0001 && dz <= Z_MAX_POS + 0.0001; |
|
|
@ -7785,7 +7785,6 @@ void ok_to_send() { |
|
|
|
|
|
|
|
// Get the Z adjustment for non-linear bed leveling
|
|
|
|
float nonlinear_z_offset(float cartesian[XYZ]) { |
|
|
|
if (planner.abl_enabled) return; |
|
|
|
|
|
|
|
int half_x = (ABL_GRID_POINTS_X - 1) / 2, |
|
|
|
half_y = (ABL_GRID_POINTS_Y - 1) / 2; |
|
|
|