如何把一个lisp函数做成一个单独的命令
比如我用lisp命令删除框选里的中心线,但是我删完之后又不想删了,我按ctrl+z撤销,但是是一个一个恢复中心线的,而不是撤销这个命令,如何能够直接撤销执行的那个lisp函数的所有操作呢
defun c:es()
(setq k 0)
(setq tag 0)
(while (< k nu)
(setq en (entget (setq a (ssname s k))))
(setq k (+ k 1))
(if (= (cdr (assoc 8 en)) "3中心线层")
(progn
(setq tag (+ tag 1))
(command "erase" a "")))
)
defun c:es()
(command "._undo" "_begin")
(setq k 0)
(setq tag 0)
(while (< k nu)
(setq en (entget (setq a (ssname s k))))
(setq k (+ k 1))
(if (= (cdr (assoc 8 en)) "3中心线层")
(progn
(setq tag (+ tag 1))
(command "erase" a "")))
(command "._undo" "_end")
) rocking2008 发表于 2022-7-17 15:05
defun c:es()
(command "._undo" "_begin")
(setq k 0)
感谢!!!
页:
[1]