[CHANGE] GEFAELLESTRECKE_LINIENZUG: AS/ES-Auswahl und Gefaellewinkel per Dialog statt Konsole (Teil B der GUI-Umstellung)
Zwei neue Dialoge (dcl/gefaellestrecke.dcl, Lisp/Gefaellestrecke.lsp): - gf-dialog-linienzug-aus-ein: AUS-/EIN-Element Winkel+Seite in EINEM Dialog, ersetzt die vier fruehen Konsolenfragen. Muss vor der Segmentlaengen-/Winkelberechnung laufen (haengt von AS-/ES-Masse ab), darum eigener, fruehzeitiger Dialog. - gf-dialog-linienzug-winkel: zeigt den automatisch aus der Segmentkette berechneten Gefaellewinkel-Vorschlag ueberschreibbar, mit kurzer Segment-Zusammenfassung und dem bereits gewaehlten AS/ES-Paar nur noch zur Kontrolle (disabled). Ersetzt zugleich die SPAETERE finale Einfuegen-Bestaetigung - nach der rein automatischen AS/ES-Korrekturschleife waere eine zweite Rueckfrage redundant. Objektauswahl (ssget LINE/ARC) und Start-/Endpunktwahl bleiben bewusst Zeichnung/Konsole. Rueckfall auf die alten Konsolenfragen bleibt erhalten, wenn ein Dialog nicht gezeigt werden kann/darf (GUI aus); ein bewusster Dialog-Abbruch bricht dagegen den ganzen Befehl ab statt auf Konsole zurueckzufallen - neu im Vergleich zum alten Verhalten, aber konsistent mit vfc_eingabemodus/vfs_nachruesten_hz aus Teil A/C. doc/variofoerderer.md (Abschnitt 4) aktualisiert und um einen bebilderten Beispiel-Walkthrough ergaenzt (gf-linienzug1-3.png: Ausgangslinie, Dialog mit Vorschlagswinkel, fertige Strecke neben der Original-Linie). Manuell in BricsCAD getestet (vollstaendiger Lauf inkl. Abbruch in beiden Dialogen) - laeuft. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -6,6 +6,14 @@
|
||||
// Eingaben entsprechen dem interaktiven Skript Gefaellestrecke.lsp:
|
||||
// Abstand deltaL, Gefaellewinkel, Fahrtrichtung,
|
||||
// Seite AUS-Element, Seite EIN-Element.
|
||||
//
|
||||
// gefaellestrecke_linienzug: Modus 3 (aus Linienzug LINE+ARC) - ersetzt die
|
||||
// Konsolenfragen AUS-/EIN-Element Winkel+Seite, Winkelbestaetigung und die
|
||||
// finale Einfuegen-Bestaetigung in EINEM Dialog (gf-dialog-linienzug in
|
||||
// Gefaellestrecke.lsp). Die Objektauswahl (ssget LINE/ARC) UND die
|
||||
// Start-/Endpunktwahl bleiben davor Zeichnung/Konsole - der automatisch
|
||||
// berechnete Vorschlagswinkel wird als Vorbelegung des Winkel-Feldes
|
||||
// gezeigt, mit einer kurzen Zusammenfassung der Segmentanalyse darueber.
|
||||
// ============================================================
|
||||
|
||||
gefaellestrecke : dialog {
|
||||
@@ -108,3 +116,64 @@ gefaellestrecke : dialog {
|
||||
|
||||
ok_cancel;
|
||||
}
|
||||
|
||||
// Modus 3 (aus Linienzug): AUS-/EIN-Element Winkel+Seite, Gefaellewinkel
|
||||
// (Vorschlag vorbelegt, ueberschreibbar) und eine kurze Zusammenfassung der
|
||||
// automatisch analysierten Segmentkette. "zusammenfassung" wird per
|
||||
// set_tile aus mehreren ssg-textf-Zeilen zusammengesetzt (gf-dialog-
|
||||
// linienzug, Gefaellestrecke.lsp) - sprachunabhaengig, nur das Label-Chrome
|
||||
// bleibt hart deutsch wie der Rest dieser Datei.
|
||||
gefaellestrecke_linienzug : dialog {
|
||||
label = "Gefaellestrecke aus Linienzug";
|
||||
|
||||
: column {
|
||||
|
||||
: boxed_column {
|
||||
label = "Segmentanalyse";
|
||||
: text { key = "zusammenfassung"; label = ""; width = 55; }
|
||||
}
|
||||
|
||||
: boxed_row {
|
||||
label = "AUS-Element";
|
||||
|
||||
: popup_list {
|
||||
key = "aus_winkel";
|
||||
label = "Winkel:";
|
||||
width = 12;
|
||||
}
|
||||
: popup_list {
|
||||
key = "aus_seite";
|
||||
label = "Seite:";
|
||||
width = 14;
|
||||
}
|
||||
}
|
||||
|
||||
: boxed_row {
|
||||
label = "EIN-Element";
|
||||
|
||||
: popup_list {
|
||||
key = "ein_winkel";
|
||||
label = "Winkel:";
|
||||
width = 12;
|
||||
}
|
||||
: popup_list {
|
||||
key = "ein_seite";
|
||||
label = "Seite:";
|
||||
width = 14;
|
||||
}
|
||||
}
|
||||
|
||||
: boxed_column {
|
||||
label = "Gefaellewinkel";
|
||||
|
||||
: edit_box {
|
||||
key = "winkel";
|
||||
label = "Gefaellewinkel (Grad):";
|
||||
edit_width = 10;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ok_cancel;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user