(load "ccv")(load "hhj") (load "ffk")
(c:ccv)
(c:hhj)
(c:ffk)
是的,先生
当然 有能力上传lisps吗
无论如何,试试这个
旧Lisp程序
(defun c:AAA ( / A1 )
(setq A1 (getpoint))
)
(defun c:BBB ( / B1 )
(setq B1 (getpoint))
)
(defun c:CCC ( / C1 )
(setq C1 (getpoint))
)
(defun c:DDD ( / D1 )
(setq D1 (getpoint))
))
新建Lisp
(defun c:XXX ( / A1 B1 C1 D1 )
(setq A1 (getpoint))
(setq B1 (getpoint))
(setq C1 (getpoint))
(setq D1 (getpoint))
) Hosyn,正如您在下面的示例中所看到的,所需的函数连续工作(请不要错过,如果您以结束擦除过程,则无法实现第二个函数)。
(defun c:ccv()
(command "_.ERASE")
(while (> (getvar "CMDACTIVE") 0)
(command pause)
)
)
(defun c:hhj( / p1 )
(alert "I'm here!")
(if (setq p1 (cadr (ssgetfirst)))
(progn
(sssetfirst)
(command "chprop" p1 "" "C" 1 "")
)
)
)
(defun c:test()
(prompt "\nStart")
(c:ccv)
(prompt "\nMiddle")
(c:hhj)
(prompt "\nEnd")
(princ)
)
还请注意,第二个函数(HHJ)中的代码是无用的;当到达SSGETFIRST语句时,无法预先选择某些内容,任何先前选择的实体都已通过ERASE调用删除。
我添加了一个警报调用,以证明HHJ函数按预期调用。
顺便说一句,如果你将讨论集中在一个线程上,以避免分散注意力,那就更好了! MSasu公司
您的修改代码显示第二个函数“hhj”实现并显示警报:)但我不知道如何在警报后连续执行chprop命令,当我在cad中运行自己时,该命令不起作用,运行非常好,但在警报切割过程和中断后的例程中,是否有必要在例程和o中修改命令chprop:)如何?? 如前所述,第二个函数不可能触发CHPROP命令。
只是猜测,但也许你是故意这么做的?
(defun c:hhj( / p1 )
(if (setq p1 (ssget))
(command "chprop" p1 "" "C" 1 "")
)
(princ)
)
页:
1
[2]