♻️ Rename XATC z_values => z_offset

This commit is contained in:
Scott Lahteine 2022-02-15 15:09:09 -06:00
parent 7da28768f7
commit 4199191e99
4 changed files with 11 additions and 14 deletions

View file

@ -28,15 +28,15 @@
XATC xatc; XATC xatc;
float XATC::spacing, XATC::start; float XATC::spacing, XATC::start;
xatc_points_t XATC::z_values; xatc_array_t XATC::z_offset;
void XATC::print_points() { void XATC::print_points() {
SERIAL_ECHOLNPGM(" X-Twist Correction:"); SERIAL_ECHOLNPGM(" X-Twist Correction:");
LOOP_L_N(x, XATC_MAX_POINTS) { LOOP_L_N(x, XATC_MAX_POINTS) {
SERIAL_CHAR(' '); SERIAL_CHAR(' ');
if (!isnan(z_values[x])) { if (!isnan(z_offset[x])) {
if (z_values[x] >= 0) SERIAL_CHAR('+'); if (z_offset[x] >= 0) SERIAL_CHAR('+');
SERIAL_ECHO_F(z_values[x], 3); SERIAL_ECHO_F(z_offset[x], 3);
} }
else { else {
LOOP_L_N(i, 6) LOOP_L_N(i, 6)
@ -54,7 +54,7 @@ float XATC::compensation(const xy_pos_t &raw) {
int i = FLOOR(t); int i = FLOOR(t);
LIMIT(i, 0, XATC_MAX_POINTS - 2); LIMIT(i, 0, XATC_MAX_POINTS - 2);
t -= i; t -= i;
return lerp(t, z_values[i], z_values[i + 1]); return lerp(t, z_offset[i], z_offset[i + 1]);
} }
#endif // X_AXIS_TWIST_COMPENSATION #endif // X_AXIS_TWIST_COMPENSATION

View file

@ -23,12 +23,12 @@
#include "../../../inc/MarlinConfigPre.h" #include "../../../inc/MarlinConfigPre.h"
typedef float xatc_points_t[XATC_MAX_POINTS]; typedef float xatc_array_t[XATC_MAX_POINTS];
class XATC { class XATC {
public: public:
static float spacing, start; static float spacing, start;
static xatc_points_t z_values; static xatc_array_t z_offset;
static float compensation(const xy_pos_t &raw); static float compensation(const xy_pos_t &raw);
static void print_points(); static void print_points();

View file

@ -77,7 +77,7 @@ void xatc_wizard_update_z_offset() {
// //
void xatc_wizard_set_offset_and_go_to_next_point() { void xatc_wizard_set_offset_and_go_to_next_point() {
// Set Z-offset at probed point // Set Z-offset at probed point
xatc.z_values[manual_probe_index++] = probe.offset.z + current_position.z - measured_z; xatc.z_offset[manual_probe_index++] = probe.offset.z + current_position.z - measured_z;
// Go to next point // Go to next point
ui.goto_screen(xatc_wizard_goto_next_point); ui.goto_screen(xatc_wizard_goto_next_point);
} }
@ -160,12 +160,12 @@ void xatc_wizard_goto_next_point() {
else { else {
// Compute the z-offset by averaging the values found with this wizard // Compute the z-offset by averaging the values found with this wizard
z_offset = 0; z_offset = 0;
LOOP_L_N(i, XATC_MAX_POINTS) z_offset += xatc.z_values[i]; LOOP_L_N(i, XATC_MAX_POINTS) z_offset += xatc.z_offset[i];
z_offset /= XATC_MAX_POINTS; z_offset /= XATC_MAX_POINTS;
// Subtract the average from the values found with this wizard. // Subtract the average from the values found with this wizard.
// This way they are indipendent from the z-offset // This way they are indipendent from the z-offset
LOOP_L_N(i, XATC_MAX_POINTS) xatc.z_values[i] -= z_offset; LOOP_L_N(i, XATC_MAX_POINTS) xatc.z_offset[i] -= z_offset;
ui.goto_screen(xatc_wizard_update_z_offset); ui.goto_screen(xatc_wizard_update_z_offset);
} }

View file

@ -863,10 +863,7 @@ void MarlinSettings::postprocess() {
"Bilinear Z array is the wrong size." "Bilinear Z array is the wrong size."
); );
#if ENABLED(X_AXIS_TWIST_COMPENSATION) #if ENABLED(X_AXIS_TWIST_COMPENSATION)
static_assert( static_assert(COUNT(xatc.z_offset) == XATC_MAX_POINTS, "XATC Z-offset mesh is the wrong size.");
sizeof(xatc.z_values) == (XATC_MAX_POINTS) * sizeof(xatc.z_values[0]),
"Z-offset mesh is the wrong size."
);
#endif #endif
#else #else
const xy_pos_t bilinear_start{0}, bilinear_grid_spacing{0}; const xy_pos_t bilinear_start{0}, bilinear_grid_spacing{0};