From ad72c45cf2e38db5f24d8eb028b527324d2aae3d Mon Sep 17 00:00:00 2001 From: Michael Stangl Date: Wed, 6 May 2026 19:47:14 +0200 Subject: [PATCH] Korrektur der z-Koordinaten durch Claude --- Lisp/VarioFoerderer.lsp | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/Lisp/VarioFoerderer.lsp b/Lisp/VarioFoerderer.lsp index 6ba50d5..0bac497 100644 --- a/Lisp/VarioFoerderer.lsp +++ b/Lisp/VarioFoerderer.lsp @@ -446,12 +446,29 @@ (setq bogen-x1 (car mass1) bogen-x2 (car mass2)) (setq cosα (cos (* winkel (/ pi 180.0))) sinα (sin (* winkel (/ pi 180.0)))) (setq A (- deltaL aus-dx ein-dx bogen-x1 bogen-x2 (* FESTE_HORIZONTAL cos3))) - (setq B (- deltaH abs-dz-AUS abs-dz-EIN bogen-z1 bogen-z2 (* FESTE_HORIZONTAL sin3))) - (setq nenner (- (* cos3 sinα) (* sin3 cosα))) + (if (= richtung "Auf") + (progn + ;; "Auf": L_GF geht bei 3° bergab (-sin3), L_VF geht bei α bergauf (+sinα) + ;; Gleichungssystem: cos3·L_GF + cosα·L_VF = A + ;; -sin3·L_GF + sinα·L_VF = B + (setq B (+ deltaH abs-dz-AUS abs-dz-EIN (- bogen-z1) (- bogen-z2) (* FESTE_HORIZONTAL sin3))) + (setq nenner (+ (* cos3 sinα) (* sin3 cosα))) + ) + (progn + ;; "Ab": Beide L_GF und L_VF gehen bergab (+sin3, +sinα) + ;; Gleichungssystem: cos3·L_GF + cosα·L_VF = A + ;; sin3·L_GF + sinα·L_VF = B + (setq B (- deltaH abs-dz-AUS abs-dz-EIN bogen-z1 bogen-z2 (* FESTE_HORIZONTAL sin3))) + (setq nenner (- (* cos3 sinα) (* sin3 cosα))) + ) + ) (if (> (abs nenner) 0.0001) (progn (setq L_GF (/ (- (* A sinα) (* B cosα)) nenner)) - (setq L_VF (/ (- (* B cos3) (* A sin3)) nenner)) + (if (= richtung "Auf") + (setq L_VF (/ (+ (* B cos3) (* A sin3)) nenner)) + (setq L_VF (/ (- (* B cos3) (* A sin3)) nenner)) + ) (if (and (numberp L_GF) (numberp L_VF)) (progn (setq gueltig (and (>= L_GF 0) (>= L_VF 0)))