|
@@ -217,29 +217,26 @@ void move_to(const float &rx, const float &ry, const float &z, const float &e_de
|
217
|
217
|
|
218
|
218
|
const xy_pos_t dest = { rx, ry };
|
219
|
219
|
|
220
|
|
- const bool has_xy_component = dest != current_position; // Check if X or Y is involved in the movement.
|
|
220
|
+ const bool has_xy_component = dest != current_position; // Check if X or Y is involved in the movement.
|
221
|
221
|
const bool has_e_component = e_delta != 0.0;
|
222
|
222
|
|
223
|
223
|
destination = current_position;
|
224
|
224
|
|
225
|
225
|
if (z != last_z) {
|
226
|
226
|
last_z = destination.z = z;
|
227
|
|
- const feedRate_t feed_value = planner.settings.max_feedrate_mm_s[Z_AXIS] * 0.5f; // Use half of the Z_AXIS max feed rate
|
228
|
|
- prepare_internal_move_to_destination(feed_value);
|
229
|
|
- destination = current_position;
|
|
227
|
+ const feedRate_t fr_mm_s = planner.settings.max_feedrate_mm_s[Z_AXIS] * 0.5f; // Use half of the Z_AXIS max feed rate
|
|
228
|
+ prepare_internal_move_to_destination(fr_mm_s);
|
230
|
229
|
}
|
231
|
230
|
|
232
|
|
- // If X or Y in combination with E is involved do a 'normal' move.
|
|
231
|
+ // If X or Y in combination with E is involved do a 'normal' move.
|
233
|
232
|
// If X or Y with no E is involved do a 'fast' move
|
234
|
233
|
// Otherwise retract/recover/hop.
|
235
|
234
|
destination = dest;
|
236
|
235
|
destination.e += e_delta;
|
237
|
|
- const feedRate_t feed_value =
|
238
|
|
- has_xy_component
|
239
|
|
- ? (has_e_component ? feedRate_t(G26_XY_FEEDRATE) : feedRate_t(G26_XY_FEEDRATE_TRAVEL))
|
|
236
|
+ const feedRate_t fr_mm_s = has_xy_component
|
|
237
|
+ ? (has_e_component ? feedRate_t(G26_XY_FEEDRATE) : feedRate_t(G26_XY_FEEDRATE_TRAVEL))
|
240
|
238
|
: planner.settings.max_feedrate_mm_s[E_AXIS] * 0.666f;
|
241
|
|
- prepare_internal_move_to_destination(feed_value);
|
242
|
|
- destination = current_position;
|
|
239
|
+ prepare_internal_move_to_destination(fr_mm_s);
|
243
|
240
|
}
|
244
|
241
|
|
245
|
242
|
FORCE_INLINE void move_to(const xyz_pos_t &where, const float &de) { move_to(where.x, where.y, where.z, de); }
|