Browse Source

Fix Planner::unskew parity with skew

Scott Lahteine 6 years ago
parent
commit
da9748fb21
1 changed files with 3 additions and 3 deletions
  1. 3
    3
      Marlin/planner.h

+ 3
- 3
Marlin/planner.h View File

@@ -349,8 +349,8 @@ class Planner {
349 349
 
350 350
       FORCE_INLINE static void skew(float &cx, float &cy, const float &cz) {
351 351
         if (WITHIN(cx, X_MIN_POS + 1, X_MAX_POS) && WITHIN(cy, Y_MIN_POS + 1, Y_MAX_POS)) {
352
-          const float sx = cx - (cy * xy_skew_factor) - (cz * (xz_skew_factor - (xy_skew_factor * yz_skew_factor))),
353
-                      sy = cy - (cz * yz_skew_factor);
352
+          const float sx = cx - cy * xy_skew_factor - cz * (xz_skew_factor - (xy_skew_factor * yz_skew_factor)),
353
+                      sy = cy - cz * yz_skew_factor;
354 354
           if (WITHIN(sx, X_MIN_POS, X_MAX_POS) && WITHIN(sy, Y_MIN_POS, Y_MAX_POS)) {
355 355
             cx = sx; cy = sy;
356 356
           }
@@ -359,7 +359,7 @@ class Planner {
359 359
 
360 360
       FORCE_INLINE static void unskew(float &cx, float &cy, const float &cz) {
361 361
         if (WITHIN(cx, X_MIN_POS, X_MAX_POS) && WITHIN(cy, Y_MIN_POS, Y_MAX_POS)) {
362
-          const float sx = cx + cy * xy_skew_factor + cz * xz_skew_factor,
362
+          const float sx = cx + cy * xy_skew_factor + cz * (xz_skew_factor - (xy_skew_factor * yz_skew_factor)),
363 363
                       sy = cy + cz * yz_skew_factor;
364 364
           if (WITHIN(sx, X_MIN_POS, X_MAX_POS) && WITHIN(sy, Y_MIN_POS, Y_MAX_POS)) {
365 365
             cx = sx; cy = sy;

Loading…
Cancel
Save