大神看下,如下隐藏,如何可以实现循环
如何让程序记住选择集,然后可以按空格键循环隐藏显示图元(defun c:YCXS()
(if ss3
(progn
(redrawss ss3 1)(setq ss3 nil)
)
(progn
(setq ss3(ssadd))
(while(setq ss(ssget ":s"))
(setq i 0)
(repeat (sslength ss)
(ssadd (ssname ss i) ss3)
(setq i(1+ i))
)
(redrawss ss3 2)
)
)
)
(princ)
)
;;;显示隐藏亮显消隐函数 1.显示图元 2. 隐藏图元(使其不可见)3.亮显图元 4.不亮显图元
(defun Redrawss (ss mode)
(mapcar '(lambda (x) (redraw x mode))
(vl-remove-if 'listp (mapcar 'cadr (ssnamex SS)))
)
)
(defun c:YCXS()
(setq ss(ssget ))
(while (= (setq k (getpoint)) nil)
(guantc ss)
(if (= (setq k (getpoint)) nil)(command "LAYER" "on" "*" "")))
(princ)
)
(DEFUN guantc (ss)
(setq dqtc (getvar "CLAYER") i 0)
(repeat (sslength ss)
(setq tcm (cdr(assoc 8 (entget (ssname ss i))))
i (1+ i))
(if (/= tcm dqtc) (command "LAYER" "off" tcm "") (command "LAYER" "off" tcm "y" "")))
) (defun c:YCXS()
(setq ss(ssget ))
(while (= (setq k (getpoint)) nil)
(redrawss ss 2)
(if (= (setq k (getpoint)) nil)(redrawss ss 1)))
(princ)
)
;;;显示隐藏亮显消隐函数 1.显示图元 2. 隐藏图元(使其不可见)3.亮显图元 4.不亮显图元
(defun Redrawss (ss mode)
(mapcar '(lambda (x) (redraw x mode))
(vl-remove-if 'listp (mapcar 'cadr (ssnamex SS)))
)
)
试试这样行不 (defun c:tt()
(setq dqtc (getvar "CLAYER"))
(while (= (setq k (getpoint)) nil)
(if (= "123" dqtc) (command "LAYER" "off" 123 "y" "") (command "LAYER" "off" 123 ""))
(if (= "456" dqtc) (command "LAYER" "off" 456 "y" "") (command "LAYER" "off" 456 ""))
(if (= (setq k (getpoint)) nil)(command "LAYER" "on" "*" "")))
(princ)
) start4444 发表于 2018-12-19 14:05
(defun c:YCXS()
(setq ss(ssget ))
(while (= (setq k (getpoint)) nil)
可以谢谢很好用 start4444 发表于 2018-12-19 14:05
(defun c:YCXS()
(setq ss(ssget ))
(while (= (setq k (getpoint)) nil)
你好大神,能否改下,编程指定图纸,比如图层123和图层456的隐藏显示 start4444 发表于 2018-12-19 14:05
(defun c:YCXS()
(setq ss(ssget ))
(while (= (setq k (getpoint)) nil)
大神你好,能否再帮忙改下 664571221 发表于 2018-12-19 14:24
你好大神,能否改下,编程指定图纸,比如图层123和图层456的隐藏显示
改成隐藏图元所在图层? start4444 发表于 2018-12-21 13:38
改成隐藏图元所在图层?
嗯 指定的图层,比如输入命令tt,然后指定的图层名为123和图层名为456的图层隐藏和显示循环 start4444 发表于 2018-12-21 19:26
(defun c:YCXS()
(setq ss(ssget ))
(while (= (setq k (getpoint)) nil)
大神你好,是图层已经确定,就隐藏123和456图层
页:
[1]
2