Rücksprungkanten an allen Elementen vorbeiführen (#12)
- Mit Lanes: ruecksprung_points() fährt senkrecht nur in den Gängen zwischen den Spalten (rechts der Quelle, links des Ziels) und waagrecht knapp unter Quelle bzw. Ziel und in einem Kanal am Poolboden. Das Kanalband wird nach der Platzierung an die letzte Lane angehängt: Die Elemente bleiben, wo sie sind, die Kante bleibt im eigenen Pool, jede Rücksprungkante hat eine eigene Kanalhöhe. - Ohne Lanes: Kanal seitlich an allen Elementen zwischen Quelle und Ziel vorbei (parallele Zweige stehen versetzt). Steht ein Nachbar in der Zeile im Weg, unten hinaus bzw. oben hinein über die Lücke zwischen den Zeilen (zeile(), zeile_frei()). - beispiel_lanes: Kante S4->S2 läuft nicht mehr durch S5, Pool um das Kanalband höher, externer Pool entsprechend tiefer. beispiel_prozess: Kanal bei x 50 statt 20. Referenzmodell unverändert. - xfail für #12 entfernt; fünf neue Tests in test_md_to_bpmn.py. - Belastungstest (126 Rücksprung-Varianten, mit/ohne Lanes): Kreuzungen durch Rücksprungkanten vorher in 31 Fällen, jetzt in keinem. - Tests: python -m pytest -q -> 102 bestanden, 2 xfail (#13). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -5,6 +5,13 @@ Kurz, konkret, mit Datum und Quelle. Neue Einträge oben in der passenden Rubrik
|
||||
|
||||
## BPMN und PICTURE (Skill sn-bpmn, md_to_bpmn.py)
|
||||
|
||||
- **Rücksprungkanten brauchen je Layout eine eigene Führung.** Mit Lanes stehen die Elemente in festen Spalten
|
||||
(linksbündig, 190 auseinander). Der Rückweg läuft senkrecht nur in den Gängen zwischen den Spalten und waagrecht
|
||||
in einem Kanalband, das am Boden der letzten Lane **nach** der Platzierung angehängt wird. So bleiben die
|
||||
Elemente, wo sie sind, und die Kante bleibt im eigenen Pool. Ohne Lanes gibt es keine festen Spalten, parallele
|
||||
Zweige stehen versetzt zur Mitte. Der Kanal liegt deshalb seitlich an **allen** Elementen zwischen Quelle und
|
||||
Ziel vorbei. Steht ein Nachbar in derselben Zeile im Weg, geht die Kante unten hinaus bzw. oben hinein.
|
||||
Geprüft mit allen 126 Rücksprung-Varianten zweier Testmodelle, mit und ohne Lanes. (#12, 25.09.2026)
|
||||
- **Vorschau und PICTURE können sich unterscheiden, auch ohne Fehler im Modell.** Beispiel XOR-Gateway: PICTURE
|
||||
zeichnet das „X“ nach eigenen Regeln, auch ohne `isMarkerVisible`. Die Vorschau (bpmn-js) hält sich an das
|
||||
Attribut und zeigte ohne es leere Rauten. Seit #15 setzt der Konverter das Attribut, beide zeigen das X. Wirkt
|
||||
|
||||
Reference in New Issue
Block a user