HundM05: fehlende BTMT Be-/Entladung nachgetragen
TEST_HUNDM05 baute bisher keine BTMT-Beladung/SC_Entladung-Stationen, weil hundm05.json anders als mubea.json nie Eintraege dafuer hatte - dadurch fehlten sie im CSV-Export der Testanlage. Koordinaten/Rotation aus dem Insertpoint/K1-KOS-String der realen Referenz-CSV (hundmM05_1.csv) dekodiert und als "block"-Eintraege ergaenzt; der bestehende generische _.INSERT-Pfad in hundm05:bau-sensor baut sie ohne weitere Code-Aenderung. Kommentare/Doku (test_hundm05.lsp, object_data.md Abschnitt 5) an die jetzt nicht mehr auf Separator/ Scanner beschraenkte Nutzung angepasst. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
+20
-14
@@ -59,10 +59,14 @@
|
||||
;; unveraendert ans Dateiende (sonst waeren sie beim naechsten Lauf weg).
|
||||
;;
|
||||
;; Unterstuetzt: Kreisel (function "insert", wie test_kreisel.lsp) und
|
||||
;; Separator/Scanner (zusaetzlich "block", wie in mubea.json - Schema
|
||||
;; tests/testdata/object_data.md Abschnitt 5). Unterscheidung ueber das
|
||||
;; Feld "block": nur Separator/Scanner-Eintraege haben es.
|
||||
;; Weitere Arten kommen als eigener cond-Zweig dazu.
|
||||
;; beliebige eigenstaendige Bloecke ueber "block" (Separator/Scanner sowie
|
||||
;; BTMT-Beladung/SC_Entladung, wie in mubea.json - Schema tests/testdata/
|
||||
;; object_data.md Abschnitt 5). Unterscheidung ueber das Feld "block": nur
|
||||
;; Bloecke haben es, Kreisel-Eintraege nicht. hundm05:bau-sensor ist dabei
|
||||
;; blockname-agnostisch (reiner _.INSERT), der "kind"-Wert "sensor" bleibt
|
||||
;; als Sammelbegriff fuer "kein Kreisel" bestehen (siehe dort).
|
||||
;; Weitere Arten (die kein reiner _.INSERT sind) kommen als eigener
|
||||
;; cond-Zweig dazu.
|
||||
|
||||
(defun hundm05:zusatz-objekt-p (obj)
|
||||
(and (ssg-val obj "function")
|
||||
@@ -119,16 +123,18 @@
|
||||
(vsp-set (vsp-set rec "status" "abbruch") "fehler_text"
|
||||
"kreisel-insert-script lieferte nil"))))))
|
||||
|
||||
;; Separator/Scanner bauen ("block"-Eintraege, siehe object_data.md
|
||||
;; Abschnitt 5). ils-insert-sensor (SSG_LIB_Commands.lsp) ist dafuer NICHT
|
||||
;; scriptbar (fragt Punkt/Rotation per getpoint/pause in einer Schleife) -
|
||||
;; wir bauen den _.INSERT darum direkt selbst nach, wie
|
||||
;; mubea:build-separator-one in tests/test_mubea.lsp es fuer die
|
||||
;; Mubea-Anlage schon vorgemacht hat (dieselbe Vorlage, hier auf das
|
||||
;; hundm05:bau-*/vsp-rec-neu-Record-Format dieser Datei uebertragen statt
|
||||
;; mubeas eigenes result-json). "sensor" als Sammelbegriff fuer den "kind"-
|
||||
;; Wert, weil dieselbe Routine Separator UND Scanner einfuegt - genau wie
|
||||
;; ils-insert-sensor selbst.
|
||||
;; Separator/Scanner/BTMT-Beladung/SC_Entladung bauen ("block"-Eintraege,
|
||||
;; siehe object_data.md Abschnitt 5). ils-insert-sensor/ils-insert-station
|
||||
;; (SSG_LIB_Commands.lsp) sind dafuer NICHT scriptbar (fragen Punkt/Rotation
|
||||
;; per getpoint/pause in einer Schleife) - wir bauen den _.INSERT darum
|
||||
;; direkt selbst nach, wie mubea:build-separator-one in tests/test_mubea.lsp
|
||||
;; es fuer die Mubea-Anlage (inkl. deren BTMT-Stationen) schon vorgemacht hat
|
||||
;; (dieselbe Vorlage, hier auf das hundm05:bau-*/vsp-rec-neu-Record-Format
|
||||
;; dieser Datei uebertragen statt mubeas eigenes result-json). Der Blockname
|
||||
;; kommt unveraendert aus dem "block"-Feld - kein Katalog/Whitelist noetig,
|
||||
;; jeder ueber ssg-ils-block-laden aufloesbare Blockname funktioniert. "sensor"
|
||||
;; bleibt als Sammelbegriff fuer den "kind"-Wert (= "kein Kreisel"), auch wenn
|
||||
;; inzwischen nicht mehr nur Separator/Scanner darueberlaufen.
|
||||
(defun hundm05:bau-sensor (obj / id blockname x y z rotation pt eff n ent ed rec)
|
||||
(setq id (ssg-val obj "id"))
|
||||
(setq blockname (ssg-val obj "block"))
|
||||
|
||||
Reference in New Issue
Block a user