# ============================================================ # sivas.cfg - Attribut->Sivas-Merkmal-Zuordnung fuer lib/export_sivas.py # # Deckt NUR die "einfachen" Faelle ab: eine Sivas-Merkmalnummer entspricht # genau einem (ggf. per Fallback alternativen) Block-Attribut, optional mit # festem Default und/oder einer benannten Transform-Funktion. Berechnete # Werte, die von der Anzahl vorhandener Segmente abhaengen oder mehrere # Attribute kombinieren (VarioFoerderer-Gefaelle-/Vario-Segmentpaare 4312- # 4392/4353-4386, die ILS-Automation-Summenzeile) bleiben bewusst Python-Code # in export_sivas.py - ein flaches Attribut-Mapping kann bedingte/berechnete # Werte nicht abbilden. # # Format je Zeile (Abschnitt = Elementtyp, Key = Sivas-Merkmalnummer): # merkmal = attribut # merkmal = attribut : default # merkmal = attribut | alt_attribut : default # merkmal = attribut : default | transform # # attribut - Name des Block-Attributs (ssg-attrib-*, siehe jeweiliges # .lsp-Modul). Fehlt es in der Zeichnung, greift default. # | alt_attribut - optionaler Fallback-Attributname (aeltere Zeichnungen mit # abweichendem Attributnamen, z.B. N_SEPARATOREN vor der # Umbenennung zu ANZAHL_SEPARATOR). Wird nur genutzt, wenn # attribut selbst fehlt. # : default - Vorgabewert, falls weder attribut noch alt_attribut in # der Zeichnung gesetzt sind. Fehlt ":", ist default "". # | transform - Name einer Python-Funktion in export_sivas.py # (TRANSFORMS-Dict), die den ermittelten Rohwert # (Attribut- oder Default-Wert) in die Sivas-Anzeige # umwandelt (z.B. "0"/"1" -> "Ja"/"Nein"). Bekannte Namen: # ja_nein, geruest_typ_anzeige. Ein unbekannter Name # bricht NICHT ab, der Rohwert wird unveraendert # uebernommen (siehe sivas_mapping.anwenden). # # Abschnittsnamen entsprechen den bisherigen build_*_details-Funktionen in # export_sivas.py: [gefaellestrecke], [kreisel], [eckrad], [geruest]. Die # geruest-typ-Anzeige-Tabelle (ASCII-Attributwert -> Sivas-Klartext mit # Umlauten) UND SEPARATOR_BEARBEITUNG_ANZEIGE bleiben eigene, kleine # Abschnitte weiter unten. # ============================================================ [gefaellestrecke] 2950= MONTAGEHOEHE_m : 0 4384= : Gefällestrecke 4318= L_GF_m 4391= GF_WINKEL 4337= ANZAHL_SEPARATOR : 0 4338= : ohne HARTCOAT HRC 50 ± 5 4339= ANZAHL_SCANNER : 0 3992= GERUEST_EINZELMODUL : 0 | ja_nein 3993= GERUEST_TYP : Schoenenberger Geruest | geruest_typ_anzeige # 4300 (Streckengruppe "ein Objekt"/"mehrere Objekte") und 4311 (Anzahl der # gruppierten Bloecke) bleiben Code (streckengruppe_objekt_text, anzahl-Param.). [kreisel] 2952= MONTAGEHOEHE_m : 0 3511= : 1 3515= ANZAHL_SEPARATOR | N_SEPARATOREN : 2 3517= ANZAHL_SCANNER | N_SCANNER : 0 3519= ANZAHL_RAMPEN | N_RAMPEN : 0 3992= GERUEST_EINZELMODUL : 0 | ja_nein 3993= GERUEST_TYP : Schoenenberger Geruest | geruest_typ_anzeige # 3510 (Kreiselart-Anzeigetext) und 3512 (Abstand in m, gerundet) bleiben # Code (bedingte Umbenennung bzw. Umrechnung mm->m). [eckrad] # Bewusst (noch) beschreibende Klartext-Keys statt Merkmalnummern (kein # bekanntes Sivas-Merkmal fuer Eckrad-Geruest hinterlegt) - details_mit_ # bezeichnung() in export_sivas.py laesst nicht-numerische Keys unveraendert. # "ist_eins" liefert ein ECHTES bool (True/False), NICHT "Ja"/"Nein" wie # ja_nein bei Kreisel/Gefaellestrecke - json.dumps schreibt dann true/false # ohne Anfuehrungszeichen (bisheriges Verhalten von build_eckrad_details). Geruest fuer Einzelmodul= GERUEST_EINZELMODUL : 0 | ist_eins Geruestoption fuer Einzelmodul= GERUEST_TYP : Schoenenberger Geruest [geruest] Farbe= FARBE [variofoerderer] # Nur die von der Segmentanzahl UNABHAENGIGEN Top-Level-Felder einer VF_N- # Streckengruppe (siehe build_variofoerderer_details in export_sivas.py). # Die Gefaelle-/Vario-Segmentpaare (4312-4392, 4353/4354/4386) haengen an der # Listenlaenge von L_GF_m/L_VF_m und bleiben Code. 2950= MONTAGEHOEHE_m : 0 4329= GF_Bogen_L_90 : 0 4330= GF_Bogen_L_60 : 0 4331= GF_Bogen_L_30 : 0 4332= GF_Bogen_R_90 : 0 4333= GF_Bogen_R_60 : 0 4334= GF_Bogen_R_30 : 0 4373= VF_Bogen_A_90 : 0 4374= VF_Bogen_A_60 : 0 4375= VF_Bogen_A_30 : 0 4376= VF_Bogen_I_90 : 0 4377= VF_Bogen_I_60 : 0 4378= VF_Bogen_I_30 : 0 4381= ANZAHL_SEPARATOR : 0 4382= : ohne HARTCOAT HRC 50 ± 5 4383= ANZAHL_SCANNER : 0 3992= GERUEST_EINZELMODUL : 0 | ja_nein 3993= GERUEST_TYP : Schoenenberger Geruest | geruest_typ_anzeige [geruest_typ_anzeige] # ASCII-Attributwert (GERUEST_TYP) -> Sivas-Klartext mit Umlauten/Sonder- # zeichen (Attribute selbst bleiben ASCII, siehe CLAUDE.md-Konvention). Schoenenberger Geruest= Schönenberger-Gerüst