我在表中添加了一个修改反应器。反应堆的数据中具有标注功能。 callout
是函数am:trench-updated
(vlr-pers
(vlr-object-reactor
(list table)
(list (cons :am:dictionary dictionary)
(cons :am:modified callout))
(list (cons :vlr-modified 'am:table-modified))))
在反应堆中,我从列表中提取以下标注:
(defun am:object-get (object field)
(cdr (assoc field object)))
(defun am:table-modified (reactor-object)
(setq reactor-data (vlr-data reactor-object)
callout (am:object-get reactor-data :am:modified))
(apply callout (list ...)))
在我保存加载图形之前,它工作正常。加载后,callout
包含正确的名称,但值为nil。
答案 0 :(得分:3)
仅在文档名称空间的范围内定义AutoLISP函数,因此在重新打开文档(图形文件)时需要重新定义。我不确定为什么在保存操作后将无法定义此类功能。
我个人建议您避免使用持久性反应堆,而是在图纸启动时重建瞬态反应堆。以我的经验,持久性反应堆永远不会真正持久化。