[CHANGE] Streckengruppe-Menue in Werte-manuell/Zielhoehe/Stueckweise aufgeteilt, QC-Linien unter Gefaellestrecke verschoben, Linienzug-Wizard "Naechstes Element" neu sortiert (GF vor VF) mit eigenem Abschliessen-Knopf statt Kettenende-Radio

Lisp/vf_core.lsp: fuenf eigene Menue-Wrapper (LinienzugVarioFoerdererManuell/-Zielhoehe/-Stueckweise, QcLinieMitGf/-UForm) ersetzen den alten interaktiven Modus-Dialog; vfc-dialog-linienzug-modus-waehlen entfaellt.
dcl/vf_linienzug_wizard.dcl + Lisp/vf_linienzug.lsp: "Neue Linie BIS Kettenende" ist kein Radio mehr, sondern eigener Button "OK und Abschliessen" neben "Ok Weiter"; GF-Optionen stehen vor VF-Optionen.
Menue (SSG_LIB.mnu/.cui), lang/*.json, doc/kommandos.md, doc/lisp_methods.md, doc/faq.md nachgezogen.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-10-08 12:44:36 +02:00
parent 1e2e28e532
commit 823dc6728d
13 changed files with 4935 additions and 4276 deletions
+30 -1
View File
@@ -136,6 +136,12 @@ Durch einen Doppelklick auf den Kreisel und der Eingabe des neuen Abstands im Be
## 2. Gefällestrecke
- einfach
- aus 3D Linie
- aus Linienzug
- QC mit 30 Grad ES/AS
- QC mit 90 Grad ES/AS
### 2.1 Zusammensetzung, Abhängigkeiten, Randbedingungen
#### Zusammensetzung einer Gefällestrecke
@@ -187,6 +193,29 @@ Durch einen Doppelklick auf die Gefällestrecke und Eingabe der neuen Länge im
## 3. Varioförderer
Varioförderer können auf verschiedene Arten gebaut werden:
1. Standard
2. Etage
3. Variabel
- Manuelle Eingabe
- 3D-OBjekte mit Ziel-höhe
- 3D Objekte Stückweise (wird gerade noch implementiert bzw. ist expirementell)
Der **"Standard Förderer"** ist die Verbindung von zwei Kreiseln mit einem definierten Abstand und (wenn nötig) einer Höhendifferenz. (z.B. für eine Umschleusung in einem Gefällepuffer)
Ein **Etagenförderer** hat 30° Aussschleuselemente und wird verwendet, um zwei Kreisel über eine Etage zu verbinden. Diese beiden Kreisel müssen dabei übereinander liegen.
Standard und Etage können aufgerufen werden mit _"Werte manuell"_ oder _"3D - Linie"_.
- Bei "Werte Manuell" definiert man den Verlauf durch Höhe und Länge über die Eingabe in einer Oberfläche.
- bei "3D Linie" ist die Auswahl einer Gerade im Raum möglich. Damit wird Richtung, Länge und Höhendifferenz angegeben. Dadurch werden diese Werte in die Oberfläche übernommen. Der beliebige Winkel in der Ebene kann durch die Linie festgelegt werden und ist nicht auf die Raster 0,90,270 Grad festgelegt
Die **Variablen Förderer** könne auf drei verschiedene Arten definiert werden:
- die manuelle Eingabe frägt nach der Definition des AS Elementes ab, ob man abwechselnd eine GF oder einen VF definieren möchte. Mit einem Knopf unten kann man den Assistenten abschliessen und das ES erzeugen
- Eine 3D Linie muss aus Geraden und Bögen (Winkel 30° mit dem Radius 500mm) bestehen. Wenn eine 3D Linie für Verlauf mit der korrekten Zielhöhe existiert, kann man iterativ die Einzelelemente (oder auch mehrere) dieser Einzellinien Linie anwählen, um den nächsten Förderer oder den nöchsten Gefälle-Anteil zu definieren.
### 3.1 Zusammensetzung, Abhängigkeiten, Randbedingungen
#### Zusammensetzung eines Varioförderer mit allen möglichen Komponenten
@@ -229,7 +258,7 @@ Unter *ILS -> Foerderer* stehen folgende Einfügemodi zur Verfügung:
- **Standard -> Werte manuell**: alle Werte (Längen, Winkel, Höhen) werden über einen Dialog abgefragt.
- **Standard -> aus 3D-Linie**: wie Standard, aber entlang einer vorgezeichneten 3D-Linie.
- **Etage -> Werte manuell** / **Etage -> aus 3D-Linie**: wie Standard, jedoch mit Etagen-Schrägsektion/-Bögen statt gerader AS-/ES-Elemente.
- **3D-Linienzug**: frei aus der Zeichnung gebaute Kette, Schritt für Schritt über Dialoge/Konsole abgefragt (AS-Element, Bögen, Vario-Kurven, horizontale/geneigte Abschnitte, ES-Element).
- **Streckengruppe**: frei aus der Zeichnung gebaute Kette, Schritt für Schritt über Dialoge/Konsole abgefragt (AS-Element, Bögen, Vario-Kurven, horizontale/geneigte Abschnitte, ES-Element).
![Variofoerderer dialog1](images/vf-gui1.png)
*Abbildung: Varioförderer Dialog zur Erzeugung*
+4742 -4120
View File
File diff suppressed because it is too large Load Diff
+5 -1
View File
@@ -48,7 +48,11 @@ Gross-/Kleinschreibung spielt an der Kommandozeile keine Rolle.
| `StandardVarioFoerderer3D` | Standardtyp aus einer gewaehlten 3D-Linie |
| `EtageVarioFoerderer` | Etagentyp (AS/ES 30 Grad), Werte per DCL-Dialog |
| `EtageVarioFoerderer3D` | Etagentyp aus einer gewaehlten 3D-Linie |
| `LinienzugVarioFoerderer` | Linienzug, fragt Modus 1/2/3 ab |
| `LinienzugVarioFoerdererManuell` | Streckengruppe, Modus 1 (manuelle Eingabe, Punkte klicken) |
| `LinienzugVarioFoerdererZielhoehe` | Streckengruppe, Modus 2 (3D-Objekte + Ziel-Hoehe, Randwert-Solver) |
| `LinienzugVarioFoerdererStueckweise` | Streckengruppe, Modus 3 (3D-Objekte stueckweise, in Arbeit) |
| `QcLinieMitGf` | Streckengruppe Modus 4 (QC-Linie mit GF, automatische Auf-Ab-Berechnung); Menue unter Gefaellestrecke |
| `QcLinieMitGfUForm` | Streckengruppe Modus 5 (QC-Linie mit GF und U-Form); Menue unter Gefaellestrecke |
| `VARIOFOERDERER_EDIT` | VF_n-Block editieren (dispatcht per XDATA-Marker auf Standard/Etage/Linienzug); auch per Doppelklick |
| `VARIOFOERDERER_NACHRUESTEN` / `VF_NACHRUESTEN` | Altbestand-VF_n-Bloecke ohne `SSG_VF_EDIT`-Marker editierbar machen |
| `Vario_Kette_Merge` | Mehrere einzeln gebaute VF_n-Bloecke ab einem Start-Baustein zu einem Gesamt-Block zusammenfuehren |
+1 -1
View File
@@ -23,7 +23,7 @@ Einheiten: mm und Grad. `hz` = Fahrtrichtung in der XY-Ebene, 0 = +X,
| Eckrad | `ILS_Eckrad` | `ils-eckrad-insert` | `ECKRAD_n` | `KreiselInsert.lsp` |
| VF Standard | `StandardVarioFoerderer`, `FOERDERANLAGE` | `berechne-standard` + `variofoerderer-einfuegen` + `vf-block-erstellen` | `VF_n` | `vf_standard.lsp`, `vf_core.lsp` |
| VF Etage | `EtageVarioFoerderer` | `berechne-etage` + `etage-foerderanlage-einfuegen` + `vf-block-erstellen` | `VF_n` | `vf_etage.lsp`, `vf_core.lsp` |
| VF Linienzug | `LinienzugVarioFoerderer` | `vsp-bau-aus-spec` (Spec) bzw. `vfl-journal-replay-start` + `vf-linienzug-modus` | `VF_n` | `vf_linienzug.lsp`, `vf_spec.lsp` |
| VF Linienzug | `LinienzugVarioFoerdererManuell`/`-Zielhoehe`/`-Stueckweise`, `QcLinieMitGf`/`-UForm` | `vsp-bau-aus-spec` (Spec) bzw. `vfl-journal-replay-start` + `vf-linienzug-modus` | `VF_n` | `vf_linienzug.lsp`, `vf_spec.lsp` |
| Gefaellestrecke | `GEFAELLESTRECKE_EINFACH`/`_3DLINIE` | `gf-rebuild` bzw. `gefaellestrecke-einfuegen` | `GF_n` | `Gefaellestrecke.lsp` |
| Gefaellestrecke Linienzug | `GEFAELLESTRECKE_LINIENZUG` | - (nur interaktiv; Kern `gf-linienzug-einfuegen` braucht analysierte Segmente) | `GF_n` | `Gefaellestrecke.lsp` |
| Separator, Scanner | `ILS_SEPARATOR_INSERT`, `ILS_SCANNER_INSERT` | - (Schleife mit `getpoint`); Kern: `ssg-ils-block-laden` + `_.INSERT` | Einzelblock | `SSG_LIB_Commands.lsp`, `ssg_core.lsp` |