|
|
@ -1475,9 +1475,9 @@ inline void set_destination_to_current() { memcpy(destination, current_position,
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Calculate delta, start a line, and set current_position to destination
|
|
|
|
* Calculate delta, start a line, and set current_position to destination
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
void prepare_move_to_destination_raw() {
|
|
|
|
void prepare_uninterpolated_move_to_destination() {
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
|
|
|
if (DEBUGGING(LEVELING)) DEBUG_POS("prepare_move_to_destination_raw", destination);
|
|
|
|
if (DEBUGGING(LEVELING)) DEBUG_POS("prepare_uninterpolated_move_to_destination", destination);
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
refresh_cmd_timeout();
|
|
|
|
refresh_cmd_timeout();
|
|
|
|
inverse_kinematics(destination);
|
|
|
|
inverse_kinematics(destination);
|
|
|
@ -1513,7 +1513,7 @@ void do_blocking_move_to(const float &x, const float &y, const float &z, const f
|
|
|
|
destination[X_AXIS] = x; // move directly (uninterpolated)
|
|
|
|
destination[X_AXIS] = x; // move directly (uninterpolated)
|
|
|
|
destination[Y_AXIS] = y;
|
|
|
|
destination[Y_AXIS] = y;
|
|
|
|
destination[Z_AXIS] = z;
|
|
|
|
destination[Z_AXIS] = z;
|
|
|
|
prepare_move_to_destination_raw(); // set_current_to_destination
|
|
|
|
prepare_uninterpolated_move_to_destination(); // set_current_to_destination
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
|
|
|
if (DEBUGGING(LEVELING)) DEBUG_POS("danger zone move", current_position);
|
|
|
|
if (DEBUGGING(LEVELING)) DEBUG_POS("danger zone move", current_position);
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
@ -1521,7 +1521,7 @@ void do_blocking_move_to(const float &x, const float &y, const float &z, const f
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
else {
|
|
|
|
destination[Z_AXIS] = delta_clip_start_height;
|
|
|
|
destination[Z_AXIS] = delta_clip_start_height;
|
|
|
|
prepare_move_to_destination_raw(); // set_current_to_destination
|
|
|
|
prepare_uninterpolated_move_to_destination(); // set_current_to_destination
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
|
|
|
if (DEBUGGING(LEVELING)) DEBUG_POS("zone border move", current_position);
|
|
|
|
if (DEBUGGING(LEVELING)) DEBUG_POS("zone border move", current_position);
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
@ -1530,7 +1530,7 @@ void do_blocking_move_to(const float &x, const float &y, const float &z, const f
|
|
|
|
|
|
|
|
|
|
|
|
if (z > current_position[Z_AXIS]) { // raising?
|
|
|
|
if (z > current_position[Z_AXIS]) { // raising?
|
|
|
|
destination[Z_AXIS] = z;
|
|
|
|
destination[Z_AXIS] = z;
|
|
|
|
prepare_move_to_destination_raw(); // set_current_to_destination
|
|
|
|
prepare_uninterpolated_move_to_destination(); // set_current_to_destination
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
|
|
|
if (DEBUGGING(LEVELING)) DEBUG_POS("z raise move", current_position);
|
|
|
|
if (DEBUGGING(LEVELING)) DEBUG_POS("z raise move", current_position);
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
@ -1545,7 +1545,7 @@ void do_blocking_move_to(const float &x, const float &y, const float &z, const f
|
|
|
|
|
|
|
|
|
|
|
|
if (z < current_position[Z_AXIS]) { // lowering?
|
|
|
|
if (z < current_position[Z_AXIS]) { // lowering?
|
|
|
|
destination[Z_AXIS] = z;
|
|
|
|
destination[Z_AXIS] = z;
|
|
|
|
prepare_move_to_destination_raw(); // set_current_to_destination
|
|
|
|
prepare_uninterpolated_move_to_destination(); // set_current_to_destination
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
|
|
|
if (DEBUGGING(LEVELING)) DEBUG_POS("z lower move", current_position);
|
|
|
|
if (DEBUGGING(LEVELING)) DEBUG_POS("z lower move", current_position);
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|