Uebersetzung der Benutzermeldungen in vf_core.lsp und Gefaellestrecke.lsp auf ssg-text/ssg-textf umgestellt
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
+127
-140
@@ -121,13 +121,13 @@
|
||||
(setq block-datei (strcat block-pfad blockname ".dwg"))
|
||||
(if (findfile block-datei)
|
||||
(progn
|
||||
(princ (strcat "\n Lade Block: " blockname " ..."))
|
||||
(princ (ssg-textf "gf-lade-block" (list blockname)))
|
||||
(setq temp-obj
|
||||
(vla-InsertBlock modelspace
|
||||
(vlax-3D-point '(0 0 0))
|
||||
block-datei 1.0 1.0 1.0 0))
|
||||
(vla-Delete temp-obj)
|
||||
(princ " OK")
|
||||
(princ (ssg-text "gf-status-ok"))
|
||||
)
|
||||
(princ (ssg-textf "gf-fehler-blockdatei-fehlt" (list block-datei)))
|
||||
)
|
||||
@@ -757,7 +757,7 @@
|
||||
(setq rest (vl-remove best rest))
|
||||
)
|
||||
(progn
|
||||
(princ "\n WARNUNG: Kette unterbrochen!")
|
||||
(princ (ssg-text "gf-warnung-kette-unterbrochen"))
|
||||
(setq rest nil)
|
||||
)
|
||||
)
|
||||
@@ -854,25 +854,24 @@
|
||||
;; dH_grade = L_total * sin(v); dH_fix = aus-dz + ein-dz + sum-dz-bogen
|
||||
(setq L-gerade (+ L-gerade (float aus-dx) (float ein-dx) (float sum-dx-bogen)))
|
||||
(setq deltaH-eff (- (float deltaH) (float aus-dz) (float ein-dz) sum-dz-bogen))
|
||||
(princ (strcat "\n Gesamte Nennlaenge (inkl. Bogen-dx): " (rtos L-gerade 2 1) " mm"))
|
||||
(princ (strcat "\n Feste Hoehenanteile (AS/ES-dz + Bogen-dz): "
|
||||
(rtos (+ (float aus-dz) (float ein-dz) sum-dz-bogen) 2 1) " mm"))
|
||||
(princ (strcat "\n aus-dz=" (rtos (float aus-dz) 2 2)
|
||||
" ein-dz=" (rtos (float ein-dz) 2 2)
|
||||
" Bogen-dz=" (rtos sum-dz-bogen 2 2)))
|
||||
(princ (strcat "\n Effektive Resthoehe fuer Grade: " (rtos deltaH-eff 2 1) " mm"))
|
||||
(princ (ssg-textf "gf-status-nennlaenge" (list (rtos L-gerade 2 1))))
|
||||
(princ (ssg-textf "gf-status-feste-hoehenanteile"
|
||||
(list (rtos (+ (float aus-dz) (float ein-dz) sum-dz-bogen) 2 1))))
|
||||
(princ (ssg-textf "gf-status-dz-detail"
|
||||
(list (rtos (float aus-dz) 2 2) (rtos (float ein-dz) 2 2) (rtos sum-dz-bogen 2 2))))
|
||||
(princ (ssg-textf "gf-status-resthoehe" (list (rtos deltaH-eff 2 1))))
|
||||
(cond
|
||||
((<= L-gerade 0.1)
|
||||
(princ "\n WARNUNG: keine geraden Strecken -> Fallback 3 Grad")
|
||||
(princ (ssg-text "gf-warnung-keine-geraden"))
|
||||
3.0)
|
||||
((< deltaH-eff 0)
|
||||
(princ "\n WARNUNG: feste Anteile > deltaH -> Fallback 1 Grad")
|
||||
(princ (ssg-text "gf-warnung-feste-anteile"))
|
||||
1.0)
|
||||
(t
|
||||
(setq sin-alpha (/ deltaH-eff L-gerade))
|
||||
(if (> sin-alpha 1.0) (setq sin-alpha 1.0))
|
||||
(setq alpha (* (asin sin-alpha) (/ 180.0 pi)))
|
||||
(princ (strcat "\n>>> Naeherungswinkel: " (rtos alpha 2 3) grad-zeichen))
|
||||
(princ (ssg-textf "gf-status-naeherungswinkel" (list (rtos alpha 2 3) grad-zeichen)))
|
||||
alpha
|
||||
)
|
||||
)
|
||||
@@ -918,10 +917,9 @@
|
||||
(setq bseite (nth 4 seg))
|
||||
(cond
|
||||
((= typ "Linie")
|
||||
(princ (strcat "\n\n" (itoa (1+ i)) "/" (itoa n)
|
||||
": Staustrecke L=" (rtos laenge 2 1) " mm"
|
||||
" hz=" (rtos hz 2 1) grad-zeichen
|
||||
" v=" (rtos grade 2 2) grad-zeichen))
|
||||
(princ (ssg-textf "gf-status-linie-staustrecke"
|
||||
(list (1+ i) n (rtos laenge 2 1) (rtos hz 2 1) grad-zeichen
|
||||
(rtos grade 2 2) grad-zeichen)))
|
||||
(setq endpunkt
|
||||
(gf-insert-hz-incl-scaled
|
||||
"Staustrecke_SP_1000_mm" (car aktuell-frame) laenge hz grade))
|
||||
@@ -935,10 +933,8 @@
|
||||
;; Separator am Ende dieser Linie, falls naechstes Segment ein Bogen ist
|
||||
(if (and naechstes (= (car naechstes) "Bogen"))
|
||||
(progn
|
||||
(princ (strcat "\n\n" (itoa (1+ i)) "S/" (itoa n)
|
||||
": Separator 300mm (vor Bogen)"
|
||||
" hz=" (rtos hz 2 1) grad-zeichen
|
||||
" v=" (rtos grade 2 2) grad-zeichen))
|
||||
(princ (ssg-textf "gf-status-separator-vor-bogen"
|
||||
(list (1+ i) n (rtos hz 2 1) grad-zeichen (rtos grade 2 2) grad-zeichen)))
|
||||
(setq endpunkt
|
||||
(gf-insert-hz-with-ks
|
||||
"Staustrecke_Separator_SP_300_mm" (car aktuell-frame) hz grade 300 0))
|
||||
@@ -948,9 +944,8 @@
|
||||
)
|
||||
((= typ "Bogen")
|
||||
(setq blockname (gf-bogen-blockname bwinkel bseite))
|
||||
(princ (strcat "\n\n" (itoa (1+ i)) "/" (itoa n)
|
||||
": " blockname
|
||||
" hz=" (rtos hz 2 1) grad-zeichen))
|
||||
(princ (ssg-textf "gf-status-bogen-einfuegen"
|
||||
(list (1+ i) n blockname (rtos hz 2 1) grad-zeichen)))
|
||||
;; Gefaellebogen: KS_EIN an aktuellem Rahmen ausrichten (volle 3D-Rotation)
|
||||
(setq aktuell-frame (insert-block-ks-to-ks blockname aktuell-frame))
|
||||
)
|
||||
@@ -958,7 +953,7 @@
|
||||
(setq i (1+ i))
|
||||
)
|
||||
(princ "\n\n=========================================")
|
||||
(princ "\n>>> Linienzug-Gefaellestrecke eingefuegt! <<<")
|
||||
(princ (ssg-text "gf-status-linienzug-eingefuegt"))
|
||||
(princ "\n=========================================")
|
||||
aktuell-frame)
|
||||
|
||||
@@ -1009,17 +1004,17 @@
|
||||
rad-v-korr ein-hz-as-k rad-h-as-k xu-as-meas
|
||||
rad-h-es-k xu-es-meas dz-as-ist dz-es-ist
|
||||
dH-korr grade-prev iter)
|
||||
(princ "\n\n>>> MODUS 3: Linienzug auswaehlen <<<")
|
||||
(princ "\nBitte alle Linien (LINE) und Boegen (ARC) des Pfades auswaehlen,")
|
||||
(princ "\ndann ENTER druecken:")
|
||||
(princ (ssg-text "gf-modus3-header"))
|
||||
(princ (ssg-text "gf-modus3-hinweis1"))
|
||||
(princ (ssg-text "gf-modus3-hinweis2"))
|
||||
|
||||
;; Selektion
|
||||
(setq ss (ssget (list (cons 0 "LINE,ARC"))))
|
||||
(if (null ss)
|
||||
(progn (princ "\nKeine Objekte ausgewaehlt!") (exit))
|
||||
(progn (princ (ssg-text "gf-fehler-keine-objekte")) (exit))
|
||||
)
|
||||
(setq n (sslength ss))
|
||||
(princ (strcat "\n " (itoa n) " Objekte ausgewaehlt."))
|
||||
(princ (ssg-textf "gf-status-objekte-ausgewaehlt" (list n)))
|
||||
|
||||
;; Objekte in Liste
|
||||
(setq obj-liste '() i 0)
|
||||
@@ -1032,30 +1027,30 @@
|
||||
;; Startpunkt: Kettenanfang (Sortierung) + KS_EIN-Position des AUS-Elements
|
||||
;; Z-Hoehe = Anschlusshoehe der Gesamtstrecke (deltaH-Referenz oben)
|
||||
(setq startpunkt
|
||||
(getpoint "\nStartpunkt (3D) waehlen - KS_EIN AUS-Element / Kettenanfang: "))
|
||||
(getpoint (ssg-text "gf-prompt-startpunkt-kette")))
|
||||
(if (null startpunkt)
|
||||
(progn (princ "\nKein Startpunkt!") (exit))
|
||||
(progn (princ (ssg-text "gf-fehler-kein-startpunkt")) (exit))
|
||||
)
|
||||
|
||||
;; Endpunkt: KS_AUS-Position des EIN-Elements (Z-Referenz unten)
|
||||
;; deltaH = |startpunkt.Z - endpunkt-ref.Z|
|
||||
(setq endpunkt-ref
|
||||
(getpoint "\nEndpunkt (3D) waehlen - KS_AUS EIN-Element / Kettenende: "))
|
||||
(getpoint (ssg-text "gf-prompt-endpunkt-kette")))
|
||||
(if (null endpunkt-ref)
|
||||
(progn (princ "\nKein Endpunkt!") (exit))
|
||||
(progn (princ (ssg-text "gf-fehler-kein-endpunkt")) (exit))
|
||||
)
|
||||
|
||||
;; DeltaH aus Z-Koordinaten
|
||||
(setq deltaH (abs (- (caddr startpunkt) (caddr endpunkt-ref))))
|
||||
(princ (strcat "\n " delta-sym "H aus 3D-Punkten: " (rtos deltaH 2 1) " mm"))
|
||||
(princ (ssg-textf "gf-status-deltah-3dpunkte" (list delta-sym (rtos deltaH 2 1))))
|
||||
|
||||
;; Kette sortieren
|
||||
(princ "\n Sortiere Segmente ...")
|
||||
(princ (ssg-text "gf-status-sortiere-segmente"))
|
||||
(setq kette (gf-sortiere-objekte obj-liste startpunkt))
|
||||
(if (null kette)
|
||||
(progn (alert "Keine verbundene Kette gefunden!") (exit))
|
||||
(progn (alert (ssg-text "gf-alert-keine-kette")) (exit))
|
||||
)
|
||||
(princ (strcat " " (itoa (length kette)) " Segmente gefunden."))
|
||||
(princ (ssg-textf "gf-status-segmente-gefunden" (list (length kette))))
|
||||
|
||||
;; Segmente analysieren
|
||||
(setq segmente (gf-analysiere-kette kette))
|
||||
@@ -1125,36 +1120,35 @@
|
||||
)
|
||||
|
||||
;; Segmente nach Laengenanpassung anzeigen
|
||||
(princ "\n\n--- Segment-Analyse (Laengen nach Kuerzung) ---")
|
||||
(princ (ssg-text "gf-status-segment-analyse-header"))
|
||||
(setq idx 0)
|
||||
(foreach seg segmente
|
||||
(setq idx (1+ idx))
|
||||
(if (= (car seg) "Linie")
|
||||
(princ (strcat "\n " (itoa idx) ". Linie L=" (rtos (caddr seg) 2 1)
|
||||
" mm hz=" (rtos (cadr seg) 2 1) grad-zeichen))
|
||||
(princ (strcat "\n " (itoa idx) ". Bogen " (itoa (nth 3 seg))
|
||||
grad-zeichen " " (nth 4 seg)
|
||||
" hz-Eingang=" (rtos (cadr seg) 2 1) grad-zeichen))
|
||||
(princ (ssg-textf "gf-status-segment-linie"
|
||||
(list idx (rtos (caddr seg) 2 1) (rtos (cadr seg) 2 1) grad-zeichen)))
|
||||
(princ (ssg-textf "gf-status-segment-bogen"
|
||||
(list idx (itoa (nth 3 seg)) grad-zeichen (nth 4 seg)
|
||||
(rtos (cadr seg) 2 1) grad-zeichen)))
|
||||
)
|
||||
)
|
||||
(princ (strcat "\n Seg " (itoa (1+ first-idx)) " (1. Linie): -" (rtos aus-dx 2 1) " mm (AUS-Element)"))
|
||||
(princ "\n Jede Linie vor Bogen: -300 mm (Bogen-Separator)")
|
||||
(princ (strcat "\n Seg " (itoa (1+ last-idx)) " (letzte Linie): -300 mm (EIN-Sep) -" (rtos ein-dx 2 1) " mm (EIN-Element)"))
|
||||
(princ (strcat "\n Eintrittsrichtung: " (rtos entry-hz 2 1) grad-zeichen))
|
||||
(princ (strcat "\n Austrittsrichtung: " (rtos exit-hz 2 1) grad-zeichen))
|
||||
(princ (ssg-textf "gf-status-seg-erste-linie" (list (1+ first-idx) (rtos aus-dx 2 1))))
|
||||
(princ (ssg-text "gf-status-linie-vor-bogen"))
|
||||
(princ (ssg-textf "gf-status-seg-letzte-linie" (list (1+ last-idx) (rtos ein-dx 2 1))))
|
||||
(princ (ssg-textf "gf-status-eintrittsrichtung" (list (rtos entry-hz 2 1) grad-zeichen)))
|
||||
(princ (ssg-textf "gf-status-austrittsrichtung" (list (rtos exit-hz 2 1) grad-zeichen)))
|
||||
|
||||
;; Gefaellewinkel berechnen (1 Extra-Separator vor EIN-Element)
|
||||
(princ "\n\n Berechne Gefaellewinkel aus Geometrie ...")
|
||||
(princ (ssg-text "gf-status-berechne-winkel"))
|
||||
(setq grade (gf-winkel-berechnen segmente deltaH 1))
|
||||
|
||||
;; Manuelle Anpassung
|
||||
(setq antwort
|
||||
(getstring (strcat "\nBerechneten Winkel "
|
||||
(rtos grade 2 3) grad-zeichen
|
||||
" verwenden? (j/n) [j]: ")))
|
||||
(getstring (ssg-textf "gf-prompt-winkel-verwenden"
|
||||
(list (rtos grade 2 3) grad-zeichen))))
|
||||
(if (= (strcase antwort) "N")
|
||||
(progn
|
||||
(setq grade (getreal "\nGefaellewinkel (Grad): "))
|
||||
(setq grade (getreal (ssg-text "gf-prompt-gefaellewinkel")))
|
||||
(if (or (null grade) (<= grade 0)) (setq grade 3.0))
|
||||
)
|
||||
)
|
||||
@@ -1166,7 +1160,7 @@
|
||||
;; Garantiert: dz_AS(v) + L_stau*sin(v) + dz_ES(v) + dz_bogen = deltaH
|
||||
(if (and *gf-L-ohne-as-es* (> *gf-L-ohne-as-es* 0.1))
|
||||
(progn
|
||||
(princ "\n Messe tatsaechliche AS/ES-Absenkung (iterativ) ...")
|
||||
(princ (ssg-text "gf-status-messe-absenkung"))
|
||||
(setq grade-prev -999.0 iter 0)
|
||||
(while (and (< iter 4) (> (abs (- grade grade-prev)) 0.001))
|
||||
(setq grade-prev grade)
|
||||
@@ -1189,16 +1183,16 @@
|
||||
(if (and (> dH-korr 0.0) (< (/ dH-korr *gf-L-ohne-as-es*) 1.0))
|
||||
(setq grade (* (asin (/ dH-korr *gf-L-ohne-as-es*)) (/ 180.0 pi)))
|
||||
(progn
|
||||
(princ "\n WARNUNG: Korrektur ausserhalb Bereich, Winkel unveraendert")
|
||||
(princ (ssg-text "gf-warnung-korrektur-bereich"))
|
||||
(setq grade-prev grade)
|
||||
)
|
||||
)
|
||||
(setq iter (1+ iter))
|
||||
)
|
||||
(princ (strcat "\n AS: " (rtos dz-as-ist 2 2) " mm"
|
||||
" ES: " (rtos dz-es-ist 2 2) " mm"))
|
||||
(princ (strcat "\n>>> Korrigierter Gefaellewinkel: " (rtos grade 2 3) grad-zeichen
|
||||
" (nach " (itoa iter) " Iter.)"))
|
||||
(princ (ssg-textf "gf-status-as-es-mm"
|
||||
(list (rtos dz-as-ist 2 2) (rtos dz-es-ist 2 2))))
|
||||
(princ (ssg-textf "gf-status-korrigierter-winkel"
|
||||
(list (rtos grade 2 3) grad-zeichen (itoa iter))))
|
||||
)
|
||||
)
|
||||
|
||||
@@ -1209,18 +1203,18 @@
|
||||
|
||||
;; Zusammenfassung
|
||||
(princ "\n\n=========================================")
|
||||
(princ (strcat "\n>>> Segmente: " (itoa (length segmente))))
|
||||
(princ (strcat "\n>>> " delta-sym "H: " (rtos deltaH 2 2) " mm"))
|
||||
(princ (strcat "\n>>> " delta-sym "L: " (rtos delta-l-gf 2 1) " mm"))
|
||||
(princ (strcat "\n>>> Gefaellewinkel: " (rtos grade 2 3) grad-zeichen))
|
||||
(princ (strcat "\n>>> Eintrittswinkel: " (rtos entry-hz 2 1) grad-zeichen))
|
||||
(princ (strcat "\n>>> Austrittswinkel: " (rtos exit-hz 2 1) grad-zeichen))
|
||||
(princ (strcat "\n>>> AUS-Element: " as-block))
|
||||
(princ (strcat "\n>>> EIN-Element: " es-block))
|
||||
(princ (ssg-textf "gf-status-zus-segmente" (list (length segmente))))
|
||||
(princ (ssg-textf "gf-status-zus-deltah" (list delta-sym (rtos deltaH 2 2))))
|
||||
(princ (ssg-textf "gf-status-zus-deltal" (list delta-sym (rtos delta-l-gf 2 1))))
|
||||
(princ (ssg-textf "gf-status-zus-winkel" (list (rtos grade 2 3) grad-zeichen)))
|
||||
(princ (ssg-textf "gf-status-zus-eintrittswinkel" (list (rtos entry-hz 2 1) grad-zeichen)))
|
||||
(princ (ssg-textf "gf-status-zus-austrittswinkel" (list (rtos exit-hz 2 1) grad-zeichen)))
|
||||
(princ (ssg-textf "gf-status-zus-aus-element" (list as-block)))
|
||||
(princ (ssg-textf "gf-status-zus-ein-element" (list es-block)))
|
||||
(princ "\n=========================================")
|
||||
|
||||
;; Bestaetigung
|
||||
(setq antwort (getstring "\nEinfuegen? (1=Ja / 2=Nein) [1]: "))
|
||||
(setq antwort (getstring (ssg-text "gf-prompt-einfuegen")))
|
||||
(if (not (= antwort "2"))
|
||||
(progn
|
||||
;; GF-Nummer und Entity-Grenze vor erster Einfuegung sichern.
|
||||
@@ -1242,10 +1236,9 @@
|
||||
(setq xu-entry (list (* (cos rad-h-as)(cos rad-v-as))
|
||||
(* (sin rad-h-as)(cos rad-v-as))
|
||||
(- (sin rad-v-as))))
|
||||
(princ (strcat "\n\n>>> AUS-Element: " as-block
|
||||
" Fahrtrichtung=" (rtos entry-hz 2 1) grad-zeichen
|
||||
" KS_EIN-hz=" (rtos ein-hz-as 2 1) grad-zeichen
|
||||
" Z=" (rtos (caddr startpunkt) 2 1)))
|
||||
(princ (ssg-textf "gf-status-aus-element-detail"
|
||||
(list as-block (rtos entry-hz 2 1) grad-zeichen
|
||||
(rtos ein-hz-as 2 1) grad-zeichen (rtos (caddr startpunkt) 2 1))))
|
||||
;; Block-Ursprung (nicht KS_EIN!) in X/Y auf startpunkt setzen, damit die
|
||||
;; Mittelachse der Foerderstrecke (KS_AUS-Richtung) exakt durch den
|
||||
;; ausgewaehlten Startpunkt verlaeuft. KS_EIN sitzt seitlich versetzt
|
||||
@@ -1261,7 +1254,7 @@
|
||||
(setq aktuell-frame (gf-linienzug-einfuegen segmente grade aktuell-frame))
|
||||
|
||||
;; Separator vor EIN-Element
|
||||
(princ "\n>>> Separator vor EIN-Element")
|
||||
(princ (ssg-text "gf-status-separator-vor-ein"))
|
||||
(setq sep-endpunkt
|
||||
(gf-insert-hz-with-ks "Staustrecke_Separator_SP_300_mm"
|
||||
(car aktuell-frame) exit-hz grade 300 0))
|
||||
@@ -1277,12 +1270,12 @@
|
||||
;; seine eigene Achse verlaeuft damit trivial durch diesen Punkt.
|
||||
;; Die Z-Hoehe wird jedoch an KS_AUS gemessen, damit KS_AUS.Z exakt
|
||||
;; auf endpunkt-ref.Z landet (garantiert die gewuenschte DeltaH).
|
||||
(princ (strcat "\n>>> EIN-Element: " es-block
|
||||
" Ziel-Z=" (rtos (caddr endpunkt-ref) 2 1)))
|
||||
(princ (ssg-textf "gf-status-ein-element-detail"
|
||||
(list es-block (rtos (caddr endpunkt-ref) 2 1))))
|
||||
(setq es-aus-frame
|
||||
(insert-block-mixed-to-ks es-block sep-frame
|
||||
(caddr endpunkt-ref) "KS_EIN" "KS_AUS"))
|
||||
(princ (strcat "\n Z-Hoehe KS_AUS: " (rtos (caddr (car es-aus-frame)) 2 1) " mm"))
|
||||
(princ (ssg-textf "gf-status-z-hoehe-ks-aus" (list (rtos (caddr (car es-aus-frame)) 2 1))))
|
||||
|
||||
;; --- GF_N-Block erstellen ---
|
||||
|
||||
@@ -1341,10 +1334,10 @@
|
||||
es-seite)
|
||||
|
||||
(princ "\n\n=========================================")
|
||||
(princ "\n>>> Fertig! <<<")
|
||||
(princ (ssg-text "gf-status-fertig"))
|
||||
(princ "\n=========================================")
|
||||
)
|
||||
(princ "\nAbgebrochen.")
|
||||
(princ (ssg-text "gf-status-abgebrochen"))
|
||||
)
|
||||
)
|
||||
|
||||
@@ -1516,7 +1509,7 @@
|
||||
;; Aufsteigende, eindeutige ID vergeben (wie beim Kreisel), falls verfuegbar.
|
||||
(if (car (atoms-family 1 '("SSG-ID-GENERATE")))
|
||||
(ssg-id-generate gf-insert))
|
||||
(princ (strcat "\n>>> GF-Block erstellt: " gf-bname " (" typ-str ")"))
|
||||
(princ (ssg-textf "gf-status-gf-block-erstellt" (list gf-bname typ-str)))
|
||||
gf-insert
|
||||
)
|
||||
|
||||
@@ -1563,35 +1556,32 @@
|
||||
;; Mittelachse der Foerderstrecke (KS_AUS-Richtung) exakt durch den
|
||||
;; ausgewaehlten Startpunkt verlaeuft (analog Modus 3). Die Z-Hoehe wird
|
||||
;; weiterhin an KS_EIN gemessen, damit KS_EIN.Z = startpunkt.Z gilt.
|
||||
(princ (strcat "\n\n1/4: " as-block
|
||||
" Fahrtrichtung=" (rtos hz 2 1) grad-zeichen
|
||||
" KS_EIN-hz=" (rtos ein-hz 2 1) grad-zeichen
|
||||
" v=" (rtos winkel 2 1) grad-zeichen))
|
||||
(princ (ssg-textf "gf-status-schritt1-aus"
|
||||
(list as-block (rtos hz 2 1) grad-zeichen (rtos ein-hz 2 1) grad-zeichen
|
||||
(rtos winkel 2 1) grad-zeichen)))
|
||||
(setq startframe (make-frame-from-dir startpunkt xu-ein))
|
||||
(setq aktuell-frame
|
||||
(insert-block-mixed-to-ks as-block startframe (caddr startpunkt) nil "KS_EIN"))
|
||||
(setq nach-aus-pt (car aktuell-frame))
|
||||
|
||||
;; 2/4: Staustrecke (skalierbar, hz+vert)
|
||||
(princ (strcat "\n\n2/4: Staustrecke L=" (rtos L_stau 2 1)
|
||||
" mm hz=" (rtos hz 2 1) grad-zeichen
|
||||
" v=" (rtos winkel 2 1) grad-zeichen))
|
||||
(princ (ssg-textf "gf-status-schritt2-staustrecke"
|
||||
(list (rtos L_stau 2 1) (rtos hz 2 1) grad-zeichen (rtos winkel 2 1) grad-zeichen)))
|
||||
(setq stau-endpunkt
|
||||
(gf-insert-hz-incl-scaled
|
||||
"Staustrecke_SP_1000_mm" (car aktuell-frame) L_stau hz winkel))
|
||||
(setq aktuell-frame (make-frame-from-dir stau-endpunkt xu-incl))
|
||||
|
||||
;; 3/4: Separator 300mm
|
||||
(princ (strcat "\n\n3/4: Separator 300mm"
|
||||
" hz=" (rtos hz 2 1) grad-zeichen
|
||||
" v=" (rtos winkel 2 1) grad-zeichen))
|
||||
(princ (ssg-textf "gf-status-schritt3-separator"
|
||||
(list (rtos hz 2 1) grad-zeichen (rtos winkel 2 1) grad-zeichen)))
|
||||
(setq sep-endpunkt
|
||||
(gf-insert-hz-with-ks
|
||||
"Staustrecke_Separator_SP_300_mm" (car aktuell-frame) hz winkel 300 0))
|
||||
(setq sep-frame (make-frame-from-dir sep-endpunkt xu-incl))
|
||||
|
||||
;; 4/4: EIN-Element (KS-zu-KS)
|
||||
(princ (strcat "\n\n4/4: " es-block))
|
||||
(princ (ssg-textf "gf-status-schritt4-ein" (list es-block)))
|
||||
(setq endpunkt (car (insert-block-ks-to-ks es-block sep-frame)))
|
||||
|
||||
;; Abgeleitete Werte: echte Endhoehe aus tatsaechlicher Ketten-Platzierung
|
||||
@@ -1615,7 +1605,7 @@
|
||||
es-seite))
|
||||
|
||||
(princ "\n\n=========================================")
|
||||
(princ "\n>>> Gefaellestrecke erfolgreich eingefuegt! <<<")
|
||||
(princ (ssg-text "gf-status-erfolgreich-eingefuegt"))
|
||||
(princ "\n=========================================")
|
||||
;; Rueckgabe: (ename echtes-deltaH echtes-deltaL) - volle Fliesskomma-
|
||||
;; Genauigkeit, unabhaengig von der auf ganze mm gerundeten HOEHE_VON/
|
||||
@@ -1633,24 +1623,24 @@
|
||||
deltaX deltaY startpunkt-fuer-einfuegen hz-winkel)
|
||||
|
||||
(princ "\n=========================================")
|
||||
(princ "\n GEFAELLESTRECKE GENERATOR v2.0")
|
||||
(princ "\n Richtung: immer AB (nach unten)")
|
||||
(princ (ssg-text "gf-banner-titel"))
|
||||
(princ (ssg-text "gf-banner-richtung"))
|
||||
(princ "\n=========================================")
|
||||
|
||||
;; Bibliothek initialisieren
|
||||
(if (not (gf-init-bibliothek))
|
||||
(progn
|
||||
(alert "Fehler beim Initialisieren der Bibliothek!\nBitte DXFM_DATA pruefen.")
|
||||
(alert (ssg-text "gf-alert-init-fehler"))
|
||||
(exit)
|
||||
)
|
||||
)
|
||||
|
||||
;; Eingabemodus
|
||||
(princ "\n\nEingabemodus waehlen:")
|
||||
(princ "\n 1 - Werte manuell eingeben (einfache Strecke)")
|
||||
(princ "\n 2 - 3D-Linie auswaehlen (einfache Strecke)")
|
||||
(princ "\n 3 - Linienzug (LINE + ARC) auswaehlen mit Gefaellebogen")
|
||||
(setq antwort (getstring "\nIhre Wahl (1/2/3) [1]: "))
|
||||
(princ (ssg-text "gf-eingabemodus-header"))
|
||||
(princ (ssg-text "gf-eingabemodus-1"))
|
||||
(princ (ssg-text "gf-eingabemodus-2"))
|
||||
(princ (ssg-text "gf-eingabemodus-3"))
|
||||
(setq antwort (getstring (ssg-text "prompt-wahl-1-2-3")))
|
||||
|
||||
(cond
|
||||
;; Modus 3: Linienzug mit Bogen
|
||||
@@ -1668,25 +1658,25 @@
|
||||
;; Modus 1: Manuelle Eingabe
|
||||
(if (= eingabe-modus "Manuell")
|
||||
(progn
|
||||
(princ "\n\n>>> MODUS 1: Manuelle Werteingabe <<<")
|
||||
(princ (ssg-text "gf-modus1-header"))
|
||||
(setq startpunkt-fuer-einfuegen
|
||||
(getpoint "\nStartpunkt fuer AUS_Element waehlen: "))
|
||||
(getpoint (ssg-text "gf-prompt-startpunkt-aus")))
|
||||
(if (null startpunkt-fuer-einfuegen)
|
||||
(setq startpunkt-fuer-einfuegen '(0 0 0)))
|
||||
(setq deltaL (getreal (strcat "\n" delta-sym "L - Abstand (mm): ")))
|
||||
(setq deltaL (getreal (ssg-textf "gf-prompt-deltal-abstand" (list delta-sym))))
|
||||
(if (or (null deltaL) (<= deltaL 0))
|
||||
(setq deltaL (ssg-cfg-or "gefaelle" "default_delta_l" 5000.0)))
|
||||
)
|
||||
;; Modus 2: 3D-Linie
|
||||
(progn
|
||||
(princ "\n\n>>> MODUS 2: 3D-Linie auswaehlen <<<")
|
||||
(princ (ssg-text "gf-modus2-header"))
|
||||
(command "BKS" "W")
|
||||
(princ "\n BKS auf Weltkoordinaten gesetzt.")
|
||||
(princ (ssg-text "gf-status-bks-welt"))
|
||||
(setq line-points
|
||||
(get-line-start-end-points
|
||||
"\nBitte 3D-Linie fuer Richtung und Laenge auswaehlen:"))
|
||||
(ssg-text "gf-prompt-3dlinie-richtung")))
|
||||
(if (null line-points)
|
||||
(progn (alert "Keine gueltige Linie ausgewaehlt!") (exit))
|
||||
(progn (alert (ssg-text "gf-alert-keine-linie")) (exit))
|
||||
)
|
||||
(setq startpunkt (car line-points)
|
||||
endpunkt (cadr line-points))
|
||||
@@ -1697,61 +1687,60 @@
|
||||
(setq deltaL (sqrt (+ (* deltaX deltaX) (* deltaY deltaY))))
|
||||
;; hz-Winkel: Fahrtrichtung aus Linienpunkten (in Grad, 0=Ost)
|
||||
(setq hz-winkel (* (angle '(0.0 0.0) (list deltaX deltaY)) (/ 180.0 pi)))
|
||||
(princ (strcat "\n Fahrtrichtung: " (rtos hz-winkel 2 1) grad-zeichen
|
||||
" (aus Linie)"))
|
||||
(princ (strcat "\n " delta-sym "L = " (rtos deltaL 2 2) " mm"))
|
||||
(princ (ssg-textf "gf-status-fahrtrichtung-linie" (list (rtos hz-winkel 2 1) grad-zeichen)))
|
||||
(princ (ssg-textf "gf-status-deltal-mm" (list delta-sym (rtos deltaL 2 2))))
|
||||
;; Startpunkt separat waehlen (unabhaengig von Linie)
|
||||
(setq startpunkt-fuer-einfuegen
|
||||
(getpoint "\nStartpunkt fuer AUS-Element waehlen: "))
|
||||
(getpoint (ssg-text "gf-prompt-startpunkt-aus")))
|
||||
(if (null startpunkt-fuer-einfuegen)
|
||||
(progn (princ "\nKein Startpunkt!") (exit))
|
||||
(progn (princ (ssg-text "gf-fehler-kein-startpunkt")) (exit))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(princ "\n\n=========================================")
|
||||
(princ (strcat "\n " delta-sym "L = " (rtos deltaL 2 2) " mm"))
|
||||
(princ (ssg-textf "gf-status-deltal-mm" (list delta-sym (rtos deltaL 2 2))))
|
||||
(princ "\n=========================================")
|
||||
|
||||
;; Winkelabfrage (beide Modi: manuell)
|
||||
(setq winkel (getreal "\n\nGefaellewinkel (Grad) [3]: "))
|
||||
(setq winkel (getreal (ssg-text "gf-prompt-gefaellewinkel-def3")))
|
||||
(if (or (null winkel) (<= winkel 0))
|
||||
(setq winkel (ssg-cfg-or "gefaelle" "default_winkel" 3.0)))
|
||||
(setq winkel (float winkel))
|
||||
(setq rad (* winkel (/ pi 180.0)))
|
||||
(princ (strcat "\n>>> Winkel: " (rtos winkel 2 1) grad-zeichen))
|
||||
(princ (ssg-textf "gf-status-winkel" (list (rtos winkel 2 1) grad-zeichen)))
|
||||
|
||||
;; Fahrtrichtung waehlen (nur Modus 1; Modus 2 berechnet hz aus Linie)
|
||||
(if (= eingabe-modus "Manuell")
|
||||
(progn
|
||||
(princ "\n\nFahrtrichtung waehlen:")
|
||||
(princ "\n 1 - 0° (X-Achse +, Ost)")
|
||||
(princ "\n 2 - 90° (Y-Achse +, Nord)")
|
||||
(princ "\n 3 - 180° (X-Achse -, West)")
|
||||
(princ "\n 4 - 270° (Y-Achse -, Sued)")
|
||||
(setq antwort (getstring "\nIhre Wahl (1/2/3/4) [1]: "))
|
||||
(princ (ssg-text "vfc-fahrtrichtung-header"))
|
||||
(princ (ssg-textf "vfc-fahrtrichtung-0" (list grad-zeichen)))
|
||||
(princ (ssg-textf "vfc-fahrtrichtung-90" (list grad-zeichen)))
|
||||
(princ (ssg-textf "vfc-fahrtrichtung-180" (list grad-zeichen)))
|
||||
(princ (ssg-textf "vfc-fahrtrichtung-270" (list grad-zeichen)))
|
||||
(setq antwort (getstring (ssg-text "prompt-wahl-1-2-3-4")))
|
||||
(cond
|
||||
((= antwort "2") (setq hz-winkel 90.0))
|
||||
((= antwort "3") (setq hz-winkel 180.0))
|
||||
((= antwort "4") (setq hz-winkel 270.0))
|
||||
(t (setq hz-winkel 0.0))
|
||||
)
|
||||
(princ (strcat "\n>>> Fahrtrichtung: " (rtos hz-winkel 2 1) grad-zeichen))
|
||||
(princ (ssg-textf "gf-status-fahrtrichtung" (list (rtos hz-winkel 2 1) grad-zeichen)))
|
||||
)
|
||||
)
|
||||
|
||||
;; Seite AUS-Element waehlen
|
||||
(princ "\n\nAUS-Element (AS_Element_90_*) - Seite waehlen:")
|
||||
(princ "\n 1 - Links")
|
||||
(princ "\n 2 - Rechts")
|
||||
(setq antwort (getstring "\nIhre Wahl (1/2) [1]: "))
|
||||
(princ (ssg-text "gf-seite-aus-header"))
|
||||
(princ (ssg-text "gf-seite-links"))
|
||||
(princ (ssg-text "gf-seite-rechts"))
|
||||
(setq antwort (getstring (ssg-text "prompt-wahl-1-2")))
|
||||
(setq as-seite (if (= antwort "2") "rechts" "links"))
|
||||
|
||||
;; Seite EIN-Element waehlen
|
||||
(princ "\n\nEIN-Element (ES_Element_90_*) - Seite waehlen:")
|
||||
(princ "\n 1 - Links")
|
||||
(princ "\n 2 - Rechts")
|
||||
(setq antwort (getstring "\nIhre Wahl (1/2) [1]: "))
|
||||
(princ (ssg-text "gf-seite-ein-header"))
|
||||
(princ (ssg-text "gf-seite-links"))
|
||||
(princ (ssg-text "gf-seite-rechts"))
|
||||
(setq antwort (getstring (ssg-text "prompt-wahl-1-2")))
|
||||
(setq es-seite (if (= antwort "2") "rechts" "links"))
|
||||
|
||||
;; Laengenberechnung
|
||||
@@ -1762,27 +1751,25 @@
|
||||
;; Validierung
|
||||
(if (<= L_stau 0.1)
|
||||
(progn
|
||||
(alert (strcat "Berechnete Staustreckenlaenge ungueltig: "
|
||||
(rtos L_stau 2 2) " mm\n"
|
||||
"Bitte groesseres deltaL oder kleineren Winkel waehlen."))
|
||||
(alert (ssg-textf "gf-alert-staustrecke-ungueltig" (list (rtos L_stau 2 2))))
|
||||
(exit)
|
||||
)
|
||||
)
|
||||
|
||||
;; Zusammenfassung
|
||||
(princ "\n\n=========================================")
|
||||
(princ (strcat "\n>>> Fahrtrichtung: " (rtos hz-winkel 2 1) grad-zeichen))
|
||||
(princ (strcat "\n>>> Winkel: " (rtos winkel 2 1) grad-zeichen))
|
||||
(princ (strcat "\n>>> AUS-Seite: " as-seite))
|
||||
(princ (strcat "\n>>> EIN-Seite: " es-seite))
|
||||
(princ (strcat "\n>>> L_stau: " (rtos L_stau 2 2) " mm"))
|
||||
(princ (ssg-textf "gf-status-fahrtrichtung" (list (rtos hz-winkel 2 1) grad-zeichen)))
|
||||
(princ (ssg-textf "gf-status-zus2-winkel" (list (rtos winkel 2 1) grad-zeichen)))
|
||||
(princ (ssg-textf "gf-status-zus2-aus-seite" (list as-seite)))
|
||||
(princ (ssg-textf "gf-status-zus2-ein-seite" (list es-seite)))
|
||||
(princ (ssg-textf "gf-status-zus2-lstau" (list (rtos L_stau 2 2))))
|
||||
(princ "\n=========================================")
|
||||
|
||||
;; Bestaetigung
|
||||
(setq antwort (getstring "\nEinfuegen? (1=Ja / 2=Nein) [1]: "))
|
||||
(setq antwort (getstring (ssg-text "gf-prompt-einfuegen")))
|
||||
(if (not (= antwort "2"))
|
||||
(gefaellestrecke-einfuegen L_stau (fix winkel) startpunkt-fuer-einfuegen as-seite es-seite hz-winkel deltaL)
|
||||
(princ "\nAbgebrochen.")
|
||||
(princ (ssg-text "gf-status-abgebrochen"))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
+48
-54
@@ -1068,9 +1068,9 @@
|
||||
;; Aufsteigende, eindeutige ID vergeben (wie beim Kreisel), falls verfuegbar.
|
||||
(if (car (atoms-family 1 '("SSG-ID-GENERATE")))
|
||||
(ssg-id-generate vf-insert))
|
||||
(princ (strcat "\n>>> Block '" vf-bname "' erstellt und eingefuegt."))
|
||||
(princ (ssg-textf "vfc-block-erstellt-eingefuegt" (list vf-bname)))
|
||||
)
|
||||
(princ "\n>>> FEHLER: Keine Entities fuer Block gefunden!")
|
||||
(princ (ssg-text "vfc-fehler-keine-entities"))
|
||||
)
|
||||
)
|
||||
|
||||
@@ -1116,13 +1116,13 @@
|
||||
staustrecke-basis)
|
||||
|
||||
(princ "\n=========================================")
|
||||
(princ "\n VARIOFOERDERER GENERATOR v26.0")
|
||||
(princ (ssg-text "vfc-banner-titel"))
|
||||
(princ "\n=========================================")
|
||||
|
||||
;; 1. Typ aus Registry waehlen
|
||||
(if (null *vf-typ-registry*)
|
||||
(progn
|
||||
(alert "Keine Typen registriert!\nvf_standard.lsp und vf_etage.lsp pruefen.")
|
||||
(alert (ssg-text "vfc-alert-keine-typen"))
|
||||
(exit)
|
||||
)
|
||||
)
|
||||
@@ -1130,19 +1130,19 @@
|
||||
(if (and *vf-vorauswahl-typ* (assoc *vf-vorauswahl-typ* *vf-typ-registry*))
|
||||
(progn
|
||||
(setq typ-eintr (assoc *vf-vorauswahl-typ* *vf-typ-registry*))
|
||||
(princ (strcat "\n>>> Typ vorgewaehlt: " *vf-vorauswahl-typ*))
|
||||
(princ (ssg-textf "vfc-typ-vorgewaehlt" (list *vf-vorauswahl-typ*)))
|
||||
(setq *vf-vorauswahl-typ* nil)
|
||||
)
|
||||
(progn
|
||||
(setq *vf-vorauswahl-typ* nil)
|
||||
(princ "\n\nAnlagen-Typ waehlen:")
|
||||
(princ (ssg-text "vfc-anlagen-typ-header"))
|
||||
(setq idx 1)
|
||||
(foreach eintr *vf-typ-registry*
|
||||
(princ (strcat "\n " (itoa idx) " - " (nth 3 eintr)))
|
||||
(princ (ssg-textf "vfc-typ-option" (list idx (nth 3 eintr))))
|
||||
(setq idx (1+ idx))
|
||||
)
|
||||
(setq wahl (getint (strcat "\nIhre Wahl (1-"
|
||||
(itoa (length *vf-typ-registry*)) ") [1]: ")))
|
||||
(setq wahl (getint (ssg-textf "vfc-prompt-wahl-1-n"
|
||||
(list (length *vf-typ-registry*)))))
|
||||
(if (or (null wahl) (< wahl 1) (> wahl (length *vf-typ-registry*)))
|
||||
(setq wahl 1))
|
||||
(setq typ-eintr (nth (1- wahl) *vf-typ-registry*))
|
||||
@@ -1151,7 +1151,7 @@
|
||||
(setq anlage-typ (nth 0 typ-eintr))
|
||||
(setq berechne-fn (nth 1 typ-eintr))
|
||||
(setq einfuege-fn (nth 2 typ-eintr))
|
||||
(princ (strcat "\n>>> Typ: " anlage-typ))
|
||||
(princ (ssg-textf "vfc-typ-gewaehlt" (list anlage-typ)))
|
||||
|
||||
;; Sonderfall "linienzug": eigener Befehlsablauf (interaktive Mehrsegment-
|
||||
;; Kette mit gemischten GF/VF-Segmenten), passt nicht in das berechne-fn/
|
||||
@@ -1166,7 +1166,7 @@
|
||||
|
||||
;; 2. VF-Nummer automatisch ermitteln
|
||||
(setq vf-nummer (vf-next-number))
|
||||
(princ (strcat "\n>>> Naechste VF-Nummer: VF" (itoa vf-nummer)))
|
||||
(princ (ssg-textf "vfc-naechste-vf-nummer" (list (itoa vf-nummer))))
|
||||
|
||||
;; 3. Gemeinsame Eingabe (deltaL, deltaH, richtung, startpunkt) - richtung
|
||||
;; steht bei beiden Eingabemodi (Werteingabe UND 3D-Linie) bereits fest.
|
||||
@@ -1179,12 +1179,12 @@
|
||||
eingabe-modus (nth 5 eingabe))
|
||||
|
||||
;; 4. Seite-Auswahl (vor Berechnung, weil Etage-Typ sie fuer Geometrie braucht)
|
||||
(princ "\n\nSeite waehlen:")
|
||||
(princ "\n 1 - Rechts")
|
||||
(princ "\n 2 - Links")
|
||||
(setq antwort (getstring "\nIhre Wahl (1/2) [1]: "))
|
||||
(princ (ssg-text "vfc-seite-header"))
|
||||
(princ (ssg-text "vfc-seite-rechts"))
|
||||
(princ (ssg-text "vfc-seite-links"))
|
||||
(setq antwort (getstring (ssg-text "prompt-wahl-1-2")))
|
||||
(if (= antwort "2") (setq seite "links") (setq seite "rechts"))
|
||||
(princ (strcat "\n>>> Seite: " seite))
|
||||
(princ (ssg-textf "vfc-seite-gewaehlt" (list seite)))
|
||||
|
||||
;; 5. Typ-spezifische Berechnung (init + Winkelsuche)
|
||||
(setq ergebnis (apply berechne-fn (list deltaL deltaH richtung seite)))
|
||||
@@ -1203,7 +1203,7 @@
|
||||
(setq ergebnis-liste
|
||||
(append ergebnis-liste
|
||||
(list (list 0 (car horizontal-info) (cadr horizontal-info) T))))
|
||||
(princ "\n\n>>> Hinweis: Ein horizontale Variofoerderer ( 0°) ist bei diesem △L/△H zusaetzlich moeglich!")
|
||||
(princ (ssg-textf "vfc-hinweis-horizontal-moeglich" (list (chr 176) (chr 916))))
|
||||
)
|
||||
(setq horizontal-info nil)
|
||||
)
|
||||
@@ -1223,9 +1223,8 @@
|
||||
ergebnis-liste)))
|
||||
(if (null gueltige-winkel)
|
||||
(progn
|
||||
(alert (strcat "Kein passender Winkel gefunden!\n"
|
||||
"△L=" (rtos deltaL 2 0) " mm, △H="
|
||||
(rtos deltaH 2 0) " mm, Richtung=" richtung))
|
||||
(alert (ssg-textf "vfc-alert-kein-winkel"
|
||||
(list (chr 916) (rtos deltaL 2 0) (rtos deltaH 2 0) richtung)))
|
||||
(exit)
|
||||
)
|
||||
)
|
||||
@@ -1239,29 +1238,27 @@
|
||||
(setq eintrag (assoc best-winkel ergebnis-liste))
|
||||
(setq L_GF (nth 1 eintrag) L_VF (nth 2 eintrag))
|
||||
(if (= best-winkel 0)
|
||||
(princ "\n\n>>> Einzige gueltige Variante: Horizontale Variofoerderer")
|
||||
(princ (strcat "\n\n>>> Einziger gueltiger Winkel: "
|
||||
(itoa best-winkel) (chr 176)))
|
||||
(princ (ssg-text "vfc-einzige-variante-horizontal"))
|
||||
(princ (ssg-textf "vfc-einziger-winkel" (list (itoa best-winkel) (chr 176))))
|
||||
)
|
||||
)
|
||||
(progn
|
||||
(princ "\n\nMehrere gueltige Winkel verfuegbar. Bitte waehlen:")
|
||||
(princ (ssg-text "vfc-mehrere-winkel-header"))
|
||||
(setq idx 1)
|
||||
(foreach w gueltige-winkel
|
||||
(setq eintrag (assoc w ergebnis-liste))
|
||||
(if (= w 0)
|
||||
(princ (strcat "\n " (itoa idx) " - Horizontale Variofoerderer (0"
|
||||
(chr 176) ")"
|
||||
" (L_GF=" (rtos (nth 1 eintrag) 2 1)
|
||||
" mm, L_VF=" (rtos (nth 2 eintrag) 2 1) " mm)"))
|
||||
(princ (strcat "\n " (itoa idx) " - " (itoa w) (chr 176)
|
||||
" (L_GF=" (rtos (nth 1 eintrag) 2 1)
|
||||
" mm, L_VF=" (rtos (nth 2 eintrag) 2 1) " mm)"))
|
||||
(princ (ssg-textf "vfc-winkel-option-horizontal"
|
||||
(list idx (chr 176)
|
||||
(rtos (nth 1 eintrag) 2 1) (rtos (nth 2 eintrag) 2 1))))
|
||||
(princ (ssg-textf "vfc-winkel-option"
|
||||
(list idx (itoa w) (chr 176)
|
||||
(rtos (nth 1 eintrag) 2 1) (rtos (nth 2 eintrag) 2 1))))
|
||||
)
|
||||
(setq idx (1+ idx))
|
||||
)
|
||||
(setq wahl (getint (strcat "Winkel waehlen (1-"
|
||||
(itoa (length gueltige-winkel)) ") [1]: ")))
|
||||
(setq wahl (getint (ssg-textf "vfc-prompt-winkel-waehlen"
|
||||
(list (length gueltige-winkel)))))
|
||||
(if (or (null wahl) (< wahl 1) (> wahl (length gueltige-winkel)))
|
||||
(setq wahl 1))
|
||||
(setq best-winkel (nth (1- wahl) gueltige-winkel))
|
||||
@@ -1271,22 +1268,20 @@
|
||||
)
|
||||
(princ "\n\n=========================================")
|
||||
(if (= best-winkel 0)
|
||||
(princ (strcat "\n>>> Horizontale Variofoerderer"
|
||||
" L_GF: " (rtos L_GF 2 2) " mm"
|
||||
" L_VF: " (rtos L_VF 2 2) " mm"))
|
||||
(princ (strcat "\n>>> Winkel: " (itoa best-winkel) (chr 176)
|
||||
" L_GF: " (rtos L_GF 2 2) " mm"
|
||||
" L_VF: " (rtos L_VF 2 2) " mm"))
|
||||
(princ (ssg-textf "vfc-zus-horizontal"
|
||||
(list (rtos L_GF 2 2) (rtos L_VF 2 2))))
|
||||
(princ (ssg-textf "vfc-zus-winkel"
|
||||
(list (itoa best-winkel) (chr 176) (rtos L_GF 2 2) (rtos L_VF 2 2))))
|
||||
)
|
||||
(princ "\n=========================================")
|
||||
|
||||
;; 9. L_GF Verteilung
|
||||
(princ "\n\nVerteilung der Gefaellestrecken (vorne/hinten):")
|
||||
(princ "\n 1 - Gleichmaessig (L_GF1 = L_GF2 = L_GF/2)")
|
||||
(princ "\n 2 - Vorne Minimum, hinten Rest")
|
||||
(princ "\n 3 - Hinten Minimum, vorne Rest")
|
||||
(princ "\n 4 - Eigene Werte eingeben")
|
||||
(setq verteilung-modus (getstring "\nIhre Wahl (1/2/3/4) [1]: "))
|
||||
(princ (ssg-text "vfc-gf-verteilung-header"))
|
||||
(princ (ssg-text "vfc-gf-verteilung-1"))
|
||||
(princ (ssg-text "vfc-gf-verteilung-2"))
|
||||
(princ (ssg-text "vfc-gf-verteilung-3"))
|
||||
(princ (ssg-text "vfc-gf-verteilung-4"))
|
||||
(setq verteilung-modus (getstring (ssg-text "prompt-wahl-1-2-3-4")))
|
||||
(if (= verteilung-modus "") (setq verteilung-modus "1"))
|
||||
(cond
|
||||
((= verteilung-modus "1")
|
||||
@@ -1298,23 +1293,22 @@
|
||||
(setq L_GF2 (float staustrecke-basis))
|
||||
(setq L_GF1 (max 0.0 (- L_GF (float staustrecke-basis)))))
|
||||
((= verteilung-modus "4")
|
||||
(setq L_GF1 (getreal (strcat "\nL_GF1 vorne (mm) ["
|
||||
(rtos (/ L_GF 2.0) 2 2) "]: ")))
|
||||
(setq L_GF1 (getreal (ssg-textf "vfc-prompt-lgf1-vorne"
|
||||
(list (rtos (/ L_GF 2.0) 2 2)))))
|
||||
(if (null L_GF1) (setq L_GF1 (/ L_GF 2.0)))
|
||||
(setq L_GF2 (max 0.0 (- L_GF L_GF1)))
|
||||
(princ (strcat "\n L_GF2 hinten: " (rtos L_GF2 2 2) " mm")))
|
||||
(princ (ssg-textf "vfc-lgf2-hinten" (list (rtos L_GF2 2 2)))))
|
||||
(t (setq L_GF1 (/ L_GF 2.0) L_GF2 (/ L_GF 2.0)))
|
||||
)
|
||||
(princ (strcat "\n>>> L_GF1=" (rtos L_GF1 2 2)
|
||||
" mm L_GF2=" (rtos L_GF2 2 2) " mm"))
|
||||
(princ (ssg-textf "vfc-zus-lgf" (list (rtos L_GF1 2 2) (rtos L_GF2 2 2))))
|
||||
|
||||
;; Scanner-Anzahl wird nicht mehr abgefragt (Attribut ANZAHL_SCANNER bleibt 0).
|
||||
(setq n-scanner 0)
|
||||
|
||||
;; 11. Bestaetigung
|
||||
(princ "\n\nMoechten Sie die Foerderanlage einfuegen?")
|
||||
(princ "\n 1 - Ja, Module einfuegen\n 2 - Nein, abbrechen")
|
||||
(setq antwort (getstring "\nIhre Wahl (1/2): "))
|
||||
(princ (ssg-text "vfc-einfuegen-frage"))
|
||||
(princ (ssg-text "vfc-einfuegen-optionen"))
|
||||
(setq antwort (getstring (ssg-text "vfc-prompt-wahl-1-2-ohne-default")))
|
||||
|
||||
(if (= antwort "1")
|
||||
(progn
|
||||
@@ -1339,7 +1333,7 @@
|
||||
|
||||
(princ "\n=========================================")
|
||||
)
|
||||
(princ "\nVorgang abgebrochen.")
|
||||
(princ (ssg-text "vfc-vorgang-abgebrochen"))
|
||||
)
|
||||
nil
|
||||
)
|
||||
|
||||
+123
@@ -245,6 +245,11 @@
|
||||
"vfc-foerderrichtung-ab": "\n Foerderrichtung: AB",
|
||||
"vfc-foerderrichtung-auf": "Auf",
|
||||
"vfc-foerderrichtung-menu": "\nFoerderrichtung:\n 1 - AUF\n 2 - AB",
|
||||
"vfc-gf-verteilung-header": "\n\nVerteilung der Gefaellestrecken (vorne/hinten):",
|
||||
"vfc-gf-verteilung-1": "\n 1 - Gleichmaessig (L_GF1 = L_GF2 = L_GF/2)",
|
||||
"vfc-gf-verteilung-2": "\n 2 - Vorne Minimum, hinten Rest",
|
||||
"vfc-gf-verteilung-3": "\n 3 - Hinten Minimum, vorne Rest",
|
||||
"vfc-gf-verteilung-4": "\n 4 - Eigene Werte eingeben",
|
||||
"vfc-kein-objekt-gewaehlt": "\n Kein Objekt gewaehlt.",
|
||||
"vfc-label-von-bis": ": von %1mm bis %2mm, ",
|
||||
"vfc-linie-polylinie-waehlen": "\n >> 3D-Linie oder Polylinie waehlen: ",
|
||||
@@ -258,6 +263,36 @@
|
||||
"vfc-prompt-wahl-1-2-ohne-default": "\nIhre Wahl (1/2): ",
|
||||
"vfc-status-ok": " OK",
|
||||
"vfc-warnung-ks-nicht-gefunden": "\n WARNUNG: KS_EIN/KS_AUS nicht gefunden!",
|
||||
"vfc-block-erstellt-eingefuegt": "\n>>> Block '%1' erstellt und eingefuegt.",
|
||||
"vfc-fehler-keine-entities": "\n>>> FEHLER: Keine Entities fuer Block gefunden!",
|
||||
"vfc-banner-titel": "\n VARIOFOERDERER GENERATOR v26.0",
|
||||
"vfc-alert-keine-typen": "Keine Typen registriert!\nvf_standard.lsp und vf_etage.lsp pruefen.",
|
||||
"vfc-typ-vorgewaehlt": "\n>>> Typ vorgewaehlt: %1",
|
||||
"vfc-anlagen-typ-header": "\n\nAnlagen-Typ waehlen:",
|
||||
"vfc-typ-option": "\n %1 - %2",
|
||||
"vfc-prompt-wahl-1-n": "\nIhre Wahl (1-%1) [1]: ",
|
||||
"vfc-typ-gewaehlt": "\n>>> Typ: %1",
|
||||
"vfc-naechste-vf-nummer": "\n>>> Naechste VF-Nummer: VF%1",
|
||||
"vfc-seite-header": "\n\nSeite waehlen:",
|
||||
"vfc-seite-rechts": "\n 1 - Rechts",
|
||||
"vfc-seite-links": "\n 2 - Links",
|
||||
"vfc-seite-gewaehlt": "\n>>> Seite: %1",
|
||||
"vfc-hinweis-horizontal-moeglich": "\n\n>>> Hinweis: Ein horizontale Variofoerderer ( 0%1) ist bei diesem %2L/%2H zusaetzlich moeglich!",
|
||||
"vfc-alert-kein-winkel": "Kein passender Winkel gefunden!\n%1L=%2 mm, %1H=%3 mm, Richtung=%4",
|
||||
"vfc-einzige-variante-horizontal": "\n\n>>> Einzige gueltige Variante: Horizontale Variofoerderer",
|
||||
"vfc-einziger-winkel": "\n\n>>> Einziger gueltiger Winkel: %1%2",
|
||||
"vfc-mehrere-winkel-header": "\n\nMehrere gueltige Winkel verfuegbar. Bitte waehlen:",
|
||||
"vfc-winkel-option-horizontal": "\n %1 - Horizontale Variofoerderer (0%2) (L_GF=%3 mm, L_VF=%4 mm)",
|
||||
"vfc-winkel-option": "\n %1 - %2%3 (L_GF=%4 mm, L_VF=%5 mm)",
|
||||
"vfc-prompt-winkel-waehlen": "Winkel waehlen (1-%1) [1]: ",
|
||||
"vfc-zus-horizontal": "\n>>> Horizontale Variofoerderer L_GF: %1 mm L_VF: %2 mm",
|
||||
"vfc-zus-winkel": "\n>>> Winkel: %1%2 L_GF: %3 mm L_VF: %4 mm",
|
||||
"vfc-prompt-lgf1-vorne": "\nL_GF1 vorne (mm) [%1]: ",
|
||||
"vfc-lgf2-hinten": "\n L_GF2 hinten: %1 mm",
|
||||
"vfc-zus-lgf": "\n>>> L_GF1=%1 mm L_GF2=%2 mm",
|
||||
"vfc-einfuegen-frage": "\n\nMoechten Sie die Foerderanlage einfuegen?",
|
||||
"vfc-einfuegen-optionen": "\n 1 - Ja, Module einfuegen\n 2 - Nein, abbrechen",
|
||||
"vfc-vorgang-abgebrochen": "\nVorgang abgebrochen.",
|
||||
"vfe-alert-bib-nicht-init": "Etage-Bibliothek nicht initialisiert!",
|
||||
"vfe-berechnung-header": "\n ETAGE-BERECHNUNG FUER ALLE WINKEL",
|
||||
"vfe-bib-bereits-init": "\n Etage-Bibliothek bereits initialisiert.",
|
||||
@@ -401,6 +436,94 @@
|
||||
"gf-seite-links": "\n 1 - Links",
|
||||
"gf-seite-rechts": "\n 2 - Rechts",
|
||||
"prompt-wahl-1-2": "\nIhre Wahl (1/2) [1]: ",
|
||||
"prompt-wahl-1-2-3": "\nIhre Wahl (1/2/3) [1]: ",
|
||||
"gf-lade-block": "\n Lade Block: %1 ...",
|
||||
"gf-status-ok": " OK",
|
||||
"gf-warnung-kette-unterbrochen": "\n WARNUNG: Kette unterbrochen!",
|
||||
"gf-status-nennlaenge": "\n Gesamte Nennlaenge (inkl. Bogen-dx): %1 mm",
|
||||
"gf-status-feste-hoehenanteile": "\n Feste Hoehenanteile (AS/ES-dz + Bogen-dz): %1 mm",
|
||||
"gf-status-dz-detail": "\n aus-dz=%1 ein-dz=%2 Bogen-dz=%3",
|
||||
"gf-status-resthoehe": "\n Effektive Resthoehe fuer Grade: %1 mm",
|
||||
"gf-warnung-keine-geraden": "\n WARNUNG: keine geraden Strecken -> Fallback 3 Grad",
|
||||
"gf-warnung-feste-anteile": "\n WARNUNG: feste Anteile > deltaH -> Fallback 1 Grad",
|
||||
"gf-status-naeherungswinkel": "\n>>> Naeherungswinkel: %1%2",
|
||||
"gf-status-linie-staustrecke": "\n\n%1/%2: Staustrecke L=%3 mm hz=%4%5 v=%6%7",
|
||||
"gf-status-separator-vor-bogen": "\n\n%1S/%2: Separator 300mm (vor Bogen) hz=%3%4 v=%5%6",
|
||||
"gf-status-bogen-einfuegen": "\n\n%1/%2: %3 hz=%4%5",
|
||||
"gf-status-linienzug-eingefuegt": "\n>>> Linienzug-Gefaellestrecke eingefuegt! <<<",
|
||||
"gf-modus3-header": "\n\n>>> MODUS 3: Linienzug auswaehlen <<<",
|
||||
"gf-modus3-hinweis1": "\nBitte alle Linien (LINE) und Boegen (ARC) des Pfades auswaehlen,",
|
||||
"gf-modus3-hinweis2": "\ndann ENTER druecken:",
|
||||
"gf-fehler-keine-objekte": "\nKeine Objekte ausgewaehlt!",
|
||||
"gf-status-objekte-ausgewaehlt": "\n %1 Objekte ausgewaehlt.",
|
||||
"gf-prompt-startpunkt-kette": "\nStartpunkt (3D) waehlen - KS_EIN AUS-Element / Kettenanfang: ",
|
||||
"gf-fehler-kein-startpunkt": "\nKein Startpunkt!",
|
||||
"gf-prompt-endpunkt-kette": "\nEndpunkt (3D) waehlen - KS_AUS EIN-Element / Kettenende: ",
|
||||
"gf-fehler-kein-endpunkt": "\nKein Endpunkt!",
|
||||
"gf-status-deltah-3dpunkte": "\n %1H aus 3D-Punkten: %2 mm",
|
||||
"gf-status-sortiere-segmente": "\n Sortiere Segmente ...",
|
||||
"gf-alert-keine-kette": "Keine verbundene Kette gefunden!",
|
||||
"gf-status-segmente-gefunden": " %1 Segmente gefunden.",
|
||||
"gf-status-segment-analyse-header": "\n\n--- Segment-Analyse (Laengen nach Kuerzung) ---",
|
||||
"gf-status-segment-linie": "\n %1. Linie L=%2 mm hz=%3%4",
|
||||
"gf-status-segment-bogen": "\n %1. Bogen %2%3 %4 hz-Eingang=%5%6",
|
||||
"gf-status-seg-erste-linie": "\n Seg %1 (1. Linie): -%2 mm (AUS-Element)",
|
||||
"gf-status-linie-vor-bogen": "\n Jede Linie vor Bogen: -300 mm (Bogen-Separator)",
|
||||
"gf-status-seg-letzte-linie": "\n Seg %1 (letzte Linie): -300 mm (EIN-Sep) -%2 mm (EIN-Element)",
|
||||
"gf-status-eintrittsrichtung": "\n Eintrittsrichtung: %1%2",
|
||||
"gf-status-austrittsrichtung": "\n Austrittsrichtung: %1%2",
|
||||
"gf-status-berechne-winkel": "\n\n Berechne Gefaellewinkel aus Geometrie ...",
|
||||
"gf-prompt-winkel-verwenden": "\nBerechneten Winkel %1%2 verwenden? (j/n) [j]: ",
|
||||
"gf-prompt-gefaellewinkel": "\nGefaellewinkel (Grad): ",
|
||||
"gf-status-messe-absenkung": "\n Messe tatsaechliche AS/ES-Absenkung (iterativ) ...",
|
||||
"gf-warnung-korrektur-bereich": "\n WARNUNG: Korrektur ausserhalb Bereich, Winkel unveraendert",
|
||||
"gf-status-as-es-mm": "\n AS: %1 mm ES: %2 mm",
|
||||
"gf-status-korrigierter-winkel": "\n>>> Korrigierter Gefaellewinkel: %1%2 (nach %3 Iter.)",
|
||||
"gf-status-zus-segmente": "\n>>> Segmente: %1",
|
||||
"gf-status-zus-deltah": "\n>>> %1H: %2 mm",
|
||||
"gf-status-zus-deltal": "\n>>> %1L: %2 mm",
|
||||
"gf-status-zus-winkel": "\n>>> Gefaellewinkel: %1%2",
|
||||
"gf-status-zus-eintrittswinkel": "\n>>> Eintrittswinkel: %1%2",
|
||||
"gf-status-zus-austrittswinkel": "\n>>> Austrittswinkel: %1%2",
|
||||
"gf-status-zus-aus-element": "\n>>> AUS-Element: %1",
|
||||
"gf-status-zus-ein-element": "\n>>> EIN-Element: %1",
|
||||
"gf-prompt-einfuegen": "\nEinfuegen? (1=Ja / 2=Nein) [1]: ",
|
||||
"gf-status-aus-element-detail": "\n\n>>> AUS-Element: %1 Fahrtrichtung=%2%3 KS_EIN-hz=%4%5 Z=%6",
|
||||
"gf-status-separator-vor-ein": "\n>>> Separator vor EIN-Element",
|
||||
"gf-status-ein-element-detail": "\n>>> EIN-Element: %1 Ziel-Z=%2",
|
||||
"gf-status-z-hoehe-ks-aus": "\n Z-Hoehe KS_AUS: %1 mm",
|
||||
"gf-status-fertig": "\n>>> Fertig! <<<",
|
||||
"gf-status-abgebrochen": "\nAbgebrochen.",
|
||||
"gf-status-gf-block-erstellt": "\n>>> GF-Block erstellt: %1 (%2)",
|
||||
"gf-status-schritt1-aus": "\n\n1/4: %1 Fahrtrichtung=%2%3 KS_EIN-hz=%4%5 v=%6%7",
|
||||
"gf-status-schritt2-staustrecke": "\n\n2/4: Staustrecke L=%1 mm hz=%2%3 v=%4%5",
|
||||
"gf-status-schritt3-separator": "\n\n3/4: Separator 300mm hz=%1%2 v=%3%4",
|
||||
"gf-status-schritt4-ein": "\n\n4/4: %1",
|
||||
"gf-status-erfolgreich-eingefuegt": "\n>>> Gefaellestrecke erfolgreich eingefuegt! <<<",
|
||||
"gf-banner-titel": "\n GEFAELLESTRECKE GENERATOR v2.0",
|
||||
"gf-banner-richtung": "\n Richtung: immer AB (nach unten)",
|
||||
"gf-alert-init-fehler": "Fehler beim Initialisieren der Bibliothek!\nBitte DXFM_DATA pruefen.",
|
||||
"gf-eingabemodus-header": "\n\nEingabemodus waehlen:",
|
||||
"gf-eingabemodus-1": "\n 1 - Werte manuell eingeben (einfache Strecke)",
|
||||
"gf-eingabemodus-2": "\n 2 - 3D-Linie auswaehlen (einfache Strecke)",
|
||||
"gf-eingabemodus-3": "\n 3 - Linienzug (LINE + ARC) auswaehlen mit Gefaellebogen",
|
||||
"gf-modus1-header": "\n\n>>> MODUS 1: Manuelle Werteingabe <<<",
|
||||
"gf-prompt-startpunkt-aus": "\nStartpunkt fuer AUS-Element waehlen: ",
|
||||
"gf-prompt-deltal-abstand": "\n%1L - Abstand (mm): ",
|
||||
"gf-modus2-header": "\n\n>>> MODUS 2: 3D-Linie auswaehlen <<<",
|
||||
"gf-status-bks-welt": "\n BKS auf Weltkoordinaten gesetzt.",
|
||||
"gf-prompt-3dlinie-richtung": "\nBitte 3D-Linie fuer Richtung und Laenge auswaehlen:",
|
||||
"gf-alert-keine-linie": "Keine gueltige Linie ausgewaehlt!",
|
||||
"gf-status-fahrtrichtung-linie": "\n Fahrtrichtung: %1%2 (aus Linie)",
|
||||
"gf-status-deltal-mm": "\n %1L = %2 mm",
|
||||
"gf-prompt-gefaellewinkel-def3": "\n\nGefaellewinkel (Grad) [3]: ",
|
||||
"gf-status-winkel": "\n>>> Winkel: %1%2",
|
||||
"gf-status-fahrtrichtung": "\n>>> Fahrtrichtung: %1%2",
|
||||
"gf-alert-staustrecke-ungueltig": "Berechnete Staustreckenlaenge ungueltig: %1 mm\nBitte groesseres deltaL oder kleineren Winkel waehlen.",
|
||||
"gf-status-zus2-winkel": "\n>>> Winkel: %1%2",
|
||||
"gf-status-zus2-aus-seite": "\n>>> AUS-Seite: %1",
|
||||
"gf-status-zus2-ein-seite": "\n>>> EIN-Seite: %1",
|
||||
"gf-status-zus2-lstau": "\n>>> L_stau: %1 mm",
|
||||
"ques-yn-default-yes": " Y/N <Y>: ",
|
||||
"ques-yn-default-no": " Y/N <N>: "
|
||||
}
|
||||
|
||||
+123
@@ -245,6 +245,11 @@
|
||||
"vfc-foerderrichtung-ab": "\n Conveying direction: DOWN",
|
||||
"vfc-foerderrichtung-auf": "Up",
|
||||
"vfc-foerderrichtung-menu": "\nConveying direction:\n 1 - UP\n 2 - DOWN",
|
||||
"vfc-gf-verteilung-header": "\n\nDistribution of slope sections (front/rear):",
|
||||
"vfc-gf-verteilung-1": "\n 1 - Even (L_GF1 = L_GF2 = L_GF/2)",
|
||||
"vfc-gf-verteilung-2": "\n 2 - Front minimum, rear remainder",
|
||||
"vfc-gf-verteilung-3": "\n 3 - Rear minimum, front remainder",
|
||||
"vfc-gf-verteilung-4": "\n 4 - Enter custom values",
|
||||
"vfc-kein-objekt-gewaehlt": "\n No object selected.",
|
||||
"vfc-label-von-bis": ": from %1mm to %2mm, ",
|
||||
"vfc-linie-polylinie-waehlen": "\n >> Select 3D line or polyline: ",
|
||||
@@ -258,6 +263,36 @@
|
||||
"vfc-prompt-wahl-1-2-ohne-default": "\nYour choice (1/2): ",
|
||||
"vfc-status-ok": " OK",
|
||||
"vfc-warnung-ks-nicht-gefunden": "\n WARNING: KS_EIN/KS_AUS not found!",
|
||||
"vfc-block-erstellt-eingefuegt": "\n>>> Block '%1' created and inserted.",
|
||||
"vfc-fehler-keine-entities": "\n>>> ERROR: No entities found for block!",
|
||||
"vfc-banner-titel": "\n VARIOFOERDERER GENERATOR v26.0",
|
||||
"vfc-alert-keine-typen": "No types registered!\nCheck vf_standard.lsp and vf_etage.lsp.",
|
||||
"vfc-typ-vorgewaehlt": "\n>>> Type preselected: %1",
|
||||
"vfc-anlagen-typ-header": "\n\nSelect system type:",
|
||||
"vfc-typ-option": "\n %1 - %2",
|
||||
"vfc-prompt-wahl-1-n": "\nYour choice (1-%1) [1]: ",
|
||||
"vfc-typ-gewaehlt": "\n>>> Type: %1",
|
||||
"vfc-naechste-vf-nummer": "\n>>> Next VF number: VF%1",
|
||||
"vfc-seite-header": "\n\nSelect side:",
|
||||
"vfc-seite-rechts": "\n 1 - Right",
|
||||
"vfc-seite-links": "\n 2 - Left",
|
||||
"vfc-seite-gewaehlt": "\n>>> Side: %1",
|
||||
"vfc-hinweis-horizontal-moeglich": "\n\n>>> Note: a horizontal VarioFoerderer ( 0%1) is additionally possible for this %2L/%2H!",
|
||||
"vfc-alert-kein-winkel": "No suitable angle found!\n%1L=%2 mm, %1H=%3 mm, direction=%4",
|
||||
"vfc-einzige-variante-horizontal": "\n\n>>> Only valid variant: horizontal VarioFoerderer",
|
||||
"vfc-einziger-winkel": "\n\n>>> Only valid angle: %1%2",
|
||||
"vfc-mehrere-winkel-header": "\n\nSeveral valid angles available. Please choose:",
|
||||
"vfc-winkel-option-horizontal": "\n %1 - Horizontal VarioFoerderer (0%2) (L_GF=%3 mm, L_VF=%4 mm)",
|
||||
"vfc-winkel-option": "\n %1 - %2%3 (L_GF=%4 mm, L_VF=%5 mm)",
|
||||
"vfc-prompt-winkel-waehlen": "Select angle (1-%1) [1]: ",
|
||||
"vfc-zus-horizontal": "\n>>> Horizontal VarioFoerderer L_GF: %1 mm L_VF: %2 mm",
|
||||
"vfc-zus-winkel": "\n>>> Angle: %1%2 L_GF: %3 mm L_VF: %4 mm",
|
||||
"vfc-prompt-lgf1-vorne": "\nL_GF1 front (mm) [%1]: ",
|
||||
"vfc-lgf2-hinten": "\n L_GF2 rear: %1 mm",
|
||||
"vfc-zus-lgf": "\n>>> L_GF1=%1 mm L_GF2=%2 mm",
|
||||
"vfc-einfuegen-frage": "\n\nDo you want to insert the conveyor system?",
|
||||
"vfc-einfuegen-optionen": "\n 1 - Yes, insert modules\n 2 - No, cancel",
|
||||
"vfc-vorgang-abgebrochen": "\nProcess cancelled.",
|
||||
"vfe-alert-bib-nicht-init": "Etage library not initialised!",
|
||||
"vfe-berechnung-header": "\n ETAGE CALCULATION FOR ALL ANGLES",
|
||||
"vfe-bib-bereits-init": "\n Etage library already initialised.",
|
||||
@@ -401,6 +436,94 @@
|
||||
"gf-seite-links": "\n 1 - Left",
|
||||
"gf-seite-rechts": "\n 2 - Right",
|
||||
"prompt-wahl-1-2": "\nYour choice (1/2) [1]: ",
|
||||
"prompt-wahl-1-2-3": "\nYour choice (1/2/3) [1]: ",
|
||||
"gf-lade-block": "\n Loading block: %1 ...",
|
||||
"gf-status-ok": " OK",
|
||||
"gf-warnung-kette-unterbrochen": "\n WARNING: chain interrupted!",
|
||||
"gf-status-nennlaenge": "\n Total nominal length (incl. arc dx): %1 mm",
|
||||
"gf-status-feste-hoehenanteile": "\n Fixed height components (AS/ES dz + arc dz): %1 mm",
|
||||
"gf-status-dz-detail": "\n aus-dz=%1 ein-dz=%2 arc-dz=%3",
|
||||
"gf-status-resthoehe": "\n Effective remaining height for straights: %1 mm",
|
||||
"gf-warnung-keine-geraden": "\n WARNING: no straight sections -> fallback 3 deg",
|
||||
"gf-warnung-feste-anteile": "\n WARNING: fixed components > deltaH -> fallback 1 deg",
|
||||
"gf-status-naeherungswinkel": "\n>>> Approximate angle: %1%2",
|
||||
"gf-status-linie-staustrecke": "\n\n%1/%2: Buffer section L=%3 mm hz=%4%5 v=%6%7",
|
||||
"gf-status-separator-vor-bogen": "\n\n%1S/%2: Separator 300mm (before arc) hz=%3%4 v=%5%6",
|
||||
"gf-status-bogen-einfuegen": "\n\n%1/%2: %3 hz=%4%5",
|
||||
"gf-status-linienzug-eingefuegt": "\n>>> Polyline slope section inserted! <<<",
|
||||
"gf-modus3-header": "\n\n>>> MODE 3: Select polyline <<<",
|
||||
"gf-modus3-hinweis1": "\nPlease select all lines (LINE) and arcs (ARC) of the path,",
|
||||
"gf-modus3-hinweis2": "\nthen press ENTER:",
|
||||
"gf-fehler-keine-objekte": "\nNo objects selected!",
|
||||
"gf-status-objekte-ausgewaehlt": "\n %1 objects selected.",
|
||||
"gf-prompt-startpunkt-kette": "\nSelect start point (3D) - KS_EIN output element / chain start: ",
|
||||
"gf-fehler-kein-startpunkt": "\nNo start point!",
|
||||
"gf-prompt-endpunkt-kette": "\nSelect end point (3D) - KS_AUS input element / chain end: ",
|
||||
"gf-fehler-kein-endpunkt": "\nNo end point!",
|
||||
"gf-status-deltah-3dpunkte": "\n %1H from 3D points: %2 mm",
|
||||
"gf-status-sortiere-segmente": "\n Sorting segments ...",
|
||||
"gf-alert-keine-kette": "No connected chain found!",
|
||||
"gf-status-segmente-gefunden": " %1 segments found.",
|
||||
"gf-status-segment-analyse-header": "\n\n--- Segment analysis (lengths after trimming) ---",
|
||||
"gf-status-segment-linie": "\n %1. Line L=%2 mm hz=%3%4",
|
||||
"gf-status-segment-bogen": "\n %1. Arc %2%3 %4 hz-input=%5%6",
|
||||
"gf-status-seg-erste-linie": "\n Seg %1 (1st line): -%2 mm (output element)",
|
||||
"gf-status-linie-vor-bogen": "\n Each line before arc: -300 mm (arc separator)",
|
||||
"gf-status-seg-letzte-linie": "\n Seg %1 (last line): -300 mm (input sep) -%2 mm (input element)",
|
||||
"gf-status-eintrittsrichtung": "\n Entry direction: %1%2",
|
||||
"gf-status-austrittsrichtung": "\n Exit direction: %1%2",
|
||||
"gf-status-berechne-winkel": "\n\n Calculating slope angle from geometry ...",
|
||||
"gf-prompt-winkel-verwenden": "\nUse calculated angle %1%2? (y/n) [y]: ",
|
||||
"gf-prompt-gefaellewinkel": "\nSlope angle (degrees): ",
|
||||
"gf-status-messe-absenkung": "\n Measuring actual AS/ES drop (iterative) ...",
|
||||
"gf-warnung-korrektur-bereich": "\n WARNING: correction out of range, angle unchanged",
|
||||
"gf-status-as-es-mm": "\n AS: %1 mm ES: %2 mm",
|
||||
"gf-status-korrigierter-winkel": "\n>>> Corrected slope angle: %1%2 (after %3 iter.)",
|
||||
"gf-status-zus-segmente": "\n>>> Segments: %1",
|
||||
"gf-status-zus-deltah": "\n>>> %1H: %2 mm",
|
||||
"gf-status-zus-deltal": "\n>>> %1L: %2 mm",
|
||||
"gf-status-zus-winkel": "\n>>> Slope angle: %1%2",
|
||||
"gf-status-zus-eintrittswinkel": "\n>>> Entry angle: %1%2",
|
||||
"gf-status-zus-austrittswinkel": "\n>>> Exit angle: %1%2",
|
||||
"gf-status-zus-aus-element": "\n>>> Output element: %1",
|
||||
"gf-status-zus-ein-element": "\n>>> Input element: %1",
|
||||
"gf-prompt-einfuegen": "\nInsert? (1=Yes / 2=No) [1]: ",
|
||||
"gf-status-aus-element-detail": "\n\n>>> Output element: %1 travel dir=%2%3 KS_EIN-hz=%4%5 Z=%6",
|
||||
"gf-status-separator-vor-ein": "\n>>> Separator before input element",
|
||||
"gf-status-ein-element-detail": "\n>>> Input element: %1 target Z=%2",
|
||||
"gf-status-z-hoehe-ks-aus": "\n Z height KS_AUS: %1 mm",
|
||||
"gf-status-fertig": "\n>>> Done! <<<",
|
||||
"gf-status-abgebrochen": "\nCancelled.",
|
||||
"gf-status-gf-block-erstellt": "\n>>> GF block created: %1 (%2)",
|
||||
"gf-status-schritt1-aus": "\n\n1/4: %1 travel dir=%2%3 KS_EIN-hz=%4%5 v=%6%7",
|
||||
"gf-status-schritt2-staustrecke": "\n\n2/4: Buffer section L=%1 mm hz=%2%3 v=%4%5",
|
||||
"gf-status-schritt3-separator": "\n\n3/4: Separator 300mm hz=%1%2 v=%3%4",
|
||||
"gf-status-schritt4-ein": "\n\n4/4: %1",
|
||||
"gf-status-erfolgreich-eingefuegt": "\n>>> Slope section inserted successfully! <<<",
|
||||
"gf-banner-titel": "\n SLOPE SECTION GENERATOR v2.0",
|
||||
"gf-banner-richtung": "\n Direction: always DOWN",
|
||||
"gf-alert-init-fehler": "Error initialising the library!\nPlease check DXFM_DATA.",
|
||||
"gf-eingabemodus-header": "\n\nSelect input mode:",
|
||||
"gf-eingabemodus-1": "\n 1 - Enter values manually (simple section)",
|
||||
"gf-eingabemodus-2": "\n 2 - Select 3D line (simple section)",
|
||||
"gf-eingabemodus-3": "\n 3 - Select polyline (LINE + ARC) with slope arc",
|
||||
"gf-modus1-header": "\n\n>>> MODE 1: Manual value entry <<<",
|
||||
"gf-prompt-startpunkt-aus": "\nSelect start point for output element: ",
|
||||
"gf-prompt-deltal-abstand": "\n%1L - distance (mm): ",
|
||||
"gf-modus2-header": "\n\n>>> MODE 2: Select 3D line <<<",
|
||||
"gf-status-bks-welt": "\n UCS set to world coordinates.",
|
||||
"gf-prompt-3dlinie-richtung": "\nPlease select 3D line for direction and length:",
|
||||
"gf-alert-keine-linie": "No valid line selected!",
|
||||
"gf-status-fahrtrichtung-linie": "\n Travel direction: %1%2 (from line)",
|
||||
"gf-status-deltal-mm": "\n %1L = %2 mm",
|
||||
"gf-prompt-gefaellewinkel-def3": "\n\nSlope angle (degrees) [3]: ",
|
||||
"gf-status-winkel": "\n>>> Angle: %1%2",
|
||||
"gf-status-fahrtrichtung": "\n>>> Travel direction: %1%2",
|
||||
"gf-alert-staustrecke-ungueltig": "Calculated buffer section length invalid: %1 mm\nPlease choose larger deltaL or smaller angle.",
|
||||
"gf-status-zus2-winkel": "\n>>> Angle: %1%2",
|
||||
"gf-status-zus2-aus-seite": "\n>>> Output side: %1",
|
||||
"gf-status-zus2-ein-seite": "\n>>> Input side: %1",
|
||||
"gf-status-zus2-lstau": "\n>>> L_stau: %1 mm",
|
||||
"ques-yn-default-yes": " Y/N <Y>: ",
|
||||
"ques-yn-default-no": " Y/N <N>: "
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user