Sivasnr-Werte mit 0_BGxxxxxx-Mustern werden jetzt ueber die neue
[container]-Config-Sektion in kommaseparierte Listen aufgeloest.
set_attributs.py kann nun explizit zwischen data/omniflo/2D und /3D
als Quellverzeichnis waehlen.
lib/export_csv.py:
- CSV-Header vereinfacht: NachbarIds, Planquadrat und rotation-Spalten
entfernt (nicht im Sivas-Format benoetigt). Anzahl-Spalte auf festen
Wert 1 gesetzt.
- format_planquadrat() entfernt (war unused nach Header-Aenderung).
- process_blocks(): elem_nr startet bei 0 statt -1 (erster Block war
mit Nummer -1 ausgegeben worden).
- build_bogen_merkmale(), build_weiche_merkmale(): KurvenWinkel und
Radius werden jetzt explizit als float() gecastet, um sicherzustellen
dass JSON-Werte aus dem Katalog als Zahl und nicht als String landen.
- Felder nachbarids, planquadrat, rotation aus den item-Dicts entfernt.
lib/omniflo_utils.py:
- import_element_as_block(): prueft jetzt zuerst ob eine Block-
definition mit dem Zielnamen in der Quelldatei existiert (erzeugt
durch set_attributs.py). Falls ja, wird diese direkt importiert
statt des gesamten Modelspace. Das verhindert doppelte Entities wenn
set_attributs.py die Geometrie bereits in einen Block gefasst hat.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
lib/attradd.py -> lib/set_attributs.py: Name besser passend zum
Skript-Zweck (setzt Attribute, analog set_einfuegepkt / set_koords).
bin/add_attr.bat -> bin/set_attributs.bat entsprechend angepasst.
cfg/attradd.cfg: Kommentar auf neuen Skriptnamen aktualisiert.
HOEHE/DREHUNG-Eintraege aus [bogen] und [weiche] entfernt, da diese
Attribute jetzt dynamisch via ssg-cfg-or aus component_defaults.json
bezogen werden (nicht mehr als statische ATTDEF-Defaults noetig).
Ebenso RADIUS aus [weiche] entfernt (war redundant zu KurvenWinkel).
doc/tools.md und CLAUDE.md: Alle Verweise auf attradd.py auf
set_attributs.py aktualisiert.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>