我为一条多段线指定了一个反应器,在退出反应器后,又要自动执行一个LISP程序xxxx,用以判断多段线在执行反应器期间是否修改了多段线,如果修改了多段线,则重新生成多段线,可是不知道怎样来调用这一修改多段线程序xxxx。 看CAD的帮助好像是要用vlr-command-reactor来定义一个命令反应器,但是不知道怎么做,请大家指点。 下面是vlr-command-reactor函数的帮助文件: 语法(vlr-command-reactor data callbacks) 功能 构造 AutoCAD 命令反应器,对命令事件给出通知。 说明 1)参数 data 为任何要与反应器对象相关联的 AutoLISP 数据。若没有数据则为 nil。(这个参数该怎么指定) 2)参数 callbacks 为表,其中包含下列格式的点对: (event-name . callback_function) 在这里,event-name 是下表命令反应器事件中的符号之一,callback_function 为符号,代表事件发生时要调用的函数。每个回调函数都接受如下两个参数: reactor_object 调用回调函数的 VLR 对象 list 包含单个元素的表,字符串表示命令名 返回值: reactor_object 参数。 命令反应器事件 事件名 说明 :vlr-unknownCommand 发出了 AutoCAD 未知的命令。 :vlr-commandWillStart 已调用某 AutoCAD 命令。 :vlr-commandEnded 已完成某 AutoCAD 命令。 :vlr-commandCancelled 已取消某 AutoCAD 命令。 :vlr-commandFailed 无法完成某 AutoCAD 命令。
|