Der folgende Code reagiert auf Änderungen einer Bemassung mit Standard-Ändern-Befehlen und führt die Funktion :HKV_reactor aus. Diese simuliert ein Hochkomma-Bemaßung. Das funktioniert auch, aber reagiert nicht auf Änderungen mit Hilfe von Griffen.
(:hkv_reactor) ändert den vorherigen Auswahlsatz "Letztes".
Die Struktur der Funktion ist leider relativ komplex, was die Quelle der zu tätigenden Einstellungen betrifft.
Code:
;;; -------------------------------------------------------
;;; Einfacher EditorReactor: führt (:hkv_reactor) nach Änderungen aus
;;; -------------------------------------------------------(DEFUN :Dimmodifiedcallback (reactor params / cmd)
;; params ist eine Liste mit dem Befehlsnamen
(SETQ cmd (STRCASE (CAR params)))
;; Bei allen relevanten Befehlen auslösen
(IF (MEMBER cmd '("MOVE" "STRETCH" "ROTATE" "DDEDIT" "DIMEDIT" "PROPERTIES" "COPY"))
(PROGN (princ (strcat "\nBefehl " cmd " beendet – starte (:HKV_REACTOR)..."))
;(:hkv_reactor) - hier auskommentiert
)
)
)
(DEFUN :startglobaldimreactor (/)
(IF (NOT *dimreactor*)
(SETQ *dimreactor* (VLR-EDITOR-REACTOR nil '((:VLR-COMMANDENDED . :Dimmodifiedcallback))))
)
(PRINC "\nGlobaler Bemaßungs-Reactor aktiv.")
(PRINC)
)
(DEFUN c:hkr () (:startglobaldimreactor))
------------------
Gruß aus Wien
Bernhard
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP