提供一个方法:

- (defun c:ll (/ e h lay_c);;;锁层
- (vl-load-com)
- (setvar "cmdecho" 1)
- (setq e (car (entsel "\n选择图层所在的实体 :")))
- (if e
- (progn
- (setq h (cdr (assoc 8 (entget e))))
- (command "layer" "LO" h "")
- (setq lay_c (cdr
- (assoc
- 62
- (tblsearch "layer" h)
- )
- )
- )
- (VLAX-LDATA-PUT h h lay_c)
- (command "layer" "c" "252" h "")
- )
- (princ "\n没有选到实体!按回车继续.")
- )
- (setvar "cmdecho" 1)
- (princ)
- )
- (defun c:ul (/ e h lay_c);;;解锁
- (vl-load-com)
- (setvar "cmdecho" 1)
- (setq e (car (entsel "\n选择图层所在的实体 :")))
- (if e
- (progn
- (setq h (cdr (assoc 8 (entget e))))
- (command "layer" "u" h "")
- (if (setq lay_c (VLAX-LDATA-get h h))
- (command "layer" "c" lay_c h "")
- )
- )
- (princ "\n没有选到实体!按回车继续.")
- )
- (setvar "cmdecho" 1)
- (princ)
- )
- (print "命令:ll锁层,ul解锁")
|