From 1831dfe0ab861242021eddb465c37ccbe47a41c0 Mon Sep 17 00:00:00 2001 From: Julien Oculi Date: Thu, 5 Jun 2025 15:57:10 +0200 Subject: [PATCH] feat: remove old roll correction --- maths.cpp | 23 ++++------------------- 1 file changed, 4 insertions(+), 19 deletions(-) diff --git a/maths.cpp b/maths.cpp index 8cef301..23ad236 100644 --- a/maths.cpp +++ b/maths.cpp @@ -1,8 +1,5 @@ #include "math.h" -// rollH atan((22.5 - 18.5) / 236) ~0.97° -// rollV ~1° - double degToRad(double deg) { return deg * M_PI / 180.0; } double radToDeg(double rad) { return rad * 180.0 / M_PI; } @@ -16,11 +13,6 @@ void angleToStep(long &stepX, long &stepY, double angleX, double angleY) { stepY = angleY / stepRatioY; } -double rollCorrection(double x, double max, double width) { - double correction = max * (1.0 - cos((10.0 * x) / (width * M_PI))) / 2.0; - return x - correction; -} - void cartesianToPolar(long &stepX, long &stepY, double zeroX, double zeroY, double x, double y, double z) { // TODO remove magic numbers @@ -30,19 +22,12 @@ void cartesianToPolar(long &stepX, long &stepY, double zeroX, double zeroY, x = -x; // natural axis direction double dX = x + offsetX; - double dY = rollCorrection(y + offsetY, 0.2, 400.0); + double dY = y + offsetY; double dZ = z + distance; - double roll = atan2(4.0, 236.0); - double rollY = dX * tan(roll); - double rollX = dY * tan(roll); - - double dXr = dX + rollX; - double dYr = dY + rollY; - - double rho = sqrt(pow(dXr, 2.0) + pow(dYr, 2.0) + pow(dZ, 2.0)); - double angleY = M_PI / 2.0 - acos(dYr / rho); - double angleX = atan2(dXr, dZ); + double rho = sqrt(pow(dX, 2.0) + pow(dY, 2.0) + pow(dZ, 2.0)); + double angleY = M_PI / 2.0 - acos(dY / rho); + double angleX = atan2(dX, dZ); angleToStep(stepX, stepY, angleX, angleY); }