Claude und Readme aktualisiert

This commit is contained in:
2026-06-15 15:54:22 +02:00
parent 43aa34674f
commit 176b775050
2 changed files with 56 additions and 19 deletions
+2
View File
@@ -50,6 +50,8 @@ AutoLISP-Makros (SSG_LIB) fuer BricsCAD Pro zur automatisierten Erstellung von F
Nicht automatisch geladen (manuell/standalone):
- `menu-inventory.lsp` (BricsCAD Diagnostik: Menuegruppen, Plugins, LISP-Apps. Befehl: MenuInventory)
Detaillierte Dokumentation aller Funktionen und Befehle: siehe `Lisp/README.md`.
## AutoLISP-Module
| Datei | Befehle | Beschreibung |
+54 -19
View File
@@ -10,20 +10,20 @@ AutoLISP-Routinen für BricsCAD Pro zur automatisierten Erstellung von Förderan
(load "pfad/ssg_load.lsp")
```
Die Laderoutine lädt alle Module automatisch in der richtigen Reihenfolge:
Die Laderoutine laedt alle Module automatisch in der richtigen Reihenfolge:
1. `ssg_core.lsp` Kernbibliothek
2. `(ssg-load-config)` JSON-Konfiguration laden (aus `data/json/component_defaults.json`)
3. `ssg_dialog.lsp` Dialog-Patterns
4. `ssg_layer.lsp` Layer-Verwaltung
5. `VarioFoerderer.lsp` Vario-Förderer und Gefällestrecken-Basis
6. `Gefaellestrecke.lsp` Gefällestrecken-Generator (setzt VarioFoerderer voraus)
7. `export.lsp` Export-Funktionen (JSON-Sammler, Python-Export, Omniflo-Export)
8. `tests.lsp` Testbefehle (Python-Aufruf via CALLPYTHON)
9. `SSG_LIB_Commands.lsp` Dummy-Befehle für Menüeinträge
> **KreiselInsert.lsp** und **OmniModulInsert.lsp** sind nicht mehr im Ladevorgang
> sie wurden durch Python/PyRx-Module ersetzt (`lib/elemente/kreisel.py`, `eckrad.py`, `dblclick.py`).
3. `ssg_dbg.lsp` Debug-Logging (fuer alle nachfolgenden Module verfuegbar)
4. `ssg_dialog.lsp` Dialog-Patterns
5. `ssg_layer.lsp` Layer-Verwaltung
6. `KreiselInsert.lsp` ILS Kreisel und Eckrad
7. `VarioFoerderer.lsp` Vario-Foerderer und Gefaellestrecken-Basis
8. `Gefaellestrecke.lsp` Gefaellestrecken-Generator (setzt VarioFoerderer voraus)
9. `export.lsp` Export-Funktionen (JSON-Sammler, Python-Export, Omniflo-Export)
10. `tests.lsp` Testbefehle (Python-Aufruf via CALLPYTHON)
11. `OmniModulInsert.lsp` Omniflo-Komponenten (Boegen, Weichen, Verbinder, Edit)
12. `SSG_LIB_Commands.lsp` Dummy-Befehle fuer Menueintraege + SSG_BLOCKEDIT Dispatcher
---
@@ -262,29 +262,64 @@ Testbefehle für die Python-Integration. Export-Funktionen wurden in `export.lsp
---
### `KreiselInsert.lsp` ILS Kreisel (veraltet, nicht geladen)
### `KreiselInsert.lsp` ILS Kreisel und Eckrad
Ursprüngliche AutoLISP-Implementierung für ILS Kreisel und Eckrad. **Nicht mehr in `ssg_load.lsp` eingebunden** ersetzt durch `lib/elemente/kreisel.py` und `lib/elemente/eckrad.py` (PyRx). Die Datei bleibt als Referenz im Repository.
AutoLISP-Implementierung fuer ILS Kreisel und Eckrad. Enthaelt alle Befehle fuer Einfuegen, Verbinden, Neuzeichnen und Bearbeiten.
| Befehl | Beschreibung |
| --- | --- |
| `c:KreiselInsert` | Kreisel-Block an Punkt einfuegen (mit Dialog fuer Parameter) |
| `c:KreiselConnect` | Zwei Punkte waehlen, Kreisel dazwischen einfuegen |
| `c:KreiselRedraw` | Bestehenden Kreisel mit neuen Parametern neu zeichnen |
| `c:KreiselQuick` | Schnelleinfuegung mit Standardwerten |
| `c:KreiselEdit` | Kreisel-Attribute ueber DCL-Dialog bearbeiten |
| `c:KreiselParams` | Aktuelle Kreisel-Parameter anzeigen |
| `c:KreiselLabelSetup` | Schriftart, Hoehe und Farbe fuer Kreisel-Beschriftung konfigurieren |
| `c:KreiselLabelPos` | Label-Offset (dx/dy) setzen |
| `c:KreiselLabelHoehe` | Label-Hoehe aendern |
| `c:ILS_Eckrad` | Eckrad an Tangentenpunkt einfuegen |
---
### `OmniModulInsert.lsp` Omniflo-Einfügung (veraltet, nicht geladen)
### `OmniModulInsert.lsp` Omniflo-Komponenten
AutoLISP-Implementierung für Omniflo Bögen und Weichen. **Nicht mehr in `ssg_load.lsp` eingebunden** wurde durch Python/PyRx abgelöst. Alle Konstanten waren bereits auf `ssg-cfg-or` umgestellt. Die Datei bleibt als Referenz im Repository.
AutoLISP-Implementierung fuer alle Omniflo-Komponenten: Boegen, Weichen, Verbinder, Transferwagen. Liest JSON-Daten aus `omniflo_boegen.json` und `omniflo_weichen.json`. Alle Konstanten via `ssg-cfg-or` aus Config.
| Befehlsgruppe | Befehle | Beschreibung |
| --- | --- | --- |
| Daten | `OMNI_LOAD`, `OMNI_INFO_BOGEN`, `OMNI_INFO_WEICHE` | JSON-Daten laden und abfragen |
| Boegen | `OMNI_APB_630_90`, `OMNI_APB_550_675`, `OMNI_APB_630_45`, `OMNI_APB_550_225`, `OMNI_APB_650_180` | Omniflo-Boegen ueber DCL-Dialog einfuegen |
| Weichen | `OMNI_W90_*`, `OMNI_W45_*`, `OMNI_WP_*`, `OMNI_WK_*`, `OMNI_WKomb_*` | Omniflo-Weichen (Einfach/Doppel/Dreiwege, Delta, Stern) |
| Geraden | `OMNI_AP60`, `OMNI_AP110`, `OMNI_APG110` | Omniflo-Geradenstuecke |
| TEF | `OMNI_TEF_UmlenkR/L`, `OMNI_TEF_AntriebL/R`, `OMNI_TEF_Gerade` | Omniflo-TEF-Elemente |
| Transferwagen | `OMNI_TV_*` | Transferwagen-Komponenten und Schaltwerke |
| Bogenweichen | `OMNI_APBW_*` | Omniflo-Bogenweichen (diverse Radien/Winkel) |
| Bearbeiten | `OMNI_EDIT` | Omniflo-Block selektieren und Attribute bearbeiten |
---
### `SSG_LIB_Commands.lsp` Dummy-Befehle für das SSG-Menü
### `SSG_LIB_Commands.lsp` Dummy-Befehle und SSG_BLOCKEDIT
Platzhalter-Definitionen für noch nicht implementierte Menüeinträge. Gibt beim Aufruf eine Meldung aus.
Platzhalter-Definitionen fuer noch nicht implementierte Menueintraege. Gibt beim Aufruf eine Meldung aus.
Registrierte Dummy-Befehle:
| Gruppe | Befehle |
| --- | --- |
| ILS Zusatzmodule | `ILS_BTMT_Beladung`, `ILS_BTMT_Entladung`, `ILS_ETF_Etagenfoerderer`, `ILS_TEF_Strecke` |
| ILS Kurven angetrieben Außen | `ILS_K90LA`, `ILS_K90RA`, `ILS_K60LA`, `ILS_K60RA`, `ILS_K30LA`, `ILS_K30RA` |
| ILS Kurven angetrieben Aussen | `ILS_K90LA`, `ILS_K90RA`, `ILS_K60LA`, `ILS_K60RA`, `ILS_K30LA`, `ILS_K30RA` |
| ILS Kurven angetrieben Innen | `ILS_K90LI`, `ILS_K90RI`, `ILS_K60LI`, `ILS_K60RI`, `ILS_K30LI`, `ILS_K30RI` |
| ILS Gefällestrecken-Kurven | `ILS_Gefaellestrecke`, `ILS_GK90L`, `ILS_GK90R`, `ILS_GK60L`, `ILS_GK60R`, `ILS_GK30L`, `ILS_GK30R` |
| ILS Gefaellestrecken-Kurven | `ILS_Gefaellestrecke`, `ILS_GK90L`, `ILS_GK90R`, `ILS_GK60L`, `ILS_GK60R`, `ILS_GK30L`, `ILS_GK30R` |
> `FOERDERANLAGE` ist nicht hier definiert dieser Befehl ist in `VarioFoerderer.lsp` implementiert.
**SSG_BLOCKEDIT** Doppelklick/Kontextmenue-Dispatcher:
Erkennt den Blocktyp des selektierten INSERT-Blocks und ruft den passenden Bearbeitungsbefehl auf:
| Blockmuster | Aktion |
| --- | --- |
| `KREISEL_*` | `KreiselEdit` |
| `ECKRAD_*` | `BEDIT` (Block-Editor) |
| Omniflo (TEILEART-Attribut, AP110*, numerisch) | `OMNI_EDIT` |
| Sonstige | `BEDIT` (Block-Editor) |