Browse Source
Merge pull request #8637 from thinkyhead/bf2_ubl_uses_LSL
[2.0.x] Use custom segment length for UBL Cartesian
pull/1/head
Scott Lahteine
7 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with
18 additions and
22 deletions
-
Marlin/src/feature/bedlevel/ubl/ubl_motion.cpp
-
Marlin/src/inc/Conditionals_post.h
|
|
@ -500,9 +500,19 @@ |
|
|
|
planner._buffer_line(raw[X_AXIS], raw[Y_AXIS], raw[Z_AXIS], raw[E_AXIS], fr, active_extruder); |
|
|
|
|
|
|
|
#endif |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
#if IS_SCARA |
|
|
|
#define DELTA_SEGMENT_MIN_LENGTH 0.25 // SCARA minimum segment size is 0.25mm
|
|
|
|
#elif ENABLED(DELTA) |
|
|
|
#define DELTA_SEGMENT_MIN_LENGTH 0.10 // mm (still subject to DELTA_SEGMENTS_PER_SECOND)
|
|
|
|
#else // CARTESIAN
|
|
|
|
#ifdef LEVELED_SEGMENT_LENGTH |
|
|
|
#define DELTA_SEGMENT_MIN_LENGTH LEVELED_SEGMENT_LENGTH |
|
|
|
#else |
|
|
|
#define DELTA_SEGMENT_MIN_LENGTH 1.00 // mm (similar to G2/G3 arc segmentation)
|
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
/**
|
|
|
|
* Prepare a segmented linear move for DELTA/SCARA/CARTESIAN with UBL and FADE semantics. |
|
|
@ -633,10 +643,11 @@ |
|
|
|
if (--segments == 0) // if this is last segment, use rtarget for exact
|
|
|
|
COPY(raw, rtarget); |
|
|
|
|
|
|
|
float z_cxcy = z_cxy0 + z_cxym * cy; // interpolated mesh z height along cx at cy
|
|
|
|
const float z_cxcy = (z_cxy0 + z_cxym * cy) // interpolated mesh z height along cx at cy
|
|
|
|
#if ENABLED(ENABLE_LEVELING_FADE_HEIGHT) |
|
|
|
z_cxcy *= fade_scaling_factor; // apply fade factor to interpolated mesh height
|
|
|
|
* fade_scaling_factor // apply fade factor to interpolated mesh height
|
|
|
|
#endif |
|
|
|
; |
|
|
|
|
|
|
|
const float z = raw[Z_AXIS]; |
|
|
|
raw[Z_AXIS] += z_cxcy; |
|
|
|
|
|
@ -1153,21 +1153,6 @@ |
|
|
|
#define LCD_TIMEOUT_TO_STATUS 15000 |
|
|
|
#endif |
|
|
|
|
|
|
|
/**
|
|
|
|
* DELTA_SEGMENT_MIN_LENGTH for UBL_DELTA |
|
|
|
*/ |
|
|
|
#if UBL_DELTA |
|
|
|
#ifndef DELTA_SEGMENT_MIN_LENGTH |
|
|
|
#if IS_SCARA |
|
|
|
#define DELTA_SEGMENT_MIN_LENGTH 0.25 // SCARA minimum segment size is 0.25mm
|
|
|
|
#elif ENABLED(DELTA) |
|
|
|
#define DELTA_SEGMENT_MIN_LENGTH 0.10 // mm (still subject to DELTA_SEGMENTS_PER_SECOND)
|
|
|
|
#else // CARTESIAN
|
|
|
|
#define DELTA_SEGMENT_MIN_LENGTH 1.00 // mm (similar to G2/G3 arc segmentation)
|
|
|
|
#endif |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
// Shorthand
|
|
|
|
#define GRID_MAX_POINTS ((GRID_MAX_POINTS_X) * (GRID_MAX_POINTS_Y)) |
|
|
|
|
|
|
|