--track: Bahnzusammenhang aus der TrackIds-Spalte statt aus Nachbarn
build_track_graph baut die Fein-Adjazenz jetzt direkt aus der geordneten TrackIds-Spalte je Container (Element.track_ids): Kreisel als zirkulaerer Umlauf in Drehrichtung (Export-Sortierung), Strecke/Gefaelle als lineare Kette AS -> SEP.. -> ES. Gemeinsame AS/ES-/Weiche-Knoten verketten die Container automatisch - die Rueckmeldungs-/Rollen-Heuristik aus der Nachbarn-Spalte (_transfer_kreisel_lane, _wire_weiche, _orient_separator_links) entfaellt komplett. _attach_track_symbols misst offene Bahnenden jetzt am feinen Graphen statt am groben; das behebt die vereinzelten Falsch-Eingaenge an voll verketteten Bahnen (HundM05: Bahn 0001-0004, 0006-R). Doku in doc/Python_Scripts.md und doc/track.md nachgezogen. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
db4e975adf
commit
516f30278b
+10
-2
@@ -46,7 +46,13 @@ Kreisel 0001 trackIds = [0040(Sep@0001-R), 0079(Weiche), 0036(Sep@0014)]
|
||||
4. **Systemgrenzen** — BTMT Be-/Entladung werden über den bereits im groben
|
||||
Graphen aufgelösten Anschluss angebunden (`_attach_track_stations`); offene
|
||||
Bahnenden ohne Station bekommen ein generisches Symbol Eingang/Ausgang
|
||||
(`_attach_track_symbols`).
|
||||
(`_attach_track_symbols`). Wichtig: die Offenheit wird am **feinen** Graphen
|
||||
gemessen (ein reales Bahnelement ohne Vorgänger/Nachfolger in `track.edges`),
|
||||
**nicht** am groben. Der grobe Graph kann eine Bahn als offenes Ende führen,
|
||||
obwohl ihre AS/ES-Enden im Kreisel-Umlauf längst verkettet sind (die Richtung
|
||||
blieb dort nur „unbestimmt") — würde man ihn als Maßstab nehmen, entstünden
|
||||
vereinzelte Falsch-Eingänge an voll verketteten Bahnen (beobachtet an
|
||||
`HundM05.csv`: Bahn 0001–0004, 0006-R).
|
||||
|
||||
## Warum das die `Nachbarn`-Heuristik ersetzt
|
||||
|
||||
@@ -76,4 +82,6 @@ komplett — mit ihr die zahlreichen zugehörigen Warnungen.
|
||||
| grün (`"Station"`) | Anbindung BTMT Be-/Entladung |
|
||||
| gepunktet (`"Symbol"`) | offenes Bahnende ohne BTMT-Station |
|
||||
| gestrichelt gelb (`"unbestimmt"`) | Element nicht in einer `TrackIds`-Kette |
|
||||
| Raute | Weiche | Ellipse | Ein-/Ausgang, BTMT | gestrichelter Rand | Bahn-Platzhalter |
|
||||
| Raute (Knoten) | Weiche |
|
||||
| Ellipse (Knoten) | Ein-/Ausgang, BTMT Be-/Entladung |
|
||||
| gestrichelter Rand (Knoten) | Bahn-Platzhalter (Reihenfolge/Position offen) |
|
||||
|
||||
Reference in New Issue
Block a user