[REFACTOR] VF-Cluster: Magic-Numbers auf *vfk-*-Konstanten umgestellt
vf_core/vf_standard/vf_etage/vf_linienzug referenzieren jetzt durchgaengig die zentralen *vfk-*-Konstanten aus vf_konstanten.lsp statt rohe Winkel-/ Laengen-/Toleranz-Literale (3.0 Grad, 500/300mm Stationen/Separatoren, 1000/800mm Mindestlaengen, AS/ES-Fallback-Versaetze, Text-/Label-Masse). Bereits ueber ssg-cfg-or config-gefuehrte Werte bleiben unangetastet (Config bleibt dort die aktive Quelle). vf_etage-Bogenwinkel-Inkonsistenz (fest verdrahtete Liste ohne Bezug zu *vfk-bogen-winkel*) behoben. vf_konstanten.lsp-Kommentare auf den neuen, aktiven Status aktualisiert.
This commit is contained in:
1 parent
b0aad8e8f4
commit
41eea7fc01
5 files changed
+201
-197
No files matched your search
+21
-21
@@ -75,7 +75,7 @@
|
||||
)
|
||||
(progn
|
||||
(princ (ssg-text (if (tblsearch "BLOCK" as30-blk) "vfe-warn-ks-fehlt-standard" "vfe-warn-block-as30-fehlt")))
|
||||
(setq etage-aus-dx 525.8 etage-aus-dz -72.9)
|
||||
(setq etage-aus-dx *vfk-etage-as-fallback-dx* etage-aus-dz *vfk-etage-as-fallback-dz*)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
)
|
||||
(progn
|
||||
(princ (ssg-text (if (tblsearch "BLOCK" es30-blk) "vfe-warn-ks-fehlt-standard" "vfe-warn-block-es30-fehlt")))
|
||||
(setq etage-ein-dx 576.2 etage-ein-dz -54.6)
|
||||
(setq etage-ein-dx *vfk-etage-es-fallback-dx* etage-ein-dz *vfk-etage-es-fallback-dz*)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -104,7 +104,7 @@
|
||||
(setq etage-gef-dx-links (car m) etage-gef-dz-links (caddr m))
|
||||
(progn
|
||||
(princ (ssg-text (if (tblsearch "BLOCK" gefaelle-blockname) "vfe-warn-kein-ks-links" "vfe-warn-block-fehlt-links")))
|
||||
(setq etage-gef-dx-links 0.0 etage-gef-dz-links -10.0)
|
||||
(setq etage-gef-dx-links 0.0 etage-gef-dz-links *vfk-etage-gefaellebogen-fallback-dz*)
|
||||
)
|
||||
)
|
||||
(princ (ssg-textf "vfe-gefaellebogen-links-mass" (list (rtos etage-gef-dx-links 2 2) (rtos etage-gef-dz-links 2 2))))
|
||||
@@ -118,7 +118,7 @@
|
||||
(setq etage-gef-dx-rechts (car m) etage-gef-dz-rechts (caddr m))
|
||||
(progn
|
||||
(princ (ssg-text (if (tblsearch "BLOCK" gefaelle-blockname) "vfe-warn-kein-ks-rechts" "vfe-warn-block-fehlt-rechts")))
|
||||
(setq etage-gef-dx-rechts 0.0 etage-gef-dz-rechts -10.0)
|
||||
(setq etage-gef-dx-rechts 0.0 etage-gef-dz-rechts *vfk-etage-gefaellebogen-fallback-dz*)
|
||||
)
|
||||
)
|
||||
(princ (ssg-textf "vfe-gefaellebogen-rechts-mass" (list (rtos etage-gef-dx-rechts 2 2) (rtos etage-gef-dz-rechts 2 2))))
|
||||
@@ -352,10 +352,10 @@
|
||||
abs-dz-EIN (abs etage-ein-dz)
|
||||
abs-dz-GEF (abs etage-gef-dz))
|
||||
|
||||
(setq winkel-list '(3 6 9 12 15 18 21 27 33 39 45 51))
|
||||
(setq winkel-list *vfk-bogen-winkel*)
|
||||
(setq ergebnis-liste '())
|
||||
(setq cos3 (cos (* 3.0 (/ pi 180.0)))
|
||||
sin3 (sin (* 3.0 (/ pi 180.0))))
|
||||
(setq cos3 (cos (* *vfk-gefaelle-winkel* (/ pi 180.0)))
|
||||
sin3 (sin (* *vfk-gefaelle-winkel* (/ pi 180.0))))
|
||||
|
||||
(setq feste-gesamt-cos (* FESTE_ETAGE_MITTE cos3))
|
||||
(setq feste-gesamt-sin (* FESTE_ETAGE_MITTE sin3))
|
||||
@@ -384,8 +384,8 @@
|
||||
(setq ergebnis-liste (cons (list winkel nil nil nil) ergebnis-liste))
|
||||
)
|
||||
(progn
|
||||
(setq rad5 (* 3.0 (/ pi 180.0)))
|
||||
(setq rad7 (* (float (if (= richtung "Auf") (- 3 winkel) (+ winkel 3)))
|
||||
(setq rad5 (* *vfk-gefaelle-winkel* (/ pi 180.0)))
|
||||
(setq rad7 (* (float (if (= richtung "Auf") (- *vfk-gefaelle-winkel* winkel) (+ winkel *vfk-gefaelle-winkel*)))
|
||||
(/ pi 180.0)))
|
||||
(setq bogen-x1 (+ (* (car mass1) (cos rad5)) (* (caddr mass1) (sin rad5))))
|
||||
(setq bogen-z1 (+ (* (- (car mass1)) (sin rad5)) (* (caddr mass1) (cos rad5))))
|
||||
@@ -544,13 +544,13 @@
|
||||
(princ (ssg-textf "vfe-step2" (list (rtos as-hz 2 1))))
|
||||
(setq aktueller-punkt
|
||||
(insert-hz-scaled-block-by-ks "Staustrecke_SP_1000_mm" aktueller-punkt
|
||||
400 as-hz 3))
|
||||
400 as-hz *vfk-gefaelle-winkel*))
|
||||
|
||||
;; 3. Separator (folgt der AS-Richtung as-hz, 3 Grad vert)
|
||||
(princ (ssg-textf "vfe-step3" (list (rtos as-hz 2 1))))
|
||||
(setq aktueller-punkt
|
||||
(insert-hz-rotated-block-with-ks "Staustrecke_Separator_SP_300_mm" aktueller-punkt
|
||||
as-hz 3 300 0))
|
||||
as-hz *vfk-gefaelle-winkel* *vfk-separator-laenge* 0))
|
||||
|
||||
;; Ab hier laufende Richtung cur-hz mitfuehren (frame-verkettet). Start =
|
||||
;; KS_AUS-Richtung des AS (as-hz). Jeder Gefaellebogen dreht cur-hz um seinen
|
||||
@@ -570,7 +570,7 @@
|
||||
(progn
|
||||
(princ (ssg-textf "vfe-step5-strecke" (list (rtos L_GF1 2 2))))
|
||||
(setq aktueller-punkt
|
||||
(insert-inclined-scaled-block "Staustrecke_SP_1000_mm" aktueller-punkt L_GF1 3 cur-hz))
|
||||
(insert-inclined-scaled-block "Staustrecke_SP_1000_mm" aktueller-punkt L_GF1 *vfk-gefaelle-winkel* cur-hz))
|
||||
)
|
||||
(princ (ssg-text "vfe-step5-skip"))
|
||||
)
|
||||
@@ -578,7 +578,7 @@
|
||||
;; 6. Umlenkstation (3 Grad geneigt)
|
||||
(princ (ssg-text "vfe-step6"))
|
||||
(setq aktueller-punkt
|
||||
(insert-rotated-block-with-ks (strcat "Vario_Umlenkstation_500mm_" (vf-motorseite-aktuell)) aktueller-punkt 3 500 0 cur-hz))
|
||||
(insert-rotated-block-with-ks (strcat "Vario_Umlenkstation_500mm_" (vf-motorseite-aktuell)) aktueller-punkt *vfk-gefaelle-winkel* *vfk-stations-laenge* 0 cur-hz))
|
||||
|
||||
;; 7. 1. Vertikalbogen (3 Grad geneigt)
|
||||
(if (= richtung "Auf")
|
||||
@@ -594,7 +594,7 @@
|
||||
(setq bogen-dx (car bogen-mass) bogen-dz (caddr bogen-mass))
|
||||
(princ (ssg-textf "vfe-step7" (list bogen-name)))
|
||||
(setq aktueller-punkt
|
||||
(insert-rotated-block-with-ks bogen-name aktueller-punkt 3 bogen-dx bogen-dz cur-hz))
|
||||
(insert-rotated-block-with-ks bogen-name aktueller-punkt *vfk-gefaelle-winkel* bogen-dx bogen-dz cur-hz))
|
||||
|
||||
;; 8. Variable Strecke L_VF
|
||||
(if (> L_VF 0.1)
|
||||
@@ -647,14 +647,14 @@
|
||||
;; 10. Motorstation (3 Grad geneigt)
|
||||
(princ (ssg-text "vfe-step10"))
|
||||
(setq aktueller-punkt
|
||||
(insert-rotated-block-with-ks (strcat "Vario_Motorstation_500mm_" (vf-motorseite-aktuell)) aktueller-punkt 3 500 0 cur-hz))
|
||||
(insert-rotated-block-with-ks (strcat "Vario_Motorstation_500mm_" (vf-motorseite-aktuell)) aktueller-punkt *vfk-gefaelle-winkel* *vfk-stations-laenge* 0 cur-hz))
|
||||
|
||||
;; 11. L_GF2 (3 Grad geneigt)
|
||||
(if (> L_GF2 0.1)
|
||||
(progn
|
||||
(princ (ssg-textf "vfe-step11-gf2" (list (rtos L_GF2 2 2))))
|
||||
(setq aktueller-punkt
|
||||
(insert-inclined-scaled-block "Staustrecke_SP_1000_mm" aktueller-punkt L_GF2 3 cur-hz))
|
||||
(insert-inclined-scaled-block "Staustrecke_SP_1000_mm" aktueller-punkt L_GF2 *vfk-gefaelle-winkel* cur-hz))
|
||||
)
|
||||
(princ (ssg-text "vfe-step11-skip"))
|
||||
)
|
||||
@@ -683,26 +683,26 @@
|
||||
(setq es-wy (+ (* (caddr es-info) (sin es-place-rad)) (* (cadddr es-info) (cos es-place-rad))))
|
||||
(setq es-perp (+ (* es-wx (- perp-sin)) (* es-wy perp-cos)))
|
||||
;; perp-Auslenkung pro Laengeneinheit bei cur-hz (Neigung 3 Grad)
|
||||
(setq perp-rate (* (cos (* 3.0 (/ pi 180.0)))
|
||||
(setq perp-rate (* (cos (* *vfk-gefaelle-winkel* (/ pi 180.0)))
|
||||
(sin (* (- cur-hz hz) (/ pi 180.0)))))
|
||||
;; Loesen: p2b-perp + (L_exit + 300)*perp-rate + es-perp = 0
|
||||
(setq L-exit
|
||||
(if (> (abs perp-rate) 1e-6)
|
||||
(- (/ (- (+ p2b-perp es-perp)) perp-rate) 300.0)
|
||||
(- (/ (- (+ p2b-perp es-perp)) perp-rate) *vfk-separator-laenge*)
|
||||
400.0))
|
||||
(if (< L-exit 50.0) (setq L-exit 50.0)) ; Schutz gegen negative/zu kurze GF
|
||||
(if (< L-exit *vfk-etage-auslauf-min-clamp*) (setq L-exit *vfk-etage-auslauf-min-clamp*)) ; Schutz gegen negative/zu kurze GF
|
||||
|
||||
;; 13. Auslauf-Staustrecke (variabel, folgt cur-hz, 3 Grad vert, KS_EIN)
|
||||
(princ (ssg-textf "vfe-step13" (list (rtos L-exit 2 1) (rtos cur-hz 2 1))))
|
||||
(setq aktueller-punkt
|
||||
(insert-hz-scaled-block-by-ks "Staustrecke_SP_1000_mm" aktueller-punkt
|
||||
L-exit cur-hz 3))
|
||||
L-exit cur-hz *vfk-gefaelle-winkel*))
|
||||
|
||||
;; 14. Separator (verkettet, folgt cur-hz, 3 Grad vert)
|
||||
(princ (ssg-textf "vfe-step14" (list (rtos cur-hz 2 1))))
|
||||
(setq aktueller-punkt
|
||||
(insert-hz-rotated-block-with-ks "Staustrecke_Separator_SP_300_mm" aktueller-punkt
|
||||
cur-hz 3 300 0))
|
||||
cur-hz *vfk-gefaelle-winkel* *vfk-separator-laenge* 0))
|
||||
|
||||
;; 15. ES_30 (verkettet: KS_EIN auf cur-hz; KS_AUS auf der Hauptlinie)
|
||||
(princ (ssg-textf "vfe-step15" (list es-block (rtos cur-hz 2 1))))
|
||||
|
||||
Reference in new issue
Block a user