求一个能隐藏对象的lsp
www.dimcax.com
求一个能隐藏对象的lsp
就是能隐藏某些对象,比如隐藏其他颜色,只显示一种颜色的对象或者隐藏选择的对象,或者只显示选择的对象,其他的隐藏
最好是源lsp文件
邮箱:
谢谢!!!
装燕秀工具箱,论坛里有,而且是免费的,那里面有你需要的隐藏工具
燕秀工具箱我知道,但是能用到的东西太少了,多数浪费资源,所以想找个源程序看一下
下载试试看
命令名称onc***
(defun c

nc (/ mm enn lst ss1 ss2 i p)
(setvar "cmdecho" 1)
(setq enn (entget (car (entsel))))
(setq mm (assoc 62 enn))
(setq lst (list mm))
(setq ss1 (ssget "x" lst))
(setq ss2 (ssget "x"))
(setq i 0)
(repeat (sslength ss1)
(redraw (ssname ss1 i) 3)
(setq i (1+ i))
)
(setq i 0)
(repeat (sslength ss1)
(setq p (ssname ss1 i))
(ssdel p ss2)
(setq i (1+ i))
)
(setq i 0)
(repeat (sslength ss2)
(redraw (ssname ss2 i) 2)
(setq i (1+ i))
)
(princ)
)
*********
保存为.lsp即可
3dlove
;;;;隐藏物体command:vh---------------------------
(defun c:vh ()
(princ "\n选择要隐藏实体:")
(if (null ssenth)
(princ)
(progn
(setq ssolb ssenth)
(setq sseolb sseobj)
);end progn
);end if
(initget 1)
(setq sst (ssget))
(if (null sst)
(princ)
(progn
(setq sseobj sst)
(setq ssenth (sslength sseobj))
(setq nob 0)
(repeat ssenth
(setq ssent (ssname sseobj nob))
(redraw ssent 2)
(setq nob (+ nob 1))
);end repeat
(if (null ssolb)
(princ)
(progn
(setq ssenth (+ ssolb ssenth));回归实体数
(setq nob 0)
(repeat ssolb
(setq ssent (ssname sseolb nob))
(setq sseobj (ssadd ssent sseobj))
(setq nob (+ nob 1))
);end repeat(回归实体集)
);end progn
);end if
(princ)
);end progn
);end if
);end defun
;;;;恢复显示command:vr---------------------------
(defun c:vr ()
(setq nob 0)
(if (null ssenth)
(princ "\n 无隐藏对象")
(progn
(repeat ssenth
(setq ssent (ssname sseobj nob));
(redraw ssent 1);
(setq nob (+ nob 1))
);end repeat
(setq ssenth nil)
(setq ssolb nil)
(setq sseolb nil)
(setq ssend nil)
);end progn
);end if
(princ)
);end defun
;;;;---------------------------------------------
3dlove
谢谢楼上大哥。我试试
请问楼上大哥,按颜色相识后如何恢复???
re就行了
3dlove
我弄的是一个筛选图层的,还不错
谢谢jfxia!!!
楼上的可否共享一下???