如何只显示方框内所涉及的图层 其他图层关闭
如何只显示方框内所涉及的图层 其他图层关闭编程思路:
1、取得当前图中所有图层名;
2、选择方框;
3、取得方框对角点;
4、用窗选或窗交选择方框内的物体;
5、遍历所选实体,取得层名;
6、关闭非选择到的层名。 ;QW ***** turn off another layer显示选定的多个图层
(defun C:qw( / oce a1 a2 a3 i a4 a5)
(graphscr)
(setq oce (getvar "cmdecho"))
(setvar "cmdecho" 0)
(prompt "\n选择不需要对象(层):")
(setq a1(ssget))
(if a1
(progn
(setq a4 (ssname a1 0))
(setq a5 (cdr (assoc 8 (entget a4))))
(command "LAYER" "S" a5 "")
(command "LAYER" "OFF" "*" "" "")
(setq i 0)
(repeat (sslength a1)
(setq a3 (ssname a1 i))
(setq a2 (cdr (assoc 8 (entget a3))))
(command "LAYER" "ON" a2"")
(setq i (1+ i))
)
;(princ a2)
)
(princ " Nothing selected.")
);end if a1
(setvar "cmdecho" oce)
(princ)
)
页:
[1]