;; ============================================================ ;; test_showroom_ils.lsp - Nachbau des ILS-3.0-Showrooms. ;; ;; Datenquelle: tests/testdata/showroom_ils.json, erzeugt aus der ;; Fremdzeichnung (flacher 2D-Plan, keine Hoehen): ;; python lib/dxf_scan_components.py \ ;; C:/develop/sps_skel/data/Showroom_ILS_3_0.dxf data \ ;; tests/testdata/showroom_ils.json --projekt Showroom \ ;; --flach --ohne-hoehen \ ;; --kreisel-achse 27797.93 16298.90 36705.93 16298.90 \ ;; --kreisel-achse 28772.93 13093.90 35305.93 13093.90 ;; ;; Inhalt: 6 Kreisel, 11 Gefaellestrecken (Modus 1), Separatoren/Scanner. ;; - Kreisel_Showroom_05/06 sind Schleifen ohne AN8/SP8 im Plan (an beiden ;; Enden Weichenboegen) - per --kreisel-achse als STANDARD-Kreisel ;; angenaehert (Radmitten = Mittelpunkte der PIN-Kreise). ;; - Weichen (WB-*/WM-*/WL-*/WR-*) werden bewusst NICHT nachgebaut. ;; - HOEHEN FEHLEN NOCH: alle z = 0, die GF laufen mit dem Platzhalter ;; winkel_grad 3.0. Sobald die Kreisel-Hoehen bekannt sind, den Scanner ;; mit --kreisel-hoehe X Y Z je Kreisel neu laufen lassen - dann bekommen ;; die GF start_mm.z/hoehe_ende_mm und der Treiber rechnet den Winkel. ;; ;; Keine eigene Bau-Logik: Eintragsschema und Lauf wie TEST_DEMATIC_ARVATO ;; (dematic_arvato:bau-datei aus tests/test_dematic_arvato.lsp). ;; ;; Aufruf in BricsCAD: ;; (load (strcat (getenv "DXFMAKRO") "/tests/test_showroom_ils.lsp")) ;; TEST_SHOWROOM_ILS ;; ============================================================ (if (not (boundp '*showroom-ils-records*)) (setq *showroom-ils-records* nil)) ;; Beim LADEN holen (siehe test_dematic_arvato.lsp: per load definierte ;; Funktionen sind erst nach Rueckkehr zum Top-Level sichtbar). (if (null (car (atoms-family 1 '("DEMATIC_ARVATO:BAU-DATEI")))) (load (strcat (getenv "DXFMAKRO") "/tests/test_dematic_arvato.lsp"))) (defun showroom_ils:datei () (strcat (getenv "DXFMAKRO") "/tests/testdata/showroom_ils.json")) (defun c:TEST_SHOWROOM_ILS () (setq *showroom-ils-records* (dematic_arvato:bau-datei "TEST_SHOWROOM_ILS" "ILS 3.0 Showroom" (showroom_ils:datei))) (princ)) ;; Ergebnis-Export (Konvention :export-results fuer test_run_all.lsp) (defun showroom_ils:export-results (out-dir / pfad) (if (null *showroom-ils-records*) (princ "\n Keine Showroom-Ergebnisse vorhanden.") (progn (vl-mkdir out-dir) (setq pfad (strcat out-dir "/showroom_ils_results.json")) (vsp-results-schreiben *showroom-ils-records* pfad))) (princ)) (princ "\nTEST_SHOWROOM_ILS geladen. Aufruf: TEST_SHOWROOM_ILS") (princ)