xxdxx001 发表于 2013-7-27 10:28:31

二个关于关闭图层的LSP,求高手整合下

一个是关闭对象所在层,一个是只显示被选对象所在层,求高手整合成一个命令。(命令方式:选择要关闭的图层(或空格选择不关闭的图层 )

Andyhon 发表于 2013-7-27 11:22:12


;;; 关闭对像所在层
(defun lf (ss /c en lay)
   (setq c 0)
   (while (< c (sslength ss))
   (setq en (ssname ss c))
   (setq lay (cdr (assoc 8 (entget en))))
   (if (not (member lay laylst))
       (setq laylst (cons lay laylst))
   )
   (if (= lay (getvar "clayer"))
       (command "-layer" "off" lay "y" "")
       (command "-layer" "off" lay "")
   )
   (setq c (+ 1 c))
   )
   (princ)
)

;;; 只显示被选对像所在层
(DEFUN lg (Es / ES EN EL A)
(setqA 0 EN "" EL nil FL nil)
(while (/= EN nil)
(setq EN (ssname ES A) EL (cons EN EL) A (1+ A)))
(setq EL (cdr EL) FL (cdr (assoc ' 8 (entget (car EL)))) EL (cdr EL))
(repeat (- A 2)
(setq EN (cdr (assoc ' 8 (entget (car EL))))
FL (strcat EN "," FL) EL (cdr EL)) )
(command "LAYER" "off" "*" "y" "on" (eval FL) "")
(princ)
)

(defun C:Lyr2 ()
(princ "\n选择要关闭的图层(或空格,再选择不关闭的图层 )")
(setq ss (ssget))
(cond
    ;; 空格选择不关闭的图层
   ((Null ss) (lg (ssget)))
   
   (T (lf ss))
)
)

xxdxx001 发表于 2013-7-27 12:12:04

Andyhon 发表于 2013-7-27 11:22 static/image/common/back.gif


不对啊,可能是我没表达清楚,你这个好像只一有一个关闭对象所在层的功能,还有一个只显示被选对象所在层 的功能好像没有用上,我再表达下我的意思哈,麻烦大哥再帮我改下,
输入命令空格,提示:选择要关闭的图层(或空格选择不关闭的图层,没有被选中的图层将会关闭 ), 这里是有二个选项的,1,我没有再次敲空格而是直接选择图层上对象,则执行的是:"关闭对象所在层的命令";2.如果我再次敲 空格 则执行的是:"只显示被选对象所在层的命令"(通过多敲一个空格来选择是执行关闭对象所在层.lsp还是只显示被选对象所在层.lsp)

xxdxx001 发表于 2013-7-27 13:13:34

哈哈,我找了个图,仔细认真重新试了下功能,发现Andyhon大哥的是OK的,,是我太粗心了,我敲一下空格提示的是选择对象,我再敲一下空格,还是提示的是选择对象,所以误会了

xxdxx001 发表于 2013-7-27 13:25:22

Andyhon 发表于 2013-7-27 11:22 static/image/common/back.gif


Andyhon大哥你这个是对的,还能不能麻烦改下,命令提示,输入lyr2空格,提示:选择要关闭的图层(或空格选择不关闭的图层,没有被选中的图层将会关闭 ),再敲空格,提示:选择不关闭的图层,没有被选中的图层将会关闭

Andyhon 发表于 2013-7-27 15:53:23


(defun C:Lyr2 ()
(princ "\n选择要关闭的图层(或空格,再选择不关闭的图层 ): ")
(setq ss (ssget))
(cond
    ;; 空格 --> 选择不关闭的图层
   ((Null ss)
    (princ "\n那么选择不关闭的图层: ")
    (lg (ssget))
   )
   
   (T (lf ss))
)
)

alexmai 发表于 2019-3-3 13:01:45

cad命令
只显示被选对象所在层 LAYISO 还原 layuniso

magicheno 发表于 2020-7-29 02:47:13

这个非常好用

paulpipi 发表于 2020-7-31 06:55:18

ajunseo 发表于 2021-7-28 09:33:44

这个非常好用
页: [1] 2
查看完整版本: 二个关于关闭图层的LSP,求高手整合下