(vlr-reaction-set reaktor funkcja)
Dodaje lub zmienia funkcję która jest uruchamiana przez reaktor
Przykład
(vl-load-com)
(vl-load-reactors)
; Funkcja wyświetla promień okręgu w oknie powiadomień
(defun WOknie (notifier-object reactor-object param-list)
(alert (vl-princ-to-string (vlax-get-property notifier-object 'radius ) ) )
)
( defun DrawCircle ( / circle )
(setq circle (vla-addCircle
(vla-get-ModelSpace (vla-get-ActiveDocument (vlax-get-acad-object) ) )
(vlax-3d-point (getpoint "wskaż punkt") )
30.0
) )
(command "regen")
circle
)
(defun c:utwórzReaktor()
(setq *Reactor*
(vlr-object-reactor (list (DrawCircle) ) "mycircle" '((:vlr-modified . WOknie) ) )
)
)
; Nowa funkcja wyświetla promień w pasku poleceń
(defun WPasku (notifier-object reactor-object param-list)
(print (vl-princ-to-string (vlax-get-property notifier-object 'radius ) ) )
)
Podmieniamy funkcję;
(vlr-reaction-set *Reactor* :vlr-modified 'WPasku )