export: Separator-Typ VF/GF aus der Ketten-Einheit statt Bau-XDATA
Der Typ (Merkmal "Typ") jeder Separator-Zeile kommt jetzt an EINER Stelle aus der Einheiten-Schneidung csv:kette-einheiten (neu: csv:kette-sep-typen, eingetragen in csv:ketten-verarbeiten) - dieselbe Quelle wie die Einheiten-Boundingbox. VF = Separator direkt vor der Umlenkstation bzw. zwischen Umlenk- und Motorstation, sonst GF. Die bauzeitige XDATA SSG_SEP_TYP (ssg-sep-typ-xdata-schreiben/-lesen, 15 Einfuegestellen) entfaellt. Sie war teils falsch: der Separator vor dem ES hinter einer Motorstation bekam "VF", und ein sep_nach-Separator einer GF, den die folgende VF-Einheit als Einlauf nutzt, blieb "GF" (HundM05: Sep1/5/7/9/11 und Sep2). Unit-Tests csv:kette-sep-typen in tests/test_unit.lsp. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
96ca43eff5
commit
e67f7cc1aa
@@ -610,38 +610,6 @@
|
||||
ent
|
||||
)
|
||||
|
||||
;; --- Streckentyp (VF/GF) EINES Separator-Inserts als XDATA vermerken ---
|
||||
;; App "SSG_SEP_TYP", einzelne 1000-Gruppe = "VF"/"GF". Anders als die
|
||||
;; Sepliste (EIN Eintrag je Wrapper, alle Separatoren zusammengefasst) sitzt
|
||||
;; dieser Marker DIREKT am einzelnen Staustrecke_Separator_SP_300_mm-Insert -
|
||||
;; noetig, weil ein einzelner VF_n/GF_n-Wrapper intern mehrfach zwischen
|
||||
;; Foerderer- und Gefaellestrecke-Abschnitten wechseln kann (siehe
|
||||
;; lib/dump_vf_kette_inhalt.py: HundM05 VF_1 hat 4 Separatoren, 2x VF, 2x GF).
|
||||
;; Der Wrapper-Blockname (VF_n/GF_n) sagt darueber nichts aus und darf dafuer
|
||||
;; NICHT herangezogen werden (fruehere Fehlannahme). Aufrufer: die
|
||||
;; Separator-Einfuegestellen in vf_linienzug.lsp/Gefaellestrecke.lsp/
|
||||
;; vf_standard.lsp/vf_etage.lsp, direkt nach gf-insert-hz-with-ks (ueber
|
||||
;; entlast - zwischen Insert und Tag darf nichts anderes erzeugt werden).
|
||||
;; Gelesen von csv:sep-proxies-erzeugen (export.lsp) am NESTED-Original
|
||||
;; (nested-ent), bevor die temporaere Kopie entsteht.
|
||||
(defun ssg-sep-typ-xdata-schreiben (ent typ)
|
||||
(if (and ent typ)
|
||||
(progn
|
||||
(regapp "SSG_SEP_TYP")
|
||||
(entmod (append (entget ent) (list (list -3 (list "SSG_SEP_TYP" (cons 1000 typ))))))
|
||||
)
|
||||
)
|
||||
ent
|
||||
)
|
||||
|
||||
;; Liest den Streckentyp-Marker zurueck. Rueckgabe: "VF"/"GF" oder nil (kein
|
||||
;; Marker - z.B. Altbestand ohne den neuen Bauzeit-Tag).
|
||||
(defun ssg-sep-typ-xdata-lesen (ent / xd app-data)
|
||||
(setq xd (entget ent (list "SSG_SEP_TYP")))
|
||||
(setq app-data (cdr (assoc -3 xd)))
|
||||
(if app-data (cdr (cadr (car app-data))) nil)
|
||||
)
|
||||
|
||||
;; Liest die Sepliste-XDATA. Rueckgabe: Liste von (typ lfdnr x y), oder nil
|
||||
;; (kein/unbekanntes Sepliste-XDATA am Entity).
|
||||
(defun ssg-sepliste-xdata-lesen (ent app-name / xd app-data werte)
|
||||
|
||||
Reference in New Issue
Block a user