export: Kettenbausteine ueber KS verketten, Einheiten neu gruppieren
K1/K2 und Boundingbox je Export-Zeile folgen jetzt dem echten Kettenbaustein statt seinem Stellvertreter: - Separator (all_elements): KS + bbox des 300-mm-Trennstegs statt des Sensor-Symbols; separator_track/group_vf_gf behalten das Symbol - AS/ES (all_elements, group_vf_gf): KS + bbox des AS-/ES-Elements statt des 200x200-Markers ohne K - gemeinsamer Kern csv:ks-welt-punkte; VF/GF-Wrapper-K1/K2 = K1 des AS bzw. K2 des ES Gruppierter Export neu (sepliste-/XDATA-Algorithmus entfernt): - Bausteine je Wrapper als Vektorkette K2 -> K1 ordnen (Start am AS) - Foerdereinheit = Separator vor der Umlenkstation bis Motorstation, alles dazwischen Gefaelleeinheit (csv:kette-einheiten, Unit-Tests) - je Einheit ein temporaerer Proxy mit 3D-Boundingbox, K1/K2, Laenge und Anzahl Boegen; wird nach dem Export geloescht (ausser csv_leave_proxies) - IDs neuer Export-Objekte entlang der Kette AS -> ES aufsteigend Weiteres: - ssg-make-layer ohne _LAYER-Befehl fuer bestehende Layer (Konsole) - einheitliche, zweisprachige Meldungen fuer behaltene Hilfskopien - bin/show_exportcsv.bat: Export-CSV als Boundingbox-SVG (sps_skel) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
bc481de901
commit
394d476d56
+10
-4
@@ -274,7 +274,7 @@ def build_element_merkmale(block):
|
||||
|
||||
def build_einheit_merkmale(block):
|
||||
"""Merkmale-Dict fuer eine Foerdereinheit-/Gefaelleeinheit-Zeile (ZZ_UNIT_
|
||||
MARKER, siehe csv:unitmark-aktualisieren in export.lsp und
|
||||
MARKER, siehe csv:ketten-verarbeiten in export.lsp und
|
||||
pattern_unit_marker in cfg/export.cfg).
|
||||
|
||||
LAENGE_m/ANZAHL_BOEGEN kommen direkt aus den ATTDEFs des Markers - dort
|
||||
@@ -282,9 +282,15 @@ def build_einheit_merkmale(block):
|
||||
zugeordneten Streckenelement-Mitglieder bzw. Anzahl der Bogen-Mitglieder).
|
||||
Python hat im gruppierten Modus KEINEN Zugriff auf die Einzelteile selbst
|
||||
(die werden dort gar nicht erst exportiert), daher keine eigene
|
||||
Neuberechnung hier."""
|
||||
Neuberechnung hier.
|
||||
|
||||
"Zuordnung" ist die ID des VF_n/GF_n-Wrappers, aus dem diese Einheit
|
||||
stammt (ATTDEF ZUORDNUNG, von csv:ketten-verarbeiten gesetzt) -
|
||||
dieselbe Bedeutung wie "Zuordnung" bei build_sensor_merkmale, nur eine
|
||||
Ebene hoeher (Einheit -> Strecke statt Sensor -> Carrier)."""
|
||||
attribs = block.get("attribs", {})
|
||||
return {
|
||||
"Zuordnung": attribs.get("ZUORDNUNG", ""),
|
||||
"Laenge_m": attribs.get("LAENGE_m", ""),
|
||||
"Anzahl_Boegen": attribs.get("ANZAHL_BOEGEN", ""),
|
||||
}
|
||||
@@ -1034,8 +1040,8 @@ def process_blocks(blocks, lookup, dbg=None):
|
||||
continue
|
||||
|
||||
# ZZ_UNIT_MARKER (siehe cfg/export.cfg pattern_unit_marker sowie
|
||||
# csv:unitmark-aktualisieren in Lisp/export.lsp): der persistente
|
||||
# Marker, den Lisp je zusammenhaengendem Foerderer-/Gefaelle-Abschnitt
|
||||
# csv:ketten-verarbeiten in Lisp/export.lsp): der temporaere
|
||||
# Proxy, den Lisp je zusammenhaengendem Foerderer-/Gefaelle-Abschnitt
|
||||
# einer VF_n/GF_n-Kette setzt (gruppierter Modus, Default). TYP
|
||||
# entscheidet VF->Foerdereinheit / GF->Gefaelleeinheit, analog zur
|
||||
# AS/ES-Klassifikation oben. K1/K2 brauchen keine Sonderbehandlung -
|
||||
|
||||
Reference in New Issue
Block a user