目的:选择几个对象(分别在不同的层),读取这几个对象所在的“图层名”,然后提示所选图层并确认,以后框选一个范围,将该范围所有属于以上图层的对象全部选择。程序大致框架如下,我学lisp不深,中间很多部分不会写,请高手完善。:(defun c:xzc()(setvar "cmdecho" 0)(setq s1 (entsel "\n\t请选择需要选择的层中的一个物体 : ")) (while s1
(defun c:xzc()
(setvar "cmdecho" 0)
(setq s1 (entsel "\n\t请选择需要选择的层中的一个物体 <退出> : "))
(while s1
(setq ss (entget (car s1)))
(setq cname (cdr (assoc 8 ss)))
(prompt (strcat "\n选中了图层: \""
","
)
"\"\n"
)
)
)
(XZ)
)
(defun XZ()
(prompt "\n框选范围:")
(setq ss1 (ssget (list (cons 8 cname))))
(prin1)
) 退出>