cj52000
发表于 2024-1-30 10:53:30
zhufeng1004 发表于 2024-1-29 20:47
试试这个
(Defun C:y (/ ss ct cl la old)
好用,谢谢!
jkop
发表于 2024-1-31 10:21:05
路过看到此帖,发现本身也有需求,承蒙大师出手,小弟收藏!
paulpipi
发表于 2024-1-31 10:51:22
vitalgg 发表于 2024-1-29 17:44
想直接用更简单。
复制以下代码到CAD命令行,回车安装即可。
好的,感谢大神,我试试
弥勒
发表于 2024-2-1 18:13:51
;你抄我来,我抄你
;现在这码能跑了,哈哈
(defun c:tmp(/ typ )
(initget 1 "S F T")
(setq typ (getkword "\n 关闭部分F、全部打开T、显示部分S:"))
(cond ((= typ "F") (f_lay))
((= typ "T") (command "-layer" "on" "*"""))
((= typ "S") (s_lay))
)
)
;关闭图层
(defun f_lay(/ ss i ssn lay)
(princ "\n选择图层参考块:")
(setq ss (ssget))
(setq i 0)
;(command "layer")
(repeat (sslength ss)
(setq ssn (ssname ss i ))
(setq lay (cdr (assoc 8 (entget ssn))))
(command "-layer" "off" lay"" )
(setq i ( + i 1))
)
(command "")
)
;保留图层
(defun s_lay(/ ss i ssn lay)
(princ "\n选择图层参考块:")
(setq ss (ssget))
(command "layer" "off" "*" "y" "")
(setq i 0 )
(repeat(sslength ss)
(setq ssn (ssname ss i ))
(setq lay (cdr ( assoc 8 (entget ssn))))
(command "layer" "on" lay "")
(setq i ( + i 1))
)
;(command "")
)
(princ "\n程序加载完成")
(princ "\n")
cj52000
发表于 2024-2-1 20:46:22
弥勒 发表于 2024-2-1 18:13
;你抄我来,我抄你
;现在这码能跑了,哈哈
不错,关闭部分功能中当前的图层不能关闭,这个有办法优化么
zhoupeng220
发表于 2024-2-3 10:44:24
kucha007 发表于 2024-1-29 14:23
厉害,给热心的大神点个赞。
zilong136
发表于 2024-2-9 05:37:33
kucha007 发表于 2024-1-29 14:23
很不错,多选时,第一次选择对象置顶。