Преглед изворни кода

Fix Skew factors (#12555)

- Ensure Skew factors are calculated from test square measurements
Jacob Jordan пре 6 година
родитељ
комит
8be91677df
2 измењених фајлова са 16 додато и 26 уклоњено
  1. 15
    21
      Marlin/src/inc/Conditionals_post.h
  2. 1
    5
      Marlin/src/module/planner.h

+ 15
- 21
Marlin/src/inc/Conditionals_post.h Прегледај датотеку

1208
   #define _SKEW_FACTOR(a,b,c) _SKEW_SIDE(float(a),_GET_SIDE(float(a),float(b),float(c)),float(c))
1208
   #define _SKEW_FACTOR(a,b,c) _SKEW_SIDE(float(a),_GET_SIDE(float(a),float(b),float(c)),float(c))
1209
 
1209
 
1210
   #ifndef XY_SKEW_FACTOR
1210
   #ifndef XY_SKEW_FACTOR
1211
-    constexpr float XY_SKEW_FACTOR = (
1212
-      #if defined(XY_DIAG_AC) && defined(XY_DIAG_BD) && defined(XY_SIDE_AD)
1213
-        _SKEW_FACTOR(XY_DIAG_AC, XY_DIAG_BD, XY_SIDE_AD)
1214
-      #else
1215
-        0.0
1216
-      #endif
1217
-    );
1211
+    #if defined(XY_DIAG_AC) && defined(XY_DIAG_BD) && defined(XY_SIDE_AD)
1212
+      #define XY_SKEW_FACTOR _SKEW_FACTOR(XY_DIAG_AC, XY_DIAG_BD, XY_SIDE_AD)
1213
+    #else
1214
+      #define XY_SKEW_FACTOR 0.0
1215
+    #endif
1218
   #endif
1216
   #endif
1219
   #ifndef XZ_SKEW_FACTOR
1217
   #ifndef XZ_SKEW_FACTOR
1220
     #if defined(XY_SIDE_AD) && !defined(XZ_SIDE_AD)
1218
     #if defined(XY_SIDE_AD) && !defined(XZ_SIDE_AD)
1221
       #define XZ_SIDE_AD XY_SIDE_AD
1219
       #define XZ_SIDE_AD XY_SIDE_AD
1222
     #endif
1220
     #endif
1223
-    constexpr float XZ_SKEW_FACTOR = (
1224
-      #if defined(XZ_DIAG_AC) && defined(XZ_DIAG_BD) && defined(XZ_SIDE_AD)
1225
-        _SKEW_FACTOR(XZ_DIAG_AC, XZ_DIAG_BD, XZ_SIDE_AD)
1226
-      #else
1227
-        0.0
1228
-      #endif
1229
-    );
1221
+    #if defined(XZ_DIAG_AC) && defined(XZ_DIAG_BD) && defined(XZ_SIDE_AD)
1222
+      #define XZ_SKEW_FACTOR _SKEW_FACTOR(XZ_DIAG_AC, XZ_DIAG_BD, XZ_SIDE_AD)
1223
+    #else
1224
+      #define XZ_SKEW_FACTOR 0.0
1225
+    #endif
1230
   #endif
1226
   #endif
1231
   #ifndef YZ_SKEW_FACTOR
1227
   #ifndef YZ_SKEW_FACTOR
1232
-    constexpr float YZ_SKEW_FACTOR = (
1233
-      #if defined(YZ_DIAG_AC) && defined(YZ_DIAG_BD) && defined(YZ_SIDE_AD)
1234
-        _SKEW_FACTOR(YZ_DIAG_AC, YZ_DIAG_BD, YZ_SIDE_AD)
1235
-      #else
1236
-        0.0
1237
-      #endif
1238
-    );
1228
+    #if defined(YZ_DIAG_AC) && defined(YZ_DIAG_BD) && defined(YZ_SIDE_AD)
1229
+      #define YZ_SKEW_FACTOR _SKEW_FACTOR(YZ_DIAG_AC, YZ_DIAG_BD, YZ_SIDE_AD)
1230
+    #else
1231
+      #define YZ_SKEW_FACTOR 0.0
1232
+    #endif
1239
   #endif
1233
   #endif
1240
 #endif // SKEW_CORRECTION
1234
 #endif // SKEW_CORRECTION
1241
 
1235
 

+ 1
- 5
Marlin/src/module/planner.h Прегледај датотеку

175
         min_travel_feedrate_mm_s;               // (mm/s) M205 T - Minimum travel feedrate
175
         min_travel_feedrate_mm_s;               // (mm/s) M205 T - Minimum travel feedrate
176
 } planner_settings_t;
176
 } planner_settings_t;
177
 
177
 
178
-#ifndef XY_SKEW_FACTOR
178
+#if DISABLED(SKEW_CORRECTION)
179
   #define XY_SKEW_FACTOR 0
179
   #define XY_SKEW_FACTOR 0
180
-#endif
181
-#ifndef XZ_SKEW_FACTOR
182
   #define XZ_SKEW_FACTOR 0
180
   #define XZ_SKEW_FACTOR 0
183
-#endif
184
-#ifndef YZ_SKEW_FACTOR
185
   #define YZ_SKEW_FACTOR 0
181
   #define YZ_SKEW_FACTOR 0
186
 #endif
182
 #endif
187
 
183
 

Loading…
Откажи
Сачувај