From b577b7ad69677e5babb2c054387eb3828405e567 Mon Sep 17 00:00:00 2001 From: Michael Stangl Date: Thu, 10 Sep 2026 15:13:06 +0200 Subject: [PATCH] doc: CSV-Header und Testliste in csv-export.md ergaenzt Explizites CSV-Spalten-Layout (inkl. der neuen "TrackIds"-Spalte) und die neuen/erweiterten Testdateien (Bezeichnung-Attribut, BTMT im Kreisel-Umlauf, 0-Grad-Start) nachgetragen - inhaltlich war die Doku bereits aktuell, es fehlte nur die konkrete Kopfzeile und der Test-Ueberblick. Co-Authored-By: Claude Sonnet 5 --- doc/csv-export.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/doc/csv-export.md b/doc/csv-export.md index dbfc2c2..e87e729 100644 --- a/doc/csv-export.md +++ b/doc/csv-export.md @@ -138,6 +138,13 @@ Aufruf: `python export_csv.py `. `main()` laedt das JSON, den Omniflo-Katalog (Boegen/Weichen) und ruft `process_blocks(blocks, lookup)` auf, das die eigentliche Item-Liste baut. +CSV-Spalten (Header, siehe `format_csv_line`/`main`): + +```text +Elementnummer;TeileArt;TeileId;Bezeichnung;Planquadrat;Anzahl;Position;Boundingbox; +Insertpoint;K1;K2;K3;K4;Nachbarn;TrackIds;Fehler;Warnungen;Merkmale +``` + ### 1. Blöcke klassifizieren Eine grosse Schleife über alle rohen JSON-Blöcke ordnet jeden Block anhand @@ -328,8 +335,11 @@ schnellste Weg, einer fehlenden Nachbarschaft auf den Grund zu gehen. - `tests/test_export_kreisel_umlauf.py` — Kreisel-Kreisel-Weiche im Umlauf, rotationsunabhaengige Kreisel-Matching-Box, sepliste-Nachbarn-Aufloesung - ohne rohe Schluessel in der Ausgabe. + ohne rohe Schluessel in der Ausgabe, Kreisel-Umlauf-Start bei 0 Grad, + BTMT Beladung/Entladung als freie Umlauf-Punkte, `"TrackIds"`-Spalte. - `tests/test_export_separator_bbox.py` — feste Separator-Symbol-Box (Geometrie + Fallback bei fehlender `vla-getboundingbox`-Box). +- `tests/test_export_bezeichnung.py` — `"Bezeichnung"`-Spalte von + VF_n/GF_n/Kreisel/Eckrad nutzt das Anwender-Attribut, sofern gesetzt. -Beide laufen komplett ohne BricsCAD (reine Python-Geometrie/-Logik). +Alle laufen komplett ohne BricsCAD (reine Python-Geometrie/-Logik).