Skip to content

Commit

Permalink
Limit LCD move_to_x/y coordinates for deltas
Browse files Browse the repository at this point in the history
Related to MarlinFirmware/MarlinDev#270
  • Loading branch information
thinkyhead committed Mar 6, 2016
1 parent 988332c commit f18d3f4
Showing 1 changed file with 9 additions and 2 deletions.
11 changes: 9 additions & 2 deletions Marlin/ultralcd.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -840,8 +840,15 @@ static void _lcd_move(const char* name, AxisEnum axis, int min, int max) {
lcd_goto_menu(lcd_move_menu_axis);
}
}
static void lcd_move_x() { _lcd_move(PSTR(MSG_MOVE_X), X_AXIS, X_MIN_POS, X_MAX_POS); }
static void lcd_move_y() { _lcd_move(PSTR(MSG_MOVE_Y), Y_AXIS, Y_MIN_POS, Y_MAX_POS); }
#if ENABLED(DELTA)
static float delta_clip_radius_2 = DELTA_PRINTABLE_RADIUS * DELTA_PRINTABLE_RADIUS;
static int delta_clip( float a ) { return sqrt(delta_clip_radius_2 - a*a); }
static void lcd_move_x() { int clip = delta_clip(current_position[Y_AXIS]); _lcd_move(PSTR(MSG_MOVE_X), X_AXIS, max(X_MIN_POS, -clip), min(X_MAX_POS, clip)); }
static void lcd_move_y() { int clip = delta_clip(current_position[X_AXIS]); _lcd_move(PSTR(MSG_MOVE_X), X_AXIS, max(X_MIN_POS, -clip), min(X_MAX_POS, clip)); }
#else
static void lcd_move_x() { _lcd_move(PSTR(MSG_MOVE_X), X_AXIS, X_MIN_POS, X_MAX_POS); }
static void lcd_move_y() { _lcd_move(PSTR(MSG_MOVE_Y), Y_AXIS, Y_MIN_POS, Y_MAX_POS); }
#endif
static void lcd_move_z() { _lcd_move(PSTR(MSG_MOVE_Z), Z_AXIS, Z_MIN_POS, Z_MAX_POS); }
static void lcd_move_e(
#if EXTRUDERS > 1
Expand Down

0 comments on commit f18d3f4

Please sign in to comment.