From 63e4e9ef326c5aef477f69d30bde14cdeb4c2086 Mon Sep 17 00:00:00 2001 From: Simon Hensch Date: Wed, 22 Jul 2026 08:07:24 +0200 Subject: [PATCH] =?UTF-8?q?[FIX]=20Weichentyp=20im=20json=20f=C3=BCr=20die?= =?UTF-8?q?=20dynamische=20Erzeugung=20der=20Oberfl=C3=A4che=20f=C3=BCr=20?= =?UTF-8?q?Deltaweichen=20korrigiert;=20[CHANGE]=20Drehung=20der=20Omniflo?= =?UTF-8?q?=20Objekte=20wird=20nun=20interaktiv=20durch=20den=20Benutzer?= =?UTF-8?q?=20angegeben=20wie=20zuvor=20in=20Bihler?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Lisp/OmniModulInsert.lsp | 110 +++++++----- README.md | 5 +- data/json/omniflo_weichen.json | 12 +- dcl/omniflo_boegen.dcl | 5 - dcl/omniflo_weichen.dcl | 5 - menu/SSG_LIB.cui | 306 +++++++++++++++++---------------- menu/SSG_LIB.mnu | 3 +- 7 files changed, 241 insertions(+), 205 deletions(-) diff --git a/Lisp/OmniModulInsert.lsp b/Lisp/OmniModulInsert.lsp index 97e374e..b20c3cc 100644 --- a/Lisp/OmniModulInsert.lsp +++ b/Lisp/OmniModulInsert.lsp @@ -332,12 +332,13 @@ ;; z.B. "APB 60" oder "APB 110" (nil = keine Einschraenkung) ;; Rueckgabe: (eintrag hoehe drehung) oder nil bei Abbruch (defun omni:bogen-dialog (winkel init-hoehe init-drehung profiltyp / dcl-pfad dat boegen-liste - profil-liste ergebnis dlg-hoehe dlg-drehung profil) + profil-liste ergebnis dlg-hoehe profil) (if (null *OMNI-BOEGEN*) (omni:load-data)) ;; Defaults + ;; Hinweis: init-drehung wird nicht mehr verwendet - die Drehung wird nach + ;; dem Einfuegen interaktiv abgefragt (omni:insert-dxf mit drehung=nil). (if (null init-hoehe) (setq init-hoehe (ssg-cfg-or "omniflo" "default_hoehe" "2000"))) - (if (null init-drehung) (setq init-drehung (ssg-cfg-or "omniflo" "default_drehung" "0"))) ;; Boegen nach Winkel filtern (setq boegen-liste (omni:filter *OMNI-BOEGEN* "KurvenWinkel" winkel)) @@ -388,9 +389,8 @@ (end_list) (set_tile "bogenart" "0") - ;; Hoehe und Drehung initialisieren + ;; Hoehe initialisieren (Drehung erfolgt interaktiv nach dem Einfuegen) (set_tile "val_hoehe" init-hoehe) - (set_tile "val_drehung" init-drehung) ;; Startwerte anzeigen (omni:bogen-dlg-update "0") @@ -403,16 +403,15 @@ (strcat "(setq ergebnis (atoi (get_tile \"bogenart\")))" "(setq dlg-hoehe (get_tile \"val_hoehe\"))" - "(setq dlg-drehung (get_tile \"val_drehung\"))" "(done_dialog 1)")) (action_tile "cancel" "(done_dialog 0)") (start_dialog) (unload_dialog dat) - ;; Gewaehlten Eintrag mit Hoehe/Drehung zurueckgeben + ;; Gewaehlten Eintrag mit Hoehe zurueckgeben (drehung=nil -> interaktiv) (if ergebnis - (list (nth ergebnis *OMNI-DLG-BOEGEN*) dlg-hoehe dlg-drehung) + (list (nth ergebnis *OMNI-DLG-BOEGEN*) dlg-hoehe nil) nil ) ) @@ -766,13 +765,14 @@ ;; weichentyp = "Einzelweiche", "Doppelweiche", "Dreiwegeweiche" oder nil fuer alle ;; init-hoehe / init-drehung = Vorbelegung (optional, fuer Edit-Modus) ;; Rueckgabe: (eintrag hoehe drehung) oder nil bei Abbruch -(defun omni:weichen-dialog (winkel weichentyp init-hoehe init-drehung / dcl-pfad dat basis-liste - profil-liste ergebnis dlg-hoehe dlg-drehung) +(defun omni:weichen-dialog (winkel weichentyp init-hoehe init-drehung breite / dcl-pfad dat basis-liste + profil-liste ergebnis dlg-hoehe) (if (null *OMNI-WEICHEN*) (omni:load-data)) ;; Defaults + ;; Hinweis: init-drehung wird nicht mehr verwendet - die Drehung wird nach + ;; dem Einfuegen interaktiv abgefragt (omni:insert-dxf mit drehung=nil). (if (null init-hoehe) (setq init-hoehe (ssg-cfg-or "omniflo" "default_hoehe" "2000"))) - (if (null init-drehung) (setq init-drehung (ssg-cfg-or "omniflo" "default_drehung" "0"))) ;; Weichen nach Winkel filtern (nil = alle Winkel) (if winkel @@ -788,6 +788,14 @@ basis-liste)) ) + ;; Optional nach Breite filtern (z.B. Weichenkombinationen Delta 1400/700 vs. 1600/800) + (if breite + (setq basis-liste + (vl-remove-if-not + '(lambda (e) (= (cdr (assoc "Breite" e)) breite)) + basis-liste)) + ) + (if (null basis-liste) (progn (alert (ssg-textf "omni-weiche-keine-gefunden" @@ -823,9 +831,8 @@ (end_list) (set_tile "profiltyp" "0") - ;; Hoehe und Drehung initialisieren + ;; Hoehe initialisieren (Drehung erfolgt interaktiv nach dem Einfuegen) (set_tile "val_hoehe" init-hoehe) - (set_tile "val_drehung" init-drehung) ;; Startwerte anzeigen (omni:weichen-dlg-update "0") @@ -846,16 +853,15 @@ (strcat "(setq ergebnis (atoi (get_tile \"profiltyp\")))" "(setq dlg-hoehe (get_tile \"val_hoehe\"))" - "(setq dlg-drehung (get_tile \"val_drehung\"))" "(done_dialog 1)")) (action_tile "cancel" "(done_dialog 0)") (start_dialog) (unload_dialog dat) - ;; Gewaehlten Eintrag mit Hoehe/Drehung zurueckgeben + ;; Gewaehlten Eintrag mit Hoehe zurueckgeben (drehung=nil -> interaktiv) (if ergebnis - (list (nth ergebnis *OMNI-DLG-WEICHEN*) dlg-hoehe dlg-drehung) + (list (nth ergebnis *OMNI-DLG-WEICHEN*) dlg-hoehe nil) nil ) ) @@ -876,7 +882,7 @@ ;; hoehe = Hoehe in mm als String (wird als HOEHE-Attribut gesetzt) ;; drehung = Drehwinkel in Grad als String (Block-Rotation) ;; Rueckgabe: Einfuegepunkt oder nil bei Abbruch -(defun omni:insert-dxf (sivasnr-str hoehe drehung / dxf-pfad omniflo-pfad pt angleDeg winkel-rad drehung-anzeige blockEnt attribs layer-name) +(defun omni:insert-dxf (sivasnr-str hoehe drehung / dxf-pfad omniflo-pfad pt angleDeg drehung-anzeige blockEnt attribs layer-name) (setq omniflo-pfad (getenv "DXFM_OMNIFLO")) (if (null omniflo-pfad) (progn @@ -899,17 +905,15 @@ (setvar "ATTREQ" 0) (setvar "ATTDIA" 0) - ;; Drehwinkel aus Dialog uebernehmen, sonst interaktiv am Einfuegepunkt abfragen + ;; Drehwinkel aus Dialog uebernehmen, sonst zunaechst ungedreht + ;; einfuegen und den Winkel erst nach dem Einfuegen abfragen + ;; (Nutzer kann die Orientierung am eingefuegten Objekt erkennen) (if drehung (progn (setq angleDeg (atof drehung)) (setq drehung-anzeige drehung) ) - (progn - (setq winkel-rad (getangle pt (ssg-text "omni-prompt-drehwinkel"))) - (setq angleDeg (if winkel-rad (* winkel-rad (/ 180.0 pi)) 0.0)) - (setq drehung-anzeige (rtos angleDeg 2 1)) - ) + (setq angleDeg 0.0) ) ;; Hoehe als Z-Koordinate auf den Einfuegepunkt anwenden @@ -930,6 +934,23 @@ (setq blockEnt (entlast)) + ;; Drehwinkel interaktiv abfragen: ROTATE-Befehl mit der Entity + ;; und Basispunkt starten, dann per 'pause' die Winkeleingabe dem + ;; Nutzer ueberlassen (Objekt dreht sich beim Ziehen sichtbar mit). + ;; WICHTIG: Ohne 'pause' wuerde die nachfolgende CMDACTIVE-Schleife + ;; die Winkelabfrage sofort mit "" (=0 Grad) beenden. + (if (and (null drehung) blockEnt (= (cdr (assoc 0 (entget blockEnt))) "INSERT")) + (progn + (command "_.ROTATE" blockEnt "" pt pause) + (while (> (getvar "CMDACTIVE") 0) (command pause)) + (setq angleDeg (* (cdr (assoc 50 (entget blockEnt))) (/ 180.0 pi))) + (setq drehung-anzeige (rtos angleDeg 2 1)) + ) + ) + (if (null drehung-anzeige) + (setq drehung-anzeige (rtos angleDeg 2 1)) + ) + (if (and blockEnt (= (cdr (assoc 0 (entget blockEnt))) "INSERT")) (progn ;; HOEHE und DREHUNG Attribute setzen @@ -996,7 +1017,7 @@ ;; --- Omniflo / Weiche 90 Grad --- (defun c:OMNI_W90_Einfach ( / dlg-result) - (setq dlg-result (omni:weichen-dialog 90 "Einzelweiche" nil nil)) + (setq dlg-result (omni:weichen-dialog 90 "Einzelweiche" nil nil nil)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1005,7 +1026,7 @@ ) (defun c:OMNI_W90_Doppel ( / dlg-result) - (setq dlg-result (omni:weichen-dialog 90 "Doppelweiche" nil nil)) + (setq dlg-result (omni:weichen-dialog 90 "Doppelweiche" nil nil nil)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1014,7 +1035,7 @@ ) (defun c:OMNI_W90_Dreiwege ( / dlg-result) - (setq dlg-result (omni:weichen-dialog 90 "Dreiwegeweiche" nil nil)) + (setq dlg-result (omni:weichen-dialog 90 "Dreiwegeweiche" nil nil nil)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1024,7 +1045,7 @@ ;; --- Omniflo / Weiche 45 Grad --- (defun c:OMNI_W45_Einfach ( / dlg-result) - (setq dlg-result (omni:weichen-dialog 45 "Einzelweiche" nil nil)) + (setq dlg-result (omni:weichen-dialog 45 "Einzelweiche" nil nil nil)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1033,7 +1054,7 @@ ) (defun c:OMNI_W45_Doppel ( / dlg-result) - (setq dlg-result (omni:weichen-dialog 45 "Doppelweiche" nil nil)) + (setq dlg-result (omni:weichen-dialog 45 "Doppelweiche" nil nil nil)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1042,7 +1063,7 @@ ) (defun c:OMNI_W45_Dreiwege ( / dlg-result) - (setq dlg-result (omni:weichen-dialog 45 "Dreiwegeweiche" nil nil)) + (setq dlg-result (omni:weichen-dialog 45 "Dreiwegeweiche" nil nil nil)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1052,7 +1073,7 @@ ;; --- Omniflo / Weichen Parallel --- (defun c:OMNI_WP_Einfach ( / dlg-result) - (setq dlg-result (omni:weichen-dialog 0 "Einzelweiche" nil nil)) + (setq dlg-result (omni:weichen-dialog 0 "Einzelweiche" nil nil nil)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1061,7 +1082,7 @@ ) (defun c:OMNI_WP_Doppel ( / dlg-result) - (setq dlg-result (omni:weichen-dialog 0 "Doppelweiche" nil nil)) + (setq dlg-result (omni:weichen-dialog 0 "Doppelweiche" nil nil nil)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1070,7 +1091,7 @@ ) (defun c:OMNI_WP_Dreiwege ( / dlg-result) - (setq dlg-result (omni:weichen-dialog 0 "Dreiwegeweiche" nil nil)) + (setq dlg-result (omni:weichen-dialog 0 "Dreiwegeweiche" nil nil nil)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1080,7 +1101,7 @@ ;; --- Omniflo / Weichenkoerper --- (defun c:OMNI_WK_Einfach ( / dlg-result) - (setq dlg-result (omni:weichen-dialog 22.5 "Einzelweiche" nil nil)) + (setq dlg-result (omni:weichen-dialog 22.5 "Einzelweiche" nil nil nil)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1089,7 +1110,7 @@ ) (defun c:OMNI_WK_Doppel ( / dlg-result) - (setq dlg-result (omni:weichen-dialog 22.5 "Doppelweiche" nil nil)) + (setq dlg-result (omni:weichen-dialog 22.5 "Doppelweiche" nil nil nil)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1098,7 +1119,7 @@ ) (defun c:OMNI_WK_Dreiwege ( / dlg-result) - (setq dlg-result (omni:weichen-dialog 22.5 "Dreiwegeweiche" nil nil)) + (setq dlg-result (omni:weichen-dialog 22.5 "Dreiwegeweiche" nil nil nil)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1107,8 +1128,17 @@ ) ;; --- Omniflo / Weichenkombinationen --- -(defun c:OMNI_WKomb_Delta ( / dlg-result) - (setq dlg-result (omni:weichen-dialog nil "Deltaweiche" nil nil)) +(defun c:OMNI_WKomb_Delta_1400 ( / dlg-result) + (setq dlg-result (omni:weichen-dialog nil "Deltaweiche" nil nil 1400)) + (if dlg-result + (omni:insert-from-entry dlg-result) + (princ (ssg-text "omni-abbruch-weiche")) + ) + (princ) +) + +(defun c:OMNI_WKomb_Delta_1600 ( / dlg-result) + (setq dlg-result (omni:weichen-dialog nil "Deltaweiche" nil nil 1600)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1117,7 +1147,7 @@ ) (defun c:OMNI_WKomb_Star ( / dlg-result) - (setq dlg-result (omni:weichen-dialog nil "Sternweiche" nil nil)) + (setq dlg-result (omni:weichen-dialog nil "Sternweiche" nil nil nil)) (if dlg-result (omni:insert-from-entry dlg-result) (princ (ssg-text "omni-abbruch-weiche")) @@ -1230,7 +1260,7 @@ (progn (setq winkel (cdr (assoc "KurvenWinkel" eintrag))) (setq weichentyp (cdr (assoc "WeichenTyp" eintrag))) - (setq dlg-result (omni:weichen-dialog winkel weichentyp hoehe drehung)) + (setq dlg-result (omni:weichen-dialog winkel weichentyp hoehe drehung nil)) ) ) @@ -1239,9 +1269,11 @@ ) ;; 5. Neuen Eintrag und Werte extrahieren + ;; Drehung: Dialog liefert keine Drehung mehr (interaktiv beim Neu-Einfuegen); + ;; beim Edit wird die bestehende Blockdrehung beibehalten (in-place Neuaufbau). (setq new-eintrag (car dlg-result)) (setq new-hoehe (cadr dlg-result)) - (setq new-drehung (caddr dlg-result)) + (setq new-drehung (or (caddr dlg-result) drehung)) (setq sivasnr-str (omni:sivasid-to-str (omni:val new-eintrag "Sivasnr"))) ;; 6. DXF-Datei pruefen diff --git a/README.md b/README.md index 91ae4eb..efc85ec 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,8 @@ SSG_LIB │ │ ├── Doppel → OMNI_WK_Doppel │ │ └── Dreiwege → OMNI_WK_Dreiwege │ ├── Weichenkombinationen -│ │ ├── Delta → OMNI_WKomb_Delta +│ │ ├── Delta 1400/700 → OMNI_WKomb_Delta_1400 +│ │ ├── Delta 1600/800 → OMNI_WKomb_Delta_1600 │ │ └── Star → OMNI_WKomb_Star │ ├── TEF Elemente │ │ ├── Umlenkspannst. rechts → OMNI_TEF_UmlenkR @@ -99,7 +100,7 @@ Einfuegen von Omniflo-Standardkomponenten (Boegen, Geraden, Weichen, TEF-Element | `OMNI_APB_*` | Boegen einfuegen (90, 67.5, 45, 22.5, 180 Grad) | | `OMNI_AP60/AP110/APG110` | Aluprofil-Geraden einfuegen | | `OMNI_W90/W45/WP/WK_*` | Weichen einfuegen (Einfach, Doppel, Dreiwege) | -| `OMNI_WKomb_Delta/Star` | Weichenkombinationen einfuegen | +| `OMNI_WKomb_Delta_1400/1600, OMNI_WKomb_Star` | Weichenkombinationen einfuegen | | `OMNI_TEF_*` | TEF-Elemente einfuegen (Umlenk-/Antriebsstationen, Gerade) | | `OMNI_KettenFoerderer` | Kettenfoerderer einfuegen | diff --git a/data/json/omniflo_weichen.json b/data/json/omniflo_weichen.json index fbfb5ce..19b4c5e 100644 --- a/data/json/omniflo_weichen.json +++ b/data/json/omniflo_weichen.json @@ -732,7 +732,7 @@ { "Sivasnr": 834372400, "ProfilTyp": "WEICHE S C DELTA 1400/700, KPL. M", - "WeichenTyp": "Dreifachweiche", + "WeichenTyp": "Deltaweiche", "KurvenWinkel": 90, "Schaltungstyp": "M", "Breite": 1400, @@ -756,7 +756,7 @@ { "Sivasnr": 834372403, "ProfilTyp": "WEICHE S C DELTA 1600/800, KPL. M", - "WeichenTyp": "Dreifachweiche", + "WeichenTyp": "Deltaweiche", "KurvenWinkel": 90, "Schaltungstyp": "M", "Breite": 1600, @@ -768,7 +768,7 @@ { "Sivasnr": 834372404, "ProfilTyp": "WEICHE S C DELTA 1600/800, KPL. P", - "WeichenTyp": "Dreifachweiche", + "WeichenTyp": "Deltaweiche", "KurvenWinkel": 90, "Schaltungstyp": "P", "Breite": 1600, @@ -780,7 +780,7 @@ { "Sivasnr": "0_BG071090+834372404+0_BG071090", "ProfilTyp": "WEICHE S C DELTA 1600/800, KPL. MIT P mit TEF beideseitig", - "WeichenTyp": "Dreifachweiche", + "WeichenTyp": "Deltaweiche", "KurvenWinkel": 90, "Schaltungstyp": "P", "Breite": 1600, @@ -792,7 +792,7 @@ { "Sivasnr": "0_BG071090+834372404", "ProfilTyp": "WEICHE S C DELTA 1600/800, KPL. MIT P mit TEF links", - "WeichenTyp": "Dreifachweiche", + "WeichenTyp": "Deltaweiche", "KurvenWinkel": 90, "Schaltungstyp": "P", "Breite": 1600, @@ -804,7 +804,7 @@ { "Sivasnr": "834372404+0_BG071090", "ProfilTyp": "WEICHE S C DELTA 1600/800, KPL. MIT P mit TEF rechts", - "WeichenTyp": "Dreifachweiche", + "WeichenTyp": "Deltaweiche", "KurvenWinkel": 90, "Schaltungstyp": "P", "Breite": 1600, diff --git a/dcl/omniflo_boegen.dcl b/dcl/omniflo_boegen.dcl index 2cec590..c9eb2e3 100644 --- a/dcl/omniflo_boegen.dcl +++ b/dcl/omniflo_boegen.dcl @@ -56,11 +56,6 @@ omniflo_boegen : dialog { label = "Hoehe (mm):"; edit_width = 10; } - : edit_box { - key = "val_drehung"; - label = "Drehung (Grad):"; - edit_width = 10; - } } ok_cancel; diff --git a/dcl/omniflo_weichen.dcl b/dcl/omniflo_weichen.dcl index 86b7e51..b29c9ca 100644 --- a/dcl/omniflo_weichen.dcl +++ b/dcl/omniflo_weichen.dcl @@ -67,11 +67,6 @@ omniflo_weichen : dialog { label = "Hoehe (mm):"; edit_width = 10; } - : edit_box { - key = "val_drehung"; - label = "Drehung (Grad):"; - edit_width = 10; - } } ok_cancel; diff --git a/menu/SSG_LIB.cui b/menu/SSG_LIB.cui index 8515491..afd5602 100644 --- a/menu/SSG_LIB.cui +++ b/menu/SSG_LIB.cui @@ -335,364 +335,370 @@ Delta 1400/700 M - ^C^C(ssg-ensure "OmniModulInsert") OMNI_WKomb_Delta + ^C^C(ssg-ensure "OmniModulInsert") OMNI_WKomb_Delta_1400 + + Delta 1600/800 M + ^C^C(ssg-ensure "OmniModulInsert") OMNI_WKomb_Delta_1600 + + + Star 1400/1400 M ^C^C(ssg-ensure "OmniModulInsert") OMNI_WKomb_Star - + TEF Antriebst. rechts ^C^C(ssg-ensure "OmniModulInsert") OMNI_TEF_AntriebR - + TEF Umlenkspannst. rechts ^C^C(ssg-ensure "OmniModulInsert") OMNI_TEF_UmlenkR - + TEF Antriebst. links ^C^C(ssg-ensure "OmniModulInsert") OMNI_TEF_AntriebL - + TEF Umlenkspannst. links ^C^C(ssg-ensure "OmniModulInsert") OMNI_TEF_UmlenkL - + TEF Gerade auf Linie ^C^C(ssg-ensure "TEFInsert") TEF_FOERDERER_LINIE - + TEF Gerade ^C^C(ssg-ensure "OmniModulInsert") OMNI_TEF_Gerade - + Stopper AP ^C^C(ssg-ensure "OmniModulInsert") OMNI_STOPPER - + Scanner ^C^C(ssg-ensure "OmniModulInsert") OMNI_SCANNER - + Bürstenbremse ^C^C(ssg-ensure "OmniModulInsert") OMNI_BUERSTENBREMSE - + KettenFoerderer ^C^C(ssg-ensure "OmniModulInsert") OMNI_KettenFoerderer - + TV W-W kpl ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_W_W - + TV W-AP110 kpl ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_W_AP110 - + TV W-AP60 oben kpl. ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_W_AP60 - + TV W-AP110-W kpl ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_W_AP110_W - + TV W-AP oben kpl ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_W_AP - + TV 80 ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_80 - + TV 50 ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_50 - + Endplatte Al-Profil AP schraubbar ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_ENDPLATTE - + Anschlag AP-Ende fuer Spulenzug ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_ANSCHLAG - + TV-A fuer AP110/AP60 kpl ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_A_AP110_AP60 - + TV-A fuer AP60/ST ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_A_AP60_ST - + TV-A fuer AP110/ST kpl ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_A_AP110_ST - + TV-SW II fuer SW-SW ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_SW_II_SW_SW - + TV-SW III fuer SW-AP110-SW ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_SW_III_AP110_SW - + TV-SW III fuer SW-AP110 ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_SW_III_AP110 - + TV-SW IV fuer Anschluss SW-AP60 ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_SW_IV_AP60 - + TV-SW IV fuer SW-ST ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_SW_IV_ST - + Muffe ^C^C(ssg-ensure "OmniModulInsert") OMNI_TV_MUFFE - + APB 110 R400/45 140 nur fuer Delta ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R400_45_140 - + APB 110 R550/45 194 nur fuer Delta ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R550_45_194 - + APBW 110 R550/22,5 360x248,5 ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R550_225_360 - + APBW 110 R550/22,5 410x298,5 ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R550_225_410A - + APBW 110 R550/22,5 410x78,5 ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R550_225_410B - + APBW 110 R550/22,5 410x98,5 ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R550_225_410C - + APBW 110 R550/67,5 360x598,5 ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R550_675_360 - + APBW 110 R400/67,5 260x398,5 ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R400_675_260 - + APBW 110 R550/45 77x160 ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R550_45_77 - + APBW 110 R550/67,5 125x83,5 ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R550_675_125 - + APBW 110 R750/90 200x290 ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R750_90_200 - + APBW 110 R650/90 300x190 ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R650_90_300 - + APBW 110 R550/67,5 208x347 ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R550_675_208 - + APBW 110 R550/67,5 58x497 ^C^C(ssg-ensure "OmniModulInsert") OMNI_APBW_R550_675_58 - + Element bearbeiten ^C^C(ssg-ensure "OmniModulInsert") OMNI_EDIT - + Export Sivas ^C^C(ssg-ensure "count_sep_scan") ZAEHLE_SEP_SCAN (ssg-ensure "export") EXPORTSIVAS - + Export CSV ^C^C(ssg-ensure "export") EXPORTCSV - + Umschalten 2D und 3D ^C^C(ssg-ensure "SSG_LIB_Commands") SSG_DIM_SWITCH - + Sprache ^C^C(ssg-ensure "SSG_LIB_Commands") SSG_SPRACHE - + Alle Tests ausfuehren ^C^C(load (strcat (getenv "DXFMAKRO") "/tests/test_run_all.lsp")) SSG_RUN_ALL_TESTS - + Kreisel ^C^C(load (strcat (getenv "DXFMAKRO") "/tests/test_kreisel.lsp")) TEST_KREISEL - + Foerderer ^C^C(load (strcat (getenv "DXFMAKRO") "/tests/test_foerderer.lsp")) TEST_FOERDERER - + Foerderer-Linienzug ^C^C(load (strcat (getenv "DXFMAKRO") "/tests/test_linienzug.lsp")) TEST_LINIENZUG - + Omniflo ^C^C(load (strcat (getenv "DXFMAKRO") "/tests/test_omniflo.lsp")) TEST_OMNIFLO - + Gefaellestrecke ^C^C(load (strcat (getenv "DXFMAKRO") "/tests/test_gefaellestrecke.lsp")) TEST_GEFAELLESTRECKE - + Export CSV/Sivas ALL ^C^C(load (strcat (getenv "DXFMAKRO") "/tests/test_export_all.lsp")) TEST_EXPORT_ALL - + Kreisel bearbeiten (ssg-ensure "KreiselInsert") KreiselEdit - + Omniflo Element bearbeiten (ssg-ensure "OmniModulInsert") OMNI_EDIT - + Gefaellestrecke bearbeiten (ssg-ensure "Gefaellestrecke") GEFAELLESTRECKE_EDIT - + VarioFoerderer bearbeiten (ssg-ensure "VarioFoerderer") VARIOFOERDERER_EDIT - + SSG Bearbeiten (Auto) (ssg-ensure "SSG_LIB_Commands") SSG_BLOCKEDIT @@ -709,9 +715,9 @@ SSG_LIB - - - + + + ILS @@ -932,20 +938,20 @@ - - + + ~KettenFoerderer - + - - + + Element bearbeiten - + @@ -1105,299 +1111,305 @@ - Star 1400/1400 M + Delta 1600/800 M + + Star 1400/1400 M + + + + - + TEF Elemente TEF Antriebst. rechts - + TEF Umlenkspannst. rechts - + TEF Antriebst. links - + TEF Umlenkspannst. links - + TEF Gerade auf Linie - + TEF Gerade - + - + Anbaugruppen Stopper AP - - - - - - Scanner - Bürstenbremse + Scanner + + Bürstenbremse + + + + - + Verbinder ~TV W-W kpl - - - - - - ~TV W-AP110 kpl - ~TV W-AP60 oben kpl. + ~TV W-AP110 kpl - ~TV W-AP110-W kpl + ~TV W-AP60 oben kpl. - ~TV W-AP oben kpl + ~TV W-AP110-W kpl - ~TV 80 + ~TV W-AP oben kpl - ~TV 50 + ~TV 80 - ~Endplatte Al-Profil AP schraubbar + ~TV 50 - ~Anschlag AP-Ende fuer Spulenzug + ~Endplatte Al-Profil AP schraubbar - ~TV-A fuer AP110/AP60 kpl + ~Anschlag AP-Ende fuer Spulenzug - ~TV-A fuer AP60/ST + ~TV-A fuer AP110/AP60 kpl - ~TV-A fuer AP110/ST kpl + ~TV-A fuer AP60/ST - ~TV-SW II fuer SW-SW + ~TV-A fuer AP110/ST kpl - ~TV-SW III fuer SW-AP110-SW + ~TV-SW II fuer SW-SW - ~TV-SW III fuer SW-AP110 + ~TV-SW III fuer SW-AP110-SW - ~TV-SW IV fuer Anschluss SW-AP60 + ~TV-SW III fuer SW-AP110 - ~TV-SW IV fuer SW-ST + ~TV-SW IV fuer Anschluss SW-AP60 - ~Muffe + ~TV-SW IV fuer SW-ST + + ~Muffe + + + + - + Boegen fuer Weichen ~APB 110 R400/45 140 nur fuer Delta - - - - - - ~APB 110 R550/45 194 nur fuer Delta - ~APBW 110 R550/22,5 360x248,5 + ~APB 110 R550/45 194 nur fuer Delta - ~APBW 110 R550/22,5 410x298,5 + ~APBW 110 R550/22,5 360x248,5 - ~APBW 110 R550/22,5 410x78,5 + ~APBW 110 R550/22,5 410x298,5 - ~APBW 110 R550/22,5 410x98,5 + ~APBW 110 R550/22,5 410x78,5 - ~APBW 110 R550/67,5 360x598,5 + ~APBW 110 R550/22,5 410x98,5 - ~APBW 110 R400/67,5 260x398,5 + ~APBW 110 R550/67,5 360x598,5 - ~APBW 110 R550/45 77x160 + ~APBW 110 R400/67,5 260x398,5 - ~APBW 110 R550/67,5 125x83,5 + ~APBW 110 R550/45 77x160 - ~APBW 110 R750/90 200x290 + ~APBW 110 R550/67,5 125x83,5 - ~APBW 110 R650/90 300x190 + ~APBW 110 R750/90 200x290 - ~APBW 110 R550/67,5 208x347 + ~APBW 110 R650/90 300x190 - ~APBW 110 R550/67,5 58x497 + ~APBW 110 R550/67,5 208x347 + + ~APBW 110 R550/67,5 58x497 + + + + - + Export Export Sivas - + Export CSV - + - + Konfiguration Umschalten 2D und 3D - + Sprache - + @@ -1407,84 +1419,84 @@ - + Tests Alle Tests ausfuehren - + Kreisel - + Foerderer - + Foerderer-Linienzug - + Omniflo - + Gefaellestrecke - + Export CSV/Sivas ALL - + - + POP501 SSG_LIB Edit Context Kreisel bearbeiten - + Omniflo Element bearbeiten - + Gefaellestrecke bearbeiten - + VarioFoerderer bearbeiten - + SSG Bearbeiten (Auto) - + diff --git a/menu/SSG_LIB.mnu b/menu/SSG_LIB.mnu index e2810ce..a54ebfa 100644 --- a/menu/SSG_LIB.mnu +++ b/menu/SSG_LIB.mnu @@ -72,7 +72,8 @@ [Doppel 22.5 M]^C^C(ssg-ensure "OmniModulInsert") OMNI_WK_Doppel [<-Dreiwege 22.5 M]^C^C(ssg-ensure "OmniModulInsert") OMNI_WK_Dreiwege [->Weichenkombinationen] -[Delta 1400/700 M]^C^C(ssg-ensure "OmniModulInsert") OMNI_WKomb_Delta +[Delta 1400/700 M]^C^C(ssg-ensure "OmniModulInsert") OMNI_WKomb_Delta_1400 +[Delta 1600/800 M]^C^C(ssg-ensure "OmniModulInsert") OMNI_WKomb_Delta_1600 [<-Star 1400/1400 M]^C^C(ssg-ensure "OmniModulInsert") OMNI_WKomb_Star [->TEF Elemente] [TEF Antriebst. rechts]^C^C(ssg-ensure "OmniModulInsert") OMNI_TEF_AntriebR