你好
在做了更多的搜索后,我发现我可以将当前层设置为导入点,冻结所有其他层,缩放范围,然后解冻层。
我用这个http://www.cadtutor.net/forum/showthread.php?76896-冻结除当前层外的所有层并恢复以前的状态
- (defun c:frz ( / d n )
- (while (setq d (tblnext "LAYER" (null d)))
- (if
- (and
- (zerop (logand 1 (cdr (assoc 70 d))))
- (not (member (setq n (cdr (assoc 2 d))) *thaw-list*))
- )
- (setq *thaw-list* (cons n *thaw-list*))
- )
- )
- (command "_.-layer" "_F" "*" "")
- (princ)
- )
- (defun c:unfrz ( )
- (if *thaw-list*
- (command "_.-layer" "_T"
- (apply 'strcat (mapcar '(lambda ( x ) (strcat "," x)) *thaw-list*))
- ""
- )
- )
- (setq *thaw-list* nil)
- (princ)
- )
这对我来说很管用。
非常感谢。 |