Geruest fuer Einzelmodul + Geruestoption bei Foerderer, Gefaellestrecke und Eckrad ergaenzt

Kreisel hatte GERUEST_EINZELMODUL bereits; ergaenzt um die neue Combobox
GERUEST_TYP (IPE-Geruest abgestuft / Obergeruest oben / Schoenenberger
Geruest / nur Doppelrohrtraeger, Default Schoenenberger Geruest) im
KreiselEdit-Dialog. VarioFoerderer (Standard-Dialog) und Gefaellestrecke
(Modus 1) erhalten beide Attribute neu in ihren DCL-Dialogen inkl.
Edit-Vorbelegung. ILS_Eckrad (kein Dialog vorhanden) fragt beide Werte
per Kommandozeilen-Menue ab. Konsolen-only-Pfade ohne Dialog (VF
Etage/Linienzug, GF Linienzug/3D-Objekte) bleiben auf Schema-Default,
analog zum bisherigen Kreisel-Verhalten.

Gemeinsame Optionsliste/Helper (*ssg-geruest-optionen*,
ssg-geruest-typ-to-idx/idx-to-typ, ssg-ask-geruest-typ) in ssg_core.lsp
war bereits durch einen parallelen Commit (120e26a) mit eingeflossen.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-23 10:35:10 +02:00
parent ad287b683d
commit 6396111777
11 changed files with 183 additions and 47 deletions
+61 -21
View File
@@ -1321,7 +1321,9 @@
;; delta-l-gf bereits vor der Zusammenfassung berechnet ;; delta-l-gf bereits vor der Zusammenfassung berechnet
;; Block mit allen Attributen erstellen ;; Block mit allen Attributen erstellen. Geruest fuer Einzelmodul/
;; Geruestoption sind in diesem Linienzug-Ablauf (Modus 3, keine DCL-
;; Eingabe) nicht abfragbar - bleiben auf Schema-Default.
(gf-block-erstellen (gf-block-erstellen
"gruppe" as-seite gf-nummer "gruppe" as-seite gf-nummer
(caddr startpunkt) (caddr startpunkt)
@@ -1336,7 +1338,7 @@
bR90 bR60 bR30 bR90 bR60 bR30
startpunkt last-ent nach-aus-pt entry-hz startpunkt last-ent nach-aus-pt entry-hz
(caddr (nth first-idx segmente)) (caddr (nth first-idx segmente))
es-seite) es-seite "0" "Schoenenberger Geruest")
(princ "\n\n=========================================") (princ "\n\n=========================================")
(princ (ssg-text "gf-status-fertig")) (princ (ssg-text "gf-status-fertig"))
@@ -1435,9 +1437,11 @@
bogen-L90 bogen-L60 bogen-L30 bogen-L90 bogen-L60 bogen-L30
bogen-R90 bogen-R60 bogen-R30 bogen-R90 bogen-R60 bogen-R30
startpunkt last-ent nach-aus-pt entry-hz L-first-seg startpunkt last-ent nach-aus-pt entry-hz L-first-seg
es-seite / es-seite geruest-einzelmodul geruest-typ /
gf-bname gf-ss ent gf-insert typ-str anzahl-gf gf-bname gf-ss ent gf-insert typ-str anzahl-gf
gf-winkel-str i gf-g10z gf-korr-dz gf-osmode-alt) gf-winkel-str i gf-g10z gf-korr-dz gf-osmode-alt)
(if (null geruest-einzelmodul) (setq geruest-einzelmodul "0"))
(if (null geruest-typ) (setq geruest-typ (ssg-geruest-idx-to-typ (ssg-geruest-typ-to-idx nil))))
;; Beschriftung: Mitte der ersten Geraden, 400mm senkrecht versetzt ;; Beschriftung: Mitte der ersten Geraden, 400mm senkrecht versetzt
(gf-make-label gf-nummer hoehe-von hoehe-bis deltaH deltaL (gf-make-label gf-nummer hoehe-von hoehe-bis deltaH deltaL
L-gf-str winkel n-separator nach-aus-pt entry-hz L-first-seg) L-gf-str winkel n-separator nach-aus-pt entry-hz L-first-seg)
@@ -1521,6 +1525,8 @@
(cons "GF_Bogen_R_30" (itoa bogen-R30)) (cons "GF_Bogen_R_30" (itoa bogen-R30))
(cons "ANZAHL_SEPARATOR" (itoa n-separator)) (cons "ANZAHL_SEPARATOR" (itoa n-separator))
(cons "ANZAHL_SCANNER" (itoa n-scanner)) (cons "ANZAHL_SCANNER" (itoa n-scanner))
(cons "GERUEST_EINZELMODUL" geruest-einzelmodul)
(cons "GERUEST_TYP" geruest-typ)
) )
) )
;; Aufsteigende, eindeutige ID vergeben (wie beim Kreisel), falls verfuegbar. ;; Aufsteigende, eindeutige ID vergeben (wie beim Kreisel), falls verfuegbar.
@@ -1536,8 +1542,10 @@
;; deltaL-total: gesamte Horizontaldistanz (fuer DELTA_L-Attribut) ;; deltaL-total: gesamte Horizontaldistanz (fuer DELTA_L-Attribut)
;; hz: Fahrtrichtung in Grad (0=Ost, 90=Nord, 180=West, 270=Sued) ;; hz: Fahrtrichtung in Grad (0=Ost, 90=Nord, 180=West, 270=Sued)
;; geruest-einzelmodul/geruest-typ: an gf-block-erstellen durchgereicht (Attribute
;; GERUEST_EINZELMODUL/GERUEST_TYP, siehe *ssg-geruest-optionen* in ssg_core.lsp)
(defun gefaellestrecke-einfuegen (L_stau winkel startpunkt as-seite es-seite hz deltaL-total (defun gefaellestrecke-einfuegen (L_stau winkel startpunkt as-seite es-seite hz deltaL-total
as-winkel es-winkel / as-winkel es-winkel geruest-einzelmodul geruest-typ /
as-block es-block endpunkt as-block es-block endpunkt
gf-nummer last-ent rad-hz rad-v xu-incl gf-nummer last-ent rad-hz rad-v xu-incl
ein-hz rad-ein xu-ein ein-hz rad-ein xu-ein
@@ -1637,7 +1645,7 @@
1 0 1 0
0 0 0 0 0 0 0 0 0 0 0 0
startpunkt last-ent nach-aus-pt (float hz) (float L_stau) startpunkt last-ent nach-aus-pt (float hz) (float L_stau)
es-seite)) es-seite geruest-einzelmodul geruest-typ))
;; Edit-Metadaten (Fahrtrichtung, Gefaellewinkel, Element-Winkel) als XDATA ;; Edit-Metadaten (Fahrtrichtung, Gefaellewinkel, Element-Winkel) als XDATA
;; auf das GF_N-INSERT schreiben, damit GEFAELLESTRECKE_EDIT die Strecke ;; auf das GF_N-INSERT schreiben, damit GEFAELLESTRECKE_EDIT die Strecke
@@ -1665,15 +1673,18 @@
;; um die Angabe der Einfuegehoehe (Z). ;; um die Angabe der Einfuegehoehe (Z).
;; prefill: Assoziationsliste zur Vorbelegung (fuer GEFAELLESTRECKE_EDIT) mit ;; prefill: Assoziationsliste zur Vorbelegung (fuer GEFAELLESTRECKE_EDIT) mit
;; Schluesseln "deltaL" "winkel" "hz" "as-seite" "es-seite" "einfuegehoehe" ;; Schluesseln "deltaL" "winkel" "hz" "as-seite" "es-seite" "einfuegehoehe"
;; "as-winkel" "es-winkel" - oder nil fuer Neuanlage (Modus 1) mit Defaults. ;; "as-winkel" "es-winkel" "geruest-einzelmodul" "geruest-typ" - oder nil
;; fuer Neuanlage (Modus 1) mit Defaults.
;; Rueckgabe: (deltaL winkel hz-winkel as-seite es-seite einfuegehoehe ;; Rueckgabe: (deltaL winkel hz-winkel as-seite es-seite einfuegehoehe
;; as-winkel es-winkel) ;; as-winkel es-winkel geruest-einzelmodul geruest-typ)
;; oder nil bei Abbruch / fehlendem Dialog. ;; oder nil bei Abbruch / fehlendem Dialog.
(defun gf-dialog-eingabe ( prefill hoehe-vorbelegung / dcl-pfad dat ergebnis (defun gf-dialog-eingabe ( prefill hoehe-vorbelegung / dcl-pfad dat ergebnis
dlg-deltal dlg-hoehe dlg-winkel dlg-deltal dlg-hoehe dlg-winkel
dlg-richtung dlg-aus dlg-ein dlg-richtung dlg-aus dlg-ein
dlg-aus-winkel dlg-ein-winkel dlg-aus-winkel dlg-ein-winkel
hz-winkel as-seite es-seite as-winkel es-winkel) dlg-geruest-einzelmodul dlg-geruest-typ
hz-winkel as-seite es-seite as-winkel es-winkel
geruest-einzelmodul geruest-typ)
(setq dcl-pfad (strcat (getenv "DXFM_DCL") "/gefaellestrecke.dcl")) (setq dcl-pfad (strcat (getenv "DXFM_DCL") "/gefaellestrecke.dcl"))
(setq dat (load_dialog dcl-pfad)) (setq dat (load_dialog dcl-pfad))
(if (not (new_dialog "gefaellestrecke" dat)) (if (not (new_dialog "gefaellestrecke" dat))
@@ -1740,6 +1751,14 @@
(set_tile "ein_seite" (set_tile "ein_seite"
(if (and prefill (equal (cdr (assoc "es-seite" prefill)) "rechts")) "1" "0")) (if (and prefill (equal (cdr (assoc "es-seite" prefill)) "rechts")) "1" "0"))
(set_tile "geruest_einzelmodul"
(if (and prefill (equal (cdr (assoc "geruest-einzelmodul" prefill)) "1")) "1" "0"))
(start_list "geruest_typ")
(foreach opt *ssg-geruest-optionen* (add_list opt))
(end_list)
(set_tile "geruest_typ"
(itoa (ssg-geruest-typ-to-idx (if prefill (cdr (assoc "geruest-typ" prefill)) nil))))
;; Actions ;; Actions
(action_tile "accept" (action_tile "accept"
(strcat (strcat
@@ -1751,6 +1770,8 @@
"(setq dlg-aus (get_tile \"aus_seite\"))" "(setq dlg-aus (get_tile \"aus_seite\"))"
"(setq dlg-ein-winkel (get_tile \"ein_winkel\"))" "(setq dlg-ein-winkel (get_tile \"ein_winkel\"))"
"(setq dlg-ein (get_tile \"ein_seite\"))" "(setq dlg-ein (get_tile \"ein_seite\"))"
"(setq dlg-geruest-einzelmodul (get_tile \"geruest_einzelmodul\"))"
"(setq dlg-geruest-typ (get_tile \"geruest_typ\"))"
"(done_dialog 1)" "(done_dialog 1)"
) )
) )
@@ -1776,6 +1797,8 @@
(setq es-seite (if (= dlg-ein "1") "rechts" "links")) (setq es-seite (if (= dlg-ein "1") "rechts" "links"))
(setq as-winkel (if (= dlg-aus-winkel "1") "30" "90")) (setq as-winkel (if (= dlg-aus-winkel "1") "30" "90"))
(setq es-winkel (if (= dlg-ein-winkel "1") "30" "90")) (setq es-winkel (if (= dlg-ein-winkel "1") "30" "90"))
(setq geruest-einzelmodul dlg-geruest-einzelmodul)
(setq geruest-typ (ssg-geruest-idx-to-typ (atoi dlg-geruest-typ)))
(list (list
(atof dlg-deltal) (atof dlg-deltal)
(atof dlg-winkel) (atof dlg-winkel)
@@ -1784,7 +1807,9 @@
es-seite es-seite
(atof dlg-hoehe) (atof dlg-hoehe)
as-winkel as-winkel
es-winkel) es-winkel
geruest-einzelmodul
geruest-typ)
) )
(t nil) (t nil)
) )
@@ -1800,7 +1825,8 @@
;; wurde (Modus 1) - dann entfaellt die zusaetzliche Konsolen-Rueckfrage. ;; wurde (Modus 1) - dann entfaellt die zusaetzliche Konsolen-Rueckfrage.
;; Modus 2 (reine Konsoleneingabe, kein Dialog) uebergibt nil/weglassen. ;; Modus 2 (reine Konsoleneingabe, kein Dialog) uebergibt nil/weglassen.
(defun gf-modus12-abschluss (deltaL winkel hz-winkel as-seite es-seite startpunkt (defun gf-modus12-abschluss (deltaL winkel hz-winkel as-seite es-seite startpunkt
as-winkel es-winkel dialog-bestaetigt / as-winkel es-winkel dialog-bestaetigt
geruest-einzelmodul geruest-typ /
rad sep-x L_stau antwort) rad sep-x L_stau antwort)
(if (null as-winkel) (setq as-winkel "90")) (if (null as-winkel) (setq as-winkel "90"))
(if (null es-winkel) (setq es-winkel "90")) (if (null es-winkel) (setq es-winkel "90"))
@@ -1838,7 +1864,8 @@
;; Bestaetigung - entfaellt, wenn bereits per Dialog-OK bestaetigt (Modus 1) ;; Bestaetigung - entfaellt, wenn bereits per Dialog-OK bestaetigt (Modus 1)
(setq antwort (if dialog-bestaetigt "1" (getstring (ssg-text "gf-prompt-einfuegen")))) (setq antwort (if dialog-bestaetigt "1" (getstring (ssg-text "gf-prompt-einfuegen"))))
(if (not (= antwort "2")) (if (not (= antwort "2"))
(gefaellestrecke-einfuegen L_stau (fix winkel) startpunkt as-seite es-seite hz-winkel deltaL as-winkel es-winkel) (gefaellestrecke-einfuegen L_stau (fix winkel) startpunkt as-seite es-seite hz-winkel deltaL as-winkel es-winkel
geruest-einzelmodul geruest-typ)
(princ (ssg-text "gf-status-abgebrochen")) (princ (ssg-text "gf-status-abgebrochen"))
) )
) )
@@ -1847,7 +1874,7 @@
;; setzen, L_stau berechnen und einfuegen - ohne Zusammenfassung/Rueckfrage. ;; setzen, L_stau berechnen und einfuegen - ohne Zusammenfassung/Rueckfrage.
;; Rueckgabe: (ename deltaH deltaL) von gefaellestrecke-einfuegen oder nil. ;; Rueckgabe: (ename deltaH deltaL) von gefaellestrecke-einfuegen oder nil.
(defun gf-rebuild (deltaL winkel hz-winkel as-seite es-seite startpunkt (defun gf-rebuild (deltaL winkel hz-winkel as-seite es-seite startpunkt
as-winkel es-winkel / as-winkel es-winkel geruest-einzelmodul geruest-typ /
rad sep-x L_stau) rad sep-x L_stau)
(if (null as-winkel) (setq as-winkel "90")) (if (null as-winkel) (setq as-winkel "90"))
(if (null es-winkel) (setq es-winkel "90")) (if (null es-winkel) (setq es-winkel "90"))
@@ -1863,7 +1890,8 @@
nil nil
) )
(gefaellestrecke-einfuegen (gefaellestrecke-einfuegen
L_stau (fix winkel) startpunkt as-seite es-seite hz-winkel deltaL as-winkel es-winkel) L_stau (fix winkel) startpunkt as-seite es-seite hz-winkel deltaL as-winkel es-winkel
geruest-einzelmodul geruest-typ)
) )
) )
@@ -1908,7 +1936,7 @@
as-seite es-seite gf-as-winkel gf-es-winkel as-seite es-seite gf-as-winkel gf-es-winkel
line-points startpunkt endpunkt differenz line-points startpunkt endpunkt differenz
deltaX deltaY startpunkt-fuer-einfuegen hz-winkel deltaX deltaY startpunkt-fuer-einfuegen hz-winkel
dlg-werte) dlg-werte gf-geruest-einzelmodul gf-geruest-typ)
(princ "\n=========================================") (princ "\n=========================================")
(princ (ssg-text "gf-banner-titel")) (princ (ssg-text "gf-banner-titel"))
@@ -1991,9 +2019,12 @@
(setq antwort (getstring (ssg-text "prompt-wahl-1-2"))) (setq antwort (getstring (ssg-text "prompt-wahl-1-2")))
(setq es-seite (if (= antwort "2") "rechts" "links")) (setq es-seite (if (= antwort "2") "rechts" "links"))
;; Gemeinsamer Abschluss (Masse, Laenge, Zusammenfassung, Einfuegen) ;; Gemeinsamer Abschluss (Masse, Laenge, Zusammenfassung, Einfuegen).
;; Geruest fuer Einzelmodul/Geruestoption sind in Modus 2 (reine
;; Konsoleneingabe, kein Dialog) nicht abfragbar - bleiben auf Default.
(gf-modus12-abschluss deltaL winkel hz-winkel as-seite es-seite (gf-modus12-abschluss deltaL winkel hz-winkel as-seite es-seite
startpunkt-fuer-einfuegen gf-as-winkel gf-es-winkel) startpunkt-fuer-einfuegen gf-as-winkel gf-es-winkel nil
"0" "Schoenenberger Geruest")
) )
;; Modus 1: Manuelle Eingabe via DCL-Dialog ;; Modus 1: Manuelle Eingabe via DCL-Dialog
@@ -2016,7 +2047,9 @@
as-seite (nth 3 dlg-werte) as-seite (nth 3 dlg-werte)
es-seite (nth 4 dlg-werte) es-seite (nth 4 dlg-werte)
gf-as-winkel (nth 6 dlg-werte) gf-as-winkel (nth 6 dlg-werte)
gf-es-winkel (nth 7 dlg-werte)) gf-es-winkel (nth 7 dlg-werte)
gf-geruest-einzelmodul (nth 8 dlg-werte)
gf-geruest-typ (nth 9 dlg-werte))
;; Einfuegehoehe = Dialogwert (nth 5), der mit der gepickten Hoehe ;; Einfuegehoehe = Dialogwert (nth 5), der mit der gepickten Hoehe
;; vorbelegt wurde. So gewinnt die gepickte Hoehe standardmaessig, ;; vorbelegt wurde. So gewinnt die gepickte Hoehe standardmaessig,
;; bleibt aber im Dialog editierbar. Nur diese Z-Hoehe zaehlt (X/Y ;; bleibt aber im Dialog editierbar. Nur diese Z-Hoehe zaehlt (X/Y
@@ -2032,7 +2065,8 @@
(setq winkel (ssg-cfg-or "gefaelle" "default_winkel" 3.0))) (setq winkel (ssg-cfg-or "gefaelle" "default_winkel" 3.0)))
;; Dialog-OK wurde bereits bestaetigt - keine zusaetzliche Rueckfrage ;; Dialog-OK wurde bereits bestaetigt - keine zusaetzliche Rueckfrage
(gf-modus12-abschluss deltaL winkel hz-winkel as-seite es-seite (gf-modus12-abschluss deltaL winkel hz-winkel as-seite es-seite
startpunkt-fuer-einfuegen gf-as-winkel gf-es-winkel T) startpunkt-fuer-einfuegen gf-as-winkel gf-es-winkel T
gf-geruest-einzelmodul gf-geruest-typ)
) )
) )
) )
@@ -2097,8 +2131,11 @@
(caddr gf-start))) (caddr gf-start)))
;; VF bauen; Rueckgabe (vf-insert vf-endpunkt), vf-endpunkt = tatsaechl. ;; VF bauen; Rueckgabe (vf-insert vf-endpunkt), vf-endpunkt = tatsaechl.
;; ES-KS_AUS als Weltpunkt (aus vfs-es-teil/insert-block-by-ks). ;; ES-KS_AUS als Weltpunkt (aus vfs-es-teil/insert-block-by-ks).
;; Geruest fuer Einzelmodul/Geruestoption sind fuer diesen automatisch
;; nebenan gebauten VF nicht abfragbar - bleiben auf Schema-Default.
(setq vf-erg (vfs-standard-dialog-berechnen-einfuegen (setq vf-erg (vfs-standard-dialog-berechnen-einfuegen
(vf-next-number) deltaL deltaH "Auf" vf-start hz-vf vf-seite nil)) (vf-next-number) deltaL deltaH "Auf" vf-start hz-vf vf-seite nil
"0" "Schoenenberger Geruest"))
(setq vf-insert (car vf-erg) vf-endpunkt (cadr vf-erg)) (setq vf-insert (car vf-erg) vf-endpunkt (cadr vf-erg))
;; Selbstkorrektur: fertigen VF-Block so verschieben, dass sein ;; Selbstkorrektur: fertigen VF-Block so verschieben, dass sein
;; tatsaechliches ES-KS_AUS exakt auf ziel-es faellt (analog GF_n-Move; ;; tatsaechliches ES-KS_AUS exakt auf ziel-es faellt (analog GF_n-Move;
@@ -2187,7 +2224,9 @@
(cons "es-seite" (cond ((cdr (assoc "SEITE_ES" attribs))) ("links"))) (cons "es-seite" (cond ((cdr (assoc "SEITE_ES" attribs))) ("links")))
(cons "einfuegehoehe" z-start) (cons "einfuegehoehe" z-start)
(cons "as-winkel" as-winkel) (cons "as-winkel" as-winkel)
(cons "es-winkel" es-winkel))) (cons "es-winkel" es-winkel)
(cons "geruest-einzelmodul" (cond ((cdr (assoc "GERUEST_EINZELMODUL" attribs))) ("0")))
(cons "geruest-typ" (cdr (assoc "GERUEST_TYP" attribs)))))
;; AS-Seite + untere Hoehe fuer den optionalen parallelen VF-Bau ;; AS-Seite + untere Hoehe fuer den optionalen parallelen VF-Bau
(setq as-seite (cond ((cdr (assoc "SEITE_AS" attribs))) ("links"))) (setq as-seite (cond ((cdr (assoc "SEITE_AS" attribs))) ("links")))
@@ -2213,7 +2252,8 @@
(nth 0 dlg-werte) (nth 1 dlg-werte) (nth 2 dlg-werte) (nth 0 dlg-werte) (nth 1 dlg-werte) (nth 2 dlg-werte)
(nth 3 dlg-werte) (nth 4 dlg-werte) (nth 3 dlg-werte) (nth 4 dlg-werte)
(list (car startpunkt) (cadr startpunkt) (nth 5 dlg-werte)) (list (car startpunkt) (cadr startpunkt) (nth 5 dlg-werte))
(nth 6 dlg-werte) (nth 7 dlg-werte)) (nth 6 dlg-werte) (nth 7 dlg-werte)
(nth 8 dlg-werte) (nth 9 dlg-werte))
(princ (ssg-textf "gf-edit-neu-aufgebaut" (list bname))) (princ (ssg-textf "gf-edit-neu-aufgebaut" (list bname)))
) )
) )
+22 -3
View File
@@ -87,6 +87,7 @@
("ANZAHL_SCANNER" "0") ("ANZAHL_SCANNER" "0")
("ANZAHL_RAMPEN" "0") ("ANZAHL_RAMPEN" "0")
("GERUEST_EINZELMODUL" "0") ("GERUEST_EINZELMODUL" "0")
("GERUEST_TYP" "Schoenenberger Geruest")
("DREHRICHTUNG" "UZS") ("DREHRICHTUNG" "UZS")
("DREHUNG" "0") ("DREHUNG" "0")
("NUMMER" "0")) ("NUMMER" "0"))
@@ -102,6 +103,8 @@
("DREHUNG" "0") ("DREHUNG" "0")
("NUMMER" "0") ("NUMMER" "0")
("HOEHE" "0") ("HOEHE" "0")
("GERUEST_EINZELMODUL" "0")
("GERUEST_TYP" "Schoenenberger Geruest")
("ID" "")) ("ID" ""))
) )
@@ -869,6 +872,7 @@
dcl-pfad dat ergebnis dcl-pfad dat ergebnis
dlg-name dlg-abstand dlg-hoehe dlg-ausrichtung dlg-name dlg-abstand dlg-hoehe dlg-ausrichtung
dlg-drehrichtung dlg-kreiselart dlg-geruest-einzelmodul dlg-drehrichtung dlg-kreiselart dlg-geruest-einzelmodul
dlg-geruest-typ
newAbstand newRotation ausrichtLabels) newAbstand newRotation ausrichtLabels)
;; Implied Selection VOR ssg-start pruefen (ssg-start hebt Selektion auf) ;; Implied Selection VOR ssg-start pruefen (ssg-start hebt Selektion auf)
@@ -966,6 +970,11 @@
(set_tile "geruest_einzelmodul" (set_tile "geruest_einzelmodul"
(if (equal (cdr (assoc "GERUEST_EINZELMODUL" attribs)) "1") "1" "0")) (if (equal (cdr (assoc "GERUEST_EINZELMODUL" attribs)) "1") "1" "0"))
(start_list "geruest_typ")
(foreach opt *ssg-geruest-optionen* (add_list opt))
(end_list)
(set_tile "geruest_typ" (itoa (ssg-geruest-typ-to-idx (cdr (assoc "GERUEST_TYP" attribs)))))
;; Actions ;; Actions
(action_tile "accept" (action_tile "accept"
(strcat (strcat
@@ -976,6 +985,7 @@
"(setq dlg-drehrichtung (get_tile \"drehrichtung\"))" "(setq dlg-drehrichtung (get_tile \"drehrichtung\"))"
"(setq dlg-kreiselart (get_tile \"kreiselart\"))" "(setq dlg-kreiselart (get_tile \"kreiselart\"))"
"(setq dlg-geruest-einzelmodul (get_tile \"geruest_einzelmodul\"))" "(setq dlg-geruest-einzelmodul (get_tile \"geruest_einzelmodul\"))"
"(setq dlg-geruest-typ (get_tile \"geruest_typ\"))"
"(done_dialog 1)" "(done_dialog 1)"
) )
) )
@@ -1004,6 +1014,8 @@
(assoc "DREHRICHTUNG" attribs) attribs)) (assoc "DREHRICHTUNG" attribs) attribs))
(setq attribs (subst (cons "GERUEST_EINZELMODUL" dlg-geruest-einzelmodul) (setq attribs (subst (cons "GERUEST_EINZELMODUL" dlg-geruest-einzelmodul)
(assoc "GERUEST_EINZELMODUL" attribs) attribs)) (assoc "GERUEST_EINZELMODUL" attribs) attribs))
(setq attribs (subst (cons "GERUEST_TYP" (ssg-geruest-idx-to-typ (atoi dlg-geruest-typ)))
(assoc "GERUEST_TYP" attribs) attribs))
;; Alten Block loeschen ;; Alten Block loeschen
(command "_.ERASE" ent "") (command "_.ERASE" ent "")
@@ -1051,7 +1063,8 @@
;; 4. Hoehe aus Z-Koordinate oder manuell ;; 4. Hoehe aus Z-Koordinate oder manuell
;; -------------------------------------------- ;; --------------------------------------------
(defun c:ILS_Eckrad ( / ptTangent ptDir dx dy dist ux uy radius (defun c:ILS_Eckrad ( / ptTangent ptDir dx dy dist ux uy radius
centerPt rotation hoehe) centerPt rotation hoehe
geruest-einzelmodul geruest-typ)
(dbgf "c:ILS_Eckrad") (dbgf "c:ILS_Eckrad")
;; 1. Beruehrpunkt (Tangentenpunkt) ;; 1. Beruehrpunkt (Tangentenpunkt)
@@ -1106,8 +1119,14 @@
) )
(dbg 'hoehe) (dbg 'hoehe)
;; 5. Einfuegen (centerPt ist der Kreismittelpunkt) ;; 5. Geruest fuer Einzelmodul + Geruestoption abfragen
(ils-eckrad-insert (list (car centerPt) (cadr centerPt) hoehe) rotation nil) (setq geruest-einzelmodul (if (ssg-ques (ssg-text "kreisel-eckrad-geruest-frage") nil) "0" "1"))
(setq geruest-typ (ssg-ask-geruest-typ))
;; 6. Einfuegen (centerPt ist der Kreismittelpunkt)
(ils-eckrad-insert (list (car centerPt) (cadr centerPt) hoehe) rotation
(list (cons "GERUEST_EINZELMODUL" geruest-einzelmodul)
(cons "GERUEST_TYP" geruest-typ)))
(dbgreturn nil) (dbgreturn nil)
) )
+10 -1
View File
@@ -1073,8 +1073,11 @@
(defun vf-block-erstellen (anlage-typ seite vf-nummer n-scanner (defun vf-block-erstellen (anlage-typ seite vf-nummer n-scanner
hoehe-von hoehe-bis deltaH deltaL L_VF L_GF1 L_GF2 hoehe-von hoehe-bis deltaH deltaL L_VF L_GF1 L_GF2
richtung best-winkel startpunkt lastEnt hz richtung best-winkel startpunkt lastEnt hz
geruest-einzelmodul geruest-typ
/ vf-bname vf-ss vf-e vf-insert montagehoehe-m attdef-ypos L_GF_m-str) / vf-bname vf-ss vf-e vf-insert montagehoehe-m attdef-ypos L_GF_m-str)
(if (null hz) (setq hz 0.0)) (if (null hz) (setq hz 0.0))
(if (null geruest-einzelmodul) (setq geruest-einzelmodul "0"))
(if (null geruest-typ) (setq geruest-typ (ssg-geruest-idx-to-typ (ssg-geruest-typ-to-idx nil))))
;; Beschriftungstext erzeugen ;; Beschriftungstext erzeugen
(vf-make-label vf-nummer hoehe-von hoehe-bis deltaH deltaL L_VF L_GF1 L_GF2 (vf-make-label vf-nummer hoehe-von hoehe-bis deltaH deltaL L_VF L_GF1 L_GF2
richtung best-winkel 2 n-scanner startpunkt hz) richtung best-winkel 2 n-scanner startpunkt hz)
@@ -1145,6 +1148,8 @@
(cons "VF_WINKEL" (itoa best-winkel)) (cons "VF_WINKEL" (itoa best-winkel))
(cons "ANZAHL_SEPARATOR" "2") (cons "ANZAHL_SEPARATOR" "2")
(cons "ANZAHL_SCANNER" (itoa n-scanner)) (cons "ANZAHL_SCANNER" (itoa n-scanner))
(cons "GERUEST_EINZELMODUL" geruest-einzelmodul)
(cons "GERUEST_TYP" geruest-typ)
) )
) )
;; Typ-spezifische Bogen-Zaehler (Etage: 2x Gefaellebogen je Seite) ;; Typ-spezifische Bogen-Zaehler (Etage: 2x Gefaellebogen je Seite)
@@ -1447,10 +1452,14 @@
(list deltaL deltaH richtung best-winkel L_GF1 L_GF2 L_VF startpunkt seite hz)) (list deltaL deltaH richtung best-winkel L_GF1 L_GF2 L_VF startpunkt seite hz))
;; Gemeinsame VF_*-Block-Erstellung ;; Gemeinsame VF_*-Block-Erstellung
;; Geruest fuer Einzelmodul/Geruestoption sind in diesem interaktiven
;; Konsolen-Ablauf (Etage/Linienzug) nicht abfragbar - bleiben auf
;; Schema-Default (analog Kreisel: nur ueber Dialog editierbar).
(setq vf-insert (setq vf-insert
(vf-block-erstellen anlage-typ seite vf-nummer n-scanner (vf-block-erstellen anlage-typ seite vf-nummer n-scanner
hoehe-von hoehe-bis deltaH deltaL L_VF L_GF1 L_GF2 hoehe-von hoehe-bis deltaH deltaL L_VF L_GF1 L_GF2
richtung best-winkel startpunkt lastEnt hz)) richtung best-winkel startpunkt lastEnt hz
"0" "Schoenenberger Geruest"))
;; Standard-Bloecke aus dem interaktiven Konsolen-Ablauf ebenfalls mit der ;; Standard-Bloecke aus dem interaktiven Konsolen-Ablauf ebenfalls mit der
;; SSG_VF_EDIT-XDATA markieren - sie sind (wie die Dialog-Variante) aus ;; SSG_VF_EDIT-XDATA markieren - sie sind (wie die Dialog-Variante) aus
+39 -14
View File
@@ -709,15 +709,18 @@
;; ============================================================ ;; ============================================================
;; Basis-Eingabe (Dialog 1): deltaL, deltaH, Richtung, Einfuegehoehe, ;; Basis-Eingabe (Dialog 1): deltaL, deltaH, Richtung, Einfuegehoehe,
;; Fahrtrichtung, Seite. ;; Fahrtrichtung, Seite, Geruest fuer Einzelmodul, Geruestoption.
;; prefill: Assoziationsliste zur Vorbelegung (fuer VARIOFOERDERER_EDIT) mit ;; prefill: Assoziationsliste zur Vorbelegung (fuer VARIOFOERDERER_EDIT) mit
;; Schluesseln "deltaL" "deltaH" "richtung" "einfuegehoehe" "hz" "seite" ;; Schluesseln "deltaL" "deltaH" "richtung" "einfuegehoehe" "hz" "seite"
;; - oder nil fuer Neuanlage mit Defaults. ;; "geruest-einzelmodul" "geruest-typ" - oder nil fuer Neuanlage mit Defaults.
;; Rueckgabe: (deltaL deltaH richtung einfuegehoehe hz seite) oder nil bei Abbruch. ;; Rueckgabe: (deltaL deltaH richtung einfuegehoehe hz seite
;; geruest-einzelmodul geruest-typ) oder nil bei Abbruch.
(defun vfs-dialog-eingabe-basis (prefill / dcl-pfad dat ergebnis (defun vfs-dialog-eingabe-basis (prefill / dcl-pfad dat ergebnis
dlg-deltal dlg-deltah dlg-richtung dlg-hoehe dlg-deltal dlg-deltah dlg-richtung dlg-hoehe
dlg-fahrtrichtung dlg-seite dlg-fahrtrichtung dlg-seite
deltaL deltaH richtung hz seite z-start) dlg-geruest-einzelmodul dlg-geruest-typ
deltaL deltaH richtung hz seite z-start
geruest-einzelmodul geruest-typ)
(setq dcl-pfad (strcat (getenv "DXFM_DCL") "/variofoerderer.dcl")) (setq dcl-pfad (strcat (getenv "DXFM_DCL") "/variofoerderer.dcl"))
(setq dat (load_dialog dcl-pfad)) (setq dat (load_dialog dcl-pfad))
(if (not (new_dialog "variofoerderer_basis" dat)) (if (not (new_dialog "variofoerderer_basis" dat))
@@ -763,6 +766,14 @@
(set_tile "seite" (set_tile "seite"
(if (and prefill (equal (cdr (assoc "seite" prefill)) "links")) "1" "0")) (if (and prefill (equal (cdr (assoc "seite" prefill)) "links")) "1" "0"))
(set_tile "geruest_einzelmodul"
(if (and prefill (equal (cdr (assoc "geruest-einzelmodul" prefill)) "1")) "1" "0"))
(start_list "geruest_typ")
(foreach opt *ssg-geruest-optionen* (add_list opt))
(end_list)
(set_tile "geruest_typ"
(itoa (ssg-geruest-typ-to-idx (if prefill (cdr (assoc "geruest-typ" prefill)) nil))))
;; Actions ;; Actions
(action_tile "accept" (action_tile "accept"
(strcat (strcat
@@ -772,6 +783,8 @@
"(setq dlg-hoehe (get_tile \"einfuegehoehe\"))" "(setq dlg-hoehe (get_tile \"einfuegehoehe\"))"
"(setq dlg-fahrtrichtung (get_tile \"fahrtrichtung\"))" "(setq dlg-fahrtrichtung (get_tile \"fahrtrichtung\"))"
"(setq dlg-seite (get_tile \"seite\"))" "(setq dlg-seite (get_tile \"seite\"))"
"(setq dlg-geruest-einzelmodul (get_tile \"geruest_einzelmodul\"))"
"(setq dlg-geruest-typ (get_tile \"geruest_typ\"))"
"(done_dialog 1)" "(done_dialog 1)"
) )
) )
@@ -792,7 +805,9 @@
((= dlg-fahrtrichtung "3") 270.0) ((= dlg-fahrtrichtung "3") 270.0)
(t 0.0))) (t 0.0)))
(setq seite (if (= dlg-seite "1") "links" "rechts")) (setq seite (if (= dlg-seite "1") "links" "rechts"))
(list deltaL deltaH richtung z-start hz seite) (setq geruest-einzelmodul dlg-geruest-einzelmodul)
(setq geruest-typ (ssg-geruest-idx-to-typ (atoi dlg-geruest-typ)))
(list deltaL deltaH richtung z-start hz seite geruest-einzelmodul geruest-typ)
) )
nil nil
) )
@@ -944,7 +959,7 @@
;; winkel-prefill: Vorbelegung fuer vfs-dialog-winkel-verteilung oder nil. ;; winkel-prefill: Vorbelegung fuer vfs-dialog-winkel-verteilung oder nil.
;; ============================================================ ;; ============================================================
(defun vfs-standard-dialog-berechnen-einfuegen (vf-nummer deltaL deltaH richtung startpunkt hz seite (defun vfs-standard-dialog-berechnen-einfuegen (vf-nummer deltaL deltaH richtung startpunkt hz seite
winkel-prefill / winkel-prefill geruest-einzelmodul geruest-typ /
ergebnis ergebnis-liste gueltige-winkel horizontal-info ergebnis ergebnis-liste gueltige-winkel horizontal-info
winkelwahl best-winkel L_GF L_VF L_GF1 L_GF2 verteilung-modus winkelwahl best-winkel L_GF L_VF L_GF1 L_GF2 verteilung-modus
n-scanner hoehe-von hoehe-bis lastEnt vf-insert vf-endpunkt staustrecke-basis) n-scanner hoehe-von hoehe-bis lastEnt vf-insert vf-endpunkt staustrecke-basis)
@@ -1003,7 +1018,8 @@
(setq vf-insert (setq vf-insert
(vf-block-erstellen "standard" seite vf-nummer n-scanner (vf-block-erstellen "standard" seite vf-nummer n-scanner
hoehe-von hoehe-bis deltaH deltaL L_VF L_GF1 L_GF2 hoehe-von hoehe-bis deltaH deltaL L_VF L_GF1 L_GF2
richtung best-winkel startpunkt lastEnt hz)) richtung best-winkel startpunkt lastEnt hz
geruest-einzelmodul geruest-typ))
(if vf-insert (vfs-xdata-schreiben vf-insert hz)) (if vf-insert (vfs-xdata-schreiben vf-insert hz))
(princ "\n=========================================") (princ "\n=========================================")
) )
@@ -1018,7 +1034,8 @@
;; Neuanlage (Menue/Konsole -> Dialog): Startpunkt (X/Y) picken, Basis-Dialog, ;; Neuanlage (Menue/Konsole -> Dialog): Startpunkt (X/Y) picken, Basis-Dialog,
;; dann gemeinsame Berechnung/Winkel-Dialog/Einfuegung. ;; dann gemeinsame Berechnung/Winkel-Dialog/Einfuegung.
(defun vfs-standard-dialog-ablauf (vf-nummer / eingabe deltaL deltaH richtung (defun vfs-standard-dialog-ablauf (vf-nummer / eingabe deltaL deltaH richtung
z-start hz seite startpunkt startpunkt-xy) z-start hz seite startpunkt startpunkt-xy
geruest-einzelmodul geruest-typ)
(setq startpunkt-xy (getpoint (ssg-text "vfc-prompt-startpunkt-aus"))) (setq startpunkt-xy (getpoint (ssg-text "vfc-prompt-startpunkt-aus")))
(if (null startpunkt-xy) (setq startpunkt-xy '(0 0 0))) (if (null startpunkt-xy) (setq startpunkt-xy '(0 0 0)))
@@ -1031,9 +1048,12 @@
richtung (nth 2 eingabe) richtung (nth 2 eingabe)
z-start (nth 3 eingabe) z-start (nth 3 eingabe)
hz (nth 4 eingabe) hz (nth 4 eingabe)
seite (nth 5 eingabe)) seite (nth 5 eingabe)
geruest-einzelmodul (nth 6 eingabe)
geruest-typ (nth 7 eingabe))
(setq startpunkt (list (car startpunkt-xy) (cadr startpunkt-xy) z-start)) (setq startpunkt (list (car startpunkt-xy) (cadr startpunkt-xy) z-start))
(vfs-standard-dialog-berechnen-einfuegen vf-nummer deltaL deltaH richtung startpunkt hz seite nil) (vfs-standard-dialog-berechnen-einfuegen vf-nummer deltaL deltaH richtung startpunkt hz seite nil
geruest-einzelmodul geruest-typ)
) )
) )
) )
@@ -1052,7 +1072,8 @@
(defun c:VARIOFOERDERER_EDIT ( / ss ent ed bname startpunkt attribs xd (defun c:VARIOFOERDERER_EDIT ( / ss ent ed bname startpunkt attribs xd
deltaL deltaH richtung z-start hz seite deltaL deltaH richtung z-start hz seite
eingabe vf-nummer best-winkel-attr L_GF_m-teile eingabe vf-nummer best-winkel-attr L_GF_m-teile
prefill-basis prefill-winkel) prefill-basis prefill-winkel
geruest-einzelmodul geruest-typ)
;; Implied Selection VOR ssg-start pruefen (ssg-start hebt Selektion auf) ;; Implied Selection VOR ssg-start pruefen (ssg-start hebt Selektion auf)
(setq ss (ssget "I")) (setq ss (ssget "I"))
(if (and ss (= (sslength ss) 1) (if (and ss (= (sslength ss) 1)
@@ -1091,7 +1112,9 @@
(setq prefill-basis (setq prefill-basis
(list (cons "deltaL" deltaL) (cons "deltaH" deltaH) (cons "richtung" richtung) (list (cons "deltaL" deltaL) (cons "deltaH" deltaH) (cons "richtung" richtung)
(cons "einfuegehoehe" z-start) (cons "hz" hz) (cons "seite" seite))) (cons "einfuegehoehe" z-start) (cons "hz" hz) (cons "seite" seite)
(cons "geruest-einzelmodul" (cond ((cdr (assoc "GERUEST_EINZELMODUL" attribs))) ("0")))
(cons "geruest-typ" (cdr (assoc "GERUEST_TYP" attribs)))))
(setq eingabe (vfs-dialog-eingabe-basis prefill-basis)) (setq eingabe (vfs-dialog-eingabe-basis prefill-basis))
(if (null eingabe) (if (null eingabe)
@@ -1102,7 +1125,9 @@
richtung (nth 2 eingabe) richtung (nth 2 eingabe)
z-start (nth 3 eingabe) z-start (nth 3 eingabe)
hz (nth 4 eingabe) hz (nth 4 eingabe)
seite (nth 5 eingabe)) seite (nth 5 eingabe)
geruest-einzelmodul (nth 6 eingabe)
geruest-typ (nth 7 eingabe))
(setq startpunkt (list (car startpunkt) (cadr startpunkt) z-start)) (setq startpunkt (list (car startpunkt) (cadr startpunkt) z-start))
;; Vorbelegung Winkel/Verteilung: bestehenden Winkel vorschlagen, L_GF- ;; Vorbelegung Winkel/Verteilung: bestehenden Winkel vorschlagen, L_GF-
@@ -1118,7 +1143,7 @@
(entdel ent) (entdel ent)
(setq vf-nummer (vf-next-number)) (setq vf-nummer (vf-next-number))
(vfs-standard-dialog-berechnen-einfuegen vf-nummer deltaL deltaH richtung (vfs-standard-dialog-berechnen-einfuegen vf-nummer deltaL deltaH richtung
startpunkt hz seite prefill-winkel) startpunkt hz seite prefill-winkel geruest-einzelmodul geruest-typ)
(princ (ssg-textf "vfs-edit-neu-aufgebaut" (list bname))) (princ (ssg-textf "vfs-edit-neu-aufgebaut" (list bname)))
) )
) )
+14
View File
@@ -85,6 +85,20 @@ gefaellestrecke : dialog {
} }
} }
: boxed_column {
label = "Geruest";
: toggle {
key = "geruest_einzelmodul";
label = "Geruest fuer Einzelmodul";
}
: popup_list {
key = "geruest_typ";
label = "Geruestoption:";
width = 30;
}
}
} }
ok_cancel; ok_cancel;
+6
View File
@@ -52,6 +52,12 @@ kreisel_edit : dialog {
label = "Geruest fuer Einzelmodul"; label = "Geruest fuer Einzelmodul";
} }
: popup_list {
key = "geruest_typ";
label = "Geruestoption:";
width = 30;
}
} }
ok_cancel; ok_cancel;
+14
View File
@@ -61,6 +61,20 @@ variofoerderer_basis : dialog {
} }
} }
: boxed_column {
label = "Geruest";
: toggle {
key = "geruest_einzelmodul";
label = "Geruest fuer Einzelmodul";
}
: popup_list {
key = "geruest_typ";
label = "Geruestoption:";
width = 30;
}
}
} }
ok_cancel; ok_cancel;
+4
View File
@@ -523,6 +523,10 @@
"gf-seite-rechts": "\n 2 - Rechts", "gf-seite-rechts": "\n 2 - Rechts",
"prompt-wahl-1-2": "\nIhre Wahl (1/2) [1]: ", "prompt-wahl-1-2": "\nIhre Wahl (1/2) [1]: ",
"prompt-wahl-1-2-3": "\nIhre Wahl (1/2/3) [1]: ", "prompt-wahl-1-2-3": "\nIhre Wahl (1/2/3) [1]: ",
"geruest-typ-header": "\n\nGeruestoption waehlen:",
"geruest-typ-opt": "\n %1 - %2",
"geruest-typ-prompt": "\nGeruestoption (1-4) [%1]: ",
"kreisel-eckrad-geruest-frage": "Geruest fuer Einzelmodul?",
"gf-lade-block": "\n Lade Block: %1 ...", "gf-lade-block": "\n Lade Block: %1 ...",
"gf-status-ok": " OK", "gf-status-ok": " OK",
"gf-warnung-kette-unterbrochen": "\n WARNUNG: Kette unterbrochen!", "gf-warnung-kette-unterbrochen": "\n WARNUNG: Kette unterbrochen!",
+4
View File
@@ -523,6 +523,10 @@
"gf-seite-rechts": "\n 2 - Right", "gf-seite-rechts": "\n 2 - Right",
"prompt-wahl-1-2": "\nYour choice (1/2) [1]: ", "prompt-wahl-1-2": "\nYour choice (1/2) [1]: ",
"prompt-wahl-1-2-3": "\nYour choice (1/2/3) [1]: ", "prompt-wahl-1-2-3": "\nYour choice (1/2/3) [1]: ",
"geruest-typ-header": "\n\nSelect scaffold option:",
"geruest-typ-opt": "\n %1 - %2",
"geruest-typ-prompt": "\nScaffold option (1-4) [%1]: ",
"kreisel-eckrad-geruest-frage": "Scaffold for single module?",
"gf-lade-block": "\n Loading block: %1 ...", "gf-lade-block": "\n Loading block: %1 ...",
"gf-status-ok": " OK", "gf-status-ok": " OK",
"gf-warnung-kette-unterbrochen": "\n WARNING: chain interrupted!", "gf-warnung-kette-unterbrochen": "\n WARNING: chain interrupted!",
+2 -1
View File
@@ -106,7 +106,8 @@
(vf-block-erstellen "standard" seite vf-nummer 0 (vf-block-erstellen "standard" seite vf-nummer 0
hoehe-von hoehe-bis deltaH deltaL L_VF hoehe-von hoehe-bis deltaH deltaL L_VF
L_GF1 L_GF2 L_GF1 L_GF2
richtung best-winkel startpunkt lastEnt 0.0) richtung best-winkel startpunkt lastEnt 0.0
"0" "Schoenenberger Geruest")
;; lastEnt hinter den SEQEND des VF-Blocks schieben. ;; lastEnt hinter den SEQEND des VF-Blocks schieben.
;; Ohne diesen Schritt wuerde entnext vom INSERT-Entity ;; Ohne diesen Schritt wuerde entnext vom INSERT-Entity
;; in die ATTRIB-Kette des gerade erstellten VF-Blocks ;; in die ATTRIB-Kette des gerade erstellten VF-Blocks
+7 -7
View File
@@ -285,7 +285,7 @@
bR90 bR60 bR30 bR90 bR60 bR30
startpunkt last-ent nach-aus-pt entry-hz startpunkt last-ent nach-aus-pt entry-hz
(caddr (nth first-idx segmente)) (caddr (nth first-idx segmente))
es-seite)) es-seite "0" "Schoenenberger Geruest"))
gf-ins gf-ins
) )
) )
@@ -383,7 +383,7 @@
(setq gf-ins (setq gf-ins
(car (gefaellestrecke-einfuegen (car (gefaellestrecke-einfuegen
test-L_stau test-winkel (list 0 0 test-z-start) test-L_stau test-winkel (list 0 0 test-z-start)
"links" "links" 0.0 test-deltaL "90" "90"))) "links" "links" 0.0 test-deltaL "90" "90" "0" "Schoenenberger Geruest")))
(if gf-ins (if gf-ins
(progn (progn
(setq attribs (ssg-attrib-read gf-ins)) (setq attribs (ssg-attrib-read gf-ins))
@@ -415,7 +415,7 @@
(setq gf-ins (setq gf-ins
(car (gefaellestrecke-einfuegen (car (gefaellestrecke-einfuegen
test-L_stau test-winkel (list 15000 0 test-z-start) test-L_stau test-winkel (list 15000 0 test-z-start)
"links" "links" 90.0 test-deltaL "90" "90"))) "links" "links" 90.0 test-deltaL "90" "90" "0" "Schoenenberger Geruest")))
(if gf-ins (if gf-ins
(progn (progn
(setq attribs (ssg-attrib-read gf-ins)) (setq attribs (ssg-attrib-read gf-ins))
@@ -447,7 +447,7 @@
(setq gf-ins (setq gf-ins
(car (gefaellestrecke-einfuegen (car (gefaellestrecke-einfuegen
test-L_stau test-winkel (list 0 -15000 test-z-start) test-L_stau test-winkel (list 0 -15000 test-z-start)
"links" "links" 180.0 test-deltaL "90" "90"))) "links" "links" 180.0 test-deltaL "90" "90" "0" "Schoenenberger Geruest")))
(if gf-ins (if gf-ins
(progn (progn
(setq attribs (ssg-attrib-read gf-ins)) (setq attribs (ssg-attrib-read gf-ins))
@@ -479,7 +479,7 @@
(setq gf-ins (setq gf-ins
(car (gefaellestrecke-einfuegen (car (gefaellestrecke-einfuegen
test-L_stau test-winkel (list 15000 -15000 test-z-start) test-L_stau test-winkel (list 15000 -15000 test-z-start)
"links" "links" 270.0 test-deltaL "90" "90"))) "links" "links" 270.0 test-deltaL "90" "90" "0" "Schoenenberger Geruest")))
(if gf-ins (if gf-ins
(progn (progn
(setq attribs (ssg-attrib-read gf-ins)) (setq attribs (ssg-attrib-read gf-ins))
@@ -529,7 +529,7 @@
(princ (strcat "\n\n M2_hz000: Start=(0,-35000," (rtos test-z-start 2 0) ") ...")) (princ (strcat "\n\n M2_hz000: Start=(0,-35000," (rtos test-z-start 2 0) ") ..."))
(setq ergebnis (setq ergebnis
(gefaellestrecke-einfuegen (gefaellestrecke-einfuegen
test-L_stau test-winkel m2-start "links" "links" 0.0 test-deltaL "90" "90")) test-L_stau test-winkel m2-start "links" "links" 0.0 test-deltaL "90" "90" "0" "Schoenenberger Geruest"))
(setq gf-ins (car ergebnis)) (setq gf-ins (car ergebnis))
(if gf-ins (if gf-ins
(progn (progn
@@ -735,7 +735,7 @@
(setq gf-ins (setq gf-ins
(car (gefaellestrecke-einfuegen (car (gefaellestrecke-einfuegen
w30-lstau test-winkel (list 30000 0 test-z-start) w30-lstau test-winkel (list 30000 0 test-z-start)
"links" "links" 0.0 test-deltaL "30" "30"))) "links" "links" 0.0 test-deltaL "30" "30" "0" "Schoenenberger Geruest")))
(if gf-ins (if gf-ins
(progn (progn
(setq attribs (ssg-attrib-read gf-ins)) (setq attribs (ssg-attrib-read gf-ins))