Fix prepare_move_to_destination_cartesian for UBL

This commit is contained in:
Scott Lahteine 2017-05-13 04:09:21 -05:00
parent a7fb55ea6d
commit 37399e3cb5

View file

@ -11235,32 +11235,36 @@ void set_current_from_steppers_for_axis(const AxisEnum axis) {
* Returns true if the caller didn't update current_position. * Returns true if the caller didn't update current_position.
*/ */
inline bool prepare_move_to_destination_cartesian() { inline bool prepare_move_to_destination_cartesian() {
// Do not use feedrate_percentage for E or Z only moves #if ENABLED(AUTO_BED_LEVELING_UBL)
if (current_position[X_AXIS] == destination[X_AXIS] && current_position[Y_AXIS] == destination[Y_AXIS]) { const float fr_scaled = MMS_SCALED(feedrate_mm_s);
line_to_destination(); if (ubl.state.active) {
} ubl_line_to_destination_cartesian(fr_scaled, active_extruder);
else {
#if ENABLED(MESH_BED_LEVELING)
if (mbl.active()) {
mesh_line_to_destination(MMS_SCALED(feedrate_mm_s));
return true; return true;
} }
else else
#elif ENABLED(AUTO_BED_LEVELING_UBL) line_to_destination(fr_scaled);
if (ubl.state.active) { #else
ubl_line_to_destination_cartesian(MMS_SCALED(feedrate_mm_s), active_extruder); // Do not use feedrate_percentage for E or Z only moves
if (current_position[X_AXIS] == destination[X_AXIS] && current_position[Y_AXIS] == destination[Y_AXIS])
line_to_destination();
else {
const float fr_scaled = MMS_SCALED(feedrate_mm_s);
#if ENABLED(MESH_BED_LEVELING)
if (mbl.active()) {
mesh_line_to_destination(fr_scaled);
return true; return true;
} }
else else
#elif ENABLED(AUTO_BED_LEVELING_BILINEAR) #elif ENABLED(AUTO_BED_LEVELING_BILINEAR)
if (planner.abl_enabled) { if (planner.abl_enabled) {
bilinear_line_to_destination(MMS_SCALED(feedrate_mm_s)); bilinear_line_to_destination(fr_scaled);
return true; return true;
} }
else else
#endif #endif
line_to_destination(MMS_SCALED(feedrate_mm_s)); line_to_destination(fr_scaled);
} }
#endif
return false; return false;
} }