WINKEL_AS und WINKEL_ES hinzugefügt

This commit is contained in:
2026-08-31 13:53:41 +02:00
parent 2147f817fc
commit ddb5dfa0f5
4 changed files with 35 additions and 6 deletions
+8 -3
View File
@@ -1043,7 +1043,8 @@
bR90 bR60 bR30
startpunkt last-ent nach-aus-pt entry-hz
(caddr (nth first-idx segmente))
es-seite "0" "Schoenenberger Geruest")
es-seite "0" "Schoenenberger Geruest"
gf-as-winkel gf-es-winkel)
(princ "\n\n=========================================")
(princ (ssg-text "gf-status-fertig"))
@@ -1141,7 +1142,8 @@
bogen-L90 bogen-L60 bogen-L30
bogen-R90 bogen-R60 bogen-R30
startpunkt last-ent nach-aus-pt entry-hz L-first-seg
es-seite geruest-einzelmodul geruest-typ /
es-seite geruest-einzelmodul geruest-typ
as-winkel es-winkel /
gf-bname gf-ss ent gf-insert typ-str anzahl-gf
gf-winkel-str i gf-g10z gf-korr-dz gf-osmode-alt)
(if (null geruest-einzelmodul) (setq geruest-einzelmodul "1"))
@@ -1217,7 +1219,9 @@
(cons "DELTA_L_mm" (itoa (fix deltaL)))
(cons "TYP" typ-str)
(cons "SEITE_AS" seite)
(cons "WINKEL_AS" (if as-winkel as-winkel ""))
(cons "SEITE_ES" es-seite)
(cons "WINKEL_ES" (if es-winkel es-winkel ""))
(cons "ANZAHL_GF" (itoa anzahl-gf))
(cons "L_GF_m" L-gf-str)
(cons "GF_WINKEL" gf-winkel-str)
@@ -1357,7 +1361,8 @@
0 0
0 0 0 0 0 0
startpunkt last-ent nach-aus-pt (float hz) (float L_stau)
es-seite geruest-einzelmodul geruest-typ))
es-seite geruest-einzelmodul geruest-typ
as-winkel es-winkel))
;; Edit-Metadaten (Fahrtrichtung, Gefaellewinkel, Element-Winkel) als XDATA
;; auf das GF_N-INSERT schreiben, damit GEFAELLESTRECKE_EDIT die Strecke
+4
View File
@@ -754,6 +754,8 @@
;; ARTINR fest 6220 (alle GF/VF). TYP-Wert wird zur Laufzeit gesetzt.
;; ID zuerst (global, jeder eingefuegte Baustein - Kreisel/GF/VF - erhaelt eine
;; neue ID), danach Bezeichnung (= Blockname). Hoehen/Delta mit Einheit _mm.
;; WINKEL_AS/WINKEL_ES: Elementwinkel (30/60/90, als String) des AS-/ES-
;; Elements, sofern eines gewaehlt wurde - sonst leer (kein AS/ES vorhanden).
(setq *strecke-attr-front*
'(("ID" "")
("Bezeichnung" "")
@@ -765,7 +767,9 @@
("DELTA_L_mm" "0")
("TYP" "Streckengruppe")
("SEITE_AS" "rechts")
("WINKEL_AS" "")
("SEITE_ES" "rechts")
("WINKEL_ES" "")
("ANZAHL_GF" "0")
("L_GF_m" "0.000")
("GF_WINKEL" "0.0")))
+2
View File
@@ -896,7 +896,9 @@
(cons "DELTA_L_mm" (itoa (fix deltaL)))
(cons "TYP" "Streckengruppe")
(cons "SEITE_AS" seite)
(cons "WINKEL_AS" (if (= anlage-typ "etage") "30" "90"))
(cons "SEITE_ES" seite)
(cons "WINKEL_ES" (if (= anlage-typ "etage") "30" "90"))
(cons "ANZAHL_GF" "2") ; GF1 + GF2
(cons "L_GF_m" L_GF_m-str)
;; GF_WINKEL: Neigung je GF-Segment (GF1,GF2 - beide feste Grundneigung)
+21 -3
View File
@@ -2798,7 +2798,9 @@
(cons "DELTA_L_mm" (itoa (fix delta-l-total)))
(cons "TYP" typ-str)
(cons "SEITE_AS" as-seite)
(cons "WINKEL_AS" (if (boundp '*vfl-as-winkel*) *vfl-as-winkel* ""))
(cons "SEITE_ES" es-seite)
(cons "WINKEL_ES" (if (boundp '*vfl-es-winkel*) *vfl-es-winkel* ""))
;; ANZAHL_GF = alle GF-Stuecke: eigenstaendige GF-Segmente UND die GF1/GF2
;; jeder VF-Einheit (alle ueber vfl-acc-gf-seg in *vfl-acc-lgf* gesammelt).
(cons "ANZAHL_GF" (itoa (length *vfl-acc-lgf*)))
@@ -3045,6 +3047,11 @@
(list (ssg-text "vfl-ja") (ssg-text "vfl-as-nein")) 1
"vfl-as-setzen-frage"))
(setq as-vorhanden (/= antwort "2"))
;; *vfl-as-winkel*/*vfl-es-winkel* sind Globals (fuer vfl-as-winkel/-es-winkel-
;; Zugriff aus AS-/ES-Einfuegefunktionen) und muessen pro Kette zurueckgesetzt
;; werden - sonst wuerde ein WINKEL_AS-Attribut den Wert der VORHERIGEN Kette
;; tragen, wenn diesmal kein AS gewaehlt wird.
(setq *vfl-as-winkel* nil *vfl-es-winkel* nil)
(if as-vorhanden
(progn
(setq *vfl-as-winkel*
@@ -4875,6 +4882,8 @@
(list (ssg-text "vfl-ja") (ssg-text "vfl-m3-as-nein")) 1
"vfl-as-setzen-frage"))
(setq as-vorhanden (/= antwort "2"))
;; Globals pro Lauf zuruecksetzen (siehe Kommentar in vf-linienzug-modus).
(setq *vfl-as-winkel* nil *vfl-es-winkel* nil)
(if as-vorhanden
(progn
(setq *vfl-as-winkel*
@@ -5694,7 +5703,7 @@
;; Rueckgabe: (list attribut-alist typ-str).
(defun vfl-kette-baue-attribute (kette neuer-bname chain-start chain-end /
rec typ bname anzahl-vf phase entry-info gemessen betrag richtung
as-seite es-seite delta-l erster letzter ergebnis typ-str)
as-seite es-seite as-winkel es-winkel delta-l erster letzter ergebnis typ-str)
(vfl-acc-reset)
(setq anzahl-vf 0)
(setq phase "gf")
@@ -5704,6 +5713,7 @@
;; eigenes AS-/ES-Element beginnt/endet, soll das im Attribut auch als
;; "keins vorhanden" erkennbar bleiben statt eine falsche Seite vorzutaeuschen.
(setq as-seite "" es-seite "")
(setq as-winkel "" es-winkel "")
(setq erster (car kette))
(setq letzter (car (reverse kette)))
@@ -5719,10 +5729,16 @@
;; aufgeloest; jedes davon durchlaeuft hier dieselbe Typ-Klassifikation
;; wie ein von Anfang an loses Bauteil.
((= typ "AS")
(if (equal rec erster) (setq as-seite (vfl-kette-teil bname 3))))
(if (equal rec erster)
(progn
(setq as-seite (vfl-kette-teil bname 3))
(setq as-winkel (vfl-kette-teil bname 2)))))
((= typ "ES")
(if (equal rec letzter) (setq es-seite (vfl-kette-teil bname 3))))
(if (equal rec letzter)
(progn
(setq es-seite (vfl-kette-teil bname 3))
(setq es-winkel (vfl-kette-teil bname 2)))))
((= typ "GFBOGEN")
;; Gefaellebogen_<seite>_<winkel>_R500
@@ -5797,7 +5813,9 @@
(cons "DELTA_L_mm" (itoa (fix delta-l)))
(cons "TYP" typ-str)
(cons "SEITE_AS" as-seite)
(cons "WINKEL_AS" as-winkel)
(cons "SEITE_ES" es-seite)
(cons "WINKEL_ES" es-winkel)
(cons "ANZAHL_GF" (itoa (length *vfl-acc-lgf*)))
(cons "L_GF_m" (vfl-join-komma *vfl-acc-lgf*))
(cons "GF_WINKEL" (vfl-join-komma *vfl-acc-gfwinkel*))