Have position_is_reachable_by_probe use the whole bed (#10020)
Previously `position_is_reachable_by_probe` was limited to the area specified for `G29` mesh leveling (even if leveling was disabled). This change will properly consider the entire bed area so that `G30` and other non-leveling probing may take place.
This commit is contained in:
parent
67a17446f2
commit
dfd5d2fe75
@ -263,15 +263,16 @@ void homeaxis(const AxisEnum axis);
|
|||||||
#else // CARTESIAN
|
#else // CARTESIAN
|
||||||
|
|
||||||
inline bool position_is_reachable(const float &rx, const float &ry) {
|
inline bool position_is_reachable(const float &rx, const float &ry) {
|
||||||
// Add 0.001 margin to deal with float imprecision
|
// Add 0.001 margin to deal with float imprecision
|
||||||
return WITHIN(rx, X_MIN_POS - 0.001, X_MAX_POS + 0.001)
|
return WITHIN(rx, X_MIN_POS - 0.001, X_MAX_POS + 0.001)
|
||||||
&& WITHIN(ry, Y_MIN_POS - 0.001, Y_MAX_POS + 0.001);
|
&& WITHIN(ry, Y_MIN_POS - 0.001, Y_MAX_POS + 0.001);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline bool position_is_reachable_by_probe(const float &rx, const float &ry) {
|
inline bool position_is_reachable_by_probe(const float &rx, const float &ry) {
|
||||||
// Add 0.001 margin to deal with float imprecision
|
const float nx = rx - (X_PROBE_OFFSET_FROM_EXTRUDER), ny = ry - (Y_PROBE_OFFSET_FROM_EXTRUDER);
|
||||||
return WITHIN(rx, MIN_PROBE_X - 0.001, MAX_PROBE_X + 0.001)
|
return position_is_reachable(rx, ry)
|
||||||
&& WITHIN(ry, MIN_PROBE_Y - 0.001, MAX_PROBE_Y + 0.001);
|
&& WITHIN(nx, X_MIN_BED - 0.001, X_MAX_BED + 0.001)
|
||||||
|
&& WITHIN(ny, Y_MIN_BED - 0.001, Y_MAX_BED + 0.001);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // CARTESIAN
|
#endif // CARTESIAN
|
||||||
|
Loading…
Reference in New Issue
Block a user