[FEAT] VF-Linienzug Modus 2+3: Segment-Gruppen-Dialoge + Highlight
Modus 2 (Pfad+Zielhoehe) und Modus 3 (Vorwaerts-Nachbau) fassen die je Segment unmittelbar aufeinanderfolgenden Fragen (Typ + ggf. Neigung/ Vario-Winkel/Variante) in EINEM Wizard-DCL-Dialog zusammen - analog zu Modus 1. Der Dialogkopf zeigt "Segment i/n ..."; das aktuelle Pfad-Segment (LINE/ARC) wird vorher per redraw-Highlight in der Zeichnung hervorgehoben. - Neue DCL-Dialoge: vflw_seg_linie_m2, vflw_seg_linie_m3, vflw_seg_bogen - Neue Helfer: vflw-seg-*-impl (fuellen *vflw-pending*), vfl-seg-highlight, vfl-seg-kopf - Modus 3 zusaetzlich: Kettenstart- und AS-Element-Gruppen-Dialog; AS-Winkel jetzt pending-aware ueber vfl-in-value - Bogen-Dialog: vario-erlaubt-Flag (Modus 3 nur im offenen VF-Lauf), sonst wuerde die unkonsumierte Variante-Antwort ins naechste Segment lecken Alles hinter (vfl-wizard-aktiv) - bei GUI-aus (Tests) faellt alles unveraendert auf Konsole/Replay zurueck. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
+26
-3
@@ -57,14 +57,34 @@ sichtbar und der naechste Punkt treffsicher anwaehlbar ist. Aendert nur die
|
||||
Ansicht, nicht das aktive BKS; rein kosmetisch und per `vl-catch-all-apply`
|
||||
abgesichert.
|
||||
|
||||
Nicht umgestellt (bleiben bewusst reine Konsole, siehe Abschnitt 6): Modus 3
|
||||
(Vorwaerts-Nachbau, Legacy - im Code selbst als "wird umgebaut" markiert,
|
||||
Aufwand fuer bald ersetzten Code waere nicht sinnvoll) sowie die
|
||||
Modus 2 (Pfad+Zielhoehe-Solver) UND Modus 3 (Vorwaerts-Nachbau) sind
|
||||
inzwischen ebenfalls auf Wizard-Dialoge umgestellt: beide gehen die Kette
|
||||
Segment fuer Segment durch und fassen die je Segment unmittelbar
|
||||
aufeinanderfolgenden Fragen (Typ + ggf. Neigung/Vario-Winkel/Variante) in
|
||||
EINEM Segment-Gruppen-Dialog zusammen (siehe Tabelle unten und Abschnitt
|
||||
"Segment-Highlight"). Modus 3 nutzt zusaetzlich Kettenstart- und AS-Element-
|
||||
Gruppen-Dialoge (Startpunkt+Hoehe bzw. AS-Winkel+Seite). Nur der Modus-3-Bau
|
||||
selbst bleibt intern Konsolen-getrieben (die vfl-in-*-Wrapper konsumieren die
|
||||
Dialog-Antworten aus `*vflw-pending*`). Weiterhin reine Konsole: die
|
||||
Gefaellestrecke-Konsolenmodi 2/3. Punktwahl (`getpoint`) bleibt ausserhalb
|
||||
von Gruppen-Dialogen unveraendert Konsole/Zeichnung - eine Maus-Punktauswahl
|
||||
braucht keinen eigenen Dialog, das BricsCAD-Prompt an der Eingabezeile
|
||||
leistet bereits die vom Nutzer gewuenschte "Punkt waehlen"-Statusmeldung.
|
||||
|
||||
### Segment-Highlight (Modus 2 + 3)
|
||||
|
||||
Vor jedem Segment-Gruppen-Dialog wird die zugehoerige Pfad-Entity (LINE/ARC)
|
||||
in der Zeichnung per `(redraw ename 3)` hervorgehoben und danach per
|
||||
`(redraw ename 0)` zurueckgesetzt (`vfl-seg-highlight` in `vf_linienzug.lsp`).
|
||||
Die Zuordnung ist direkt: `segmente[i]` (aus `gf-analysiere-kette`) und
|
||||
`kette[i]` (aus `gf-sortiere-objekte`) sind 1:1 in gleicher Reihenfolge, die
|
||||
Entity ist `(car (nth i kette))` als VLA-Objekt (via `vlax-vla-object->ename`
|
||||
in einen Ename gewandelt). Der Dialog-Kopf zeigt zusaetzlich immer
|
||||
"Segment i/n ..." (wie die Konsolen-Frage), sodass der Nutzer sieht, zu
|
||||
welchem Segment die Frage gehoert. Nur aktiv bei echtem Wizard-Live-Lauf
|
||||
(`vfl-wizard-aktiv`); bei abgeschalteter GUI (Tests) faellt alles auf den
|
||||
Konsolen-/Replay-Pfad zurueck (kein Highlight, keine Dialoge).
|
||||
|
||||
### Gruppen-Dialoge (mehrere Fragen in einem Bildschirm)
|
||||
|
||||
Fragen, die im Ablauf IMMER unmittelbar hintereinander kommen (kein
|
||||
@@ -83,6 +103,9 @@ Gruppen-Dialoge PLUS die beiden generischen Einzel-Dialoge (siehe
|
||||
| Gefaelle festlegen | Modus(Hoehe/Winkel) + EIN Wertfeld (Beschriftung wechselt mit dem Modus) | Teil von Block 36 |
|
||||
| Ziel-Hoehe | Zielhoehe (generischer `vflw_zahl`-Dialog, an 4 Aufrufstellen wiederverwendet: Block 36 GF-Wechsel, 37, 41/vfl-body-abschluss, 42) | Je 1 Screen |
|
||||
| Horizontales Stueck | Separator VOR + Separator NACH + Foerderer-Ende (3 Optionen) | Teil von Block 38 |
|
||||
| Segment Gerade (Modus 2) | Typ (GF/VF) + GF-Neigung (nur bei GF aktiv) | 2 Konsolen-Fragen/Segment (`vflw_seg_linie_m2`) |
|
||||
| Segment Gerade (Modus 3) | Typ (GF/VF-Ab/VF-Auf/VF-Hor) + kontextabh. Wertfeld (GF-Neigung / Vario-Winkel / bei Hor deaktiviert) | 2 Konsolen-Fragen/Segment (`vflw_seg_linie_m3`) |
|
||||
| Segment Eck/Bogen (Modus 2+3) | Typ (GF-Bogen/Vario-Kurve) + Variante (nur bei Vario-Kurve aktiv; in Modus 3 nur im offenen VF-Lauf) | 2 Konsolen-Fragen/Segment (`vflw_seg_bogen`) |
|
||||
|
||||
**Punktwahl-Button nur bei "Kettenstart"** (bzw. bei Modus 2s Start-/
|
||||
Endpunkt): `(getpoint)` direkt aus einem offenen `action_tile`-Callback
|
||||
|
||||
Reference in New Issue
Block a user