_隐藏对象
你好例如,我有5个单独的隐藏对象,分别使用命令HideObjects。
现在我需要3个物体。剩余4个隐藏对象,但将保持隐藏状态。
是否有一种方法可以使用命令“HideObjects unhide”隐藏单个选项集,而不使用命令“UnIsolateObjects unhide”隐藏所有隐藏的对象。
如果这样的事情真的很棒!
问候Martin 您可以使用以下vlisp代码:
功能:
MT:消失-隐藏选择集中的对象:
(defun MT:Vanish (%ss% / n ent)
;; by Mehrdad Ahankhah (Mehre Taban)
(if (and (= 'PICKSET (type %ss%)) (< 0 (setq n (sslength %ss%))))
(progn
(princ (strcat "\nGoing to vanish " (itoa n) " objects."))
(while (> n 0)
(setq n (1- n))
(setq ent (entget (ssname %ss% n)))
(if (assoc 60 ent)
(setq ent (subst '(60 . 1) (assoc 60 ent) ent))
(setq ent (append ent '((60 . 1))))
)
(entmod ent)
)
(princ "\n'Vanish' done successfully.")
)
(T (princ "Nothing to vanish."))
)
(princ)
)
MT:Unvanish-取消隐藏选择集中的对象:
(defun MT:Unvanish (%ss% / n ent)
;; by Mehrdad Ahankhah (Mehre Taban)
(if (and (= 'PICKSET (type %ss%)) (< 0 (setq n (sslength %ss%))))
(progn
(princ (strcat "\nGoing to set visible " (itoa n) " objects."))
(while (> n 0)
(setq n (1- n))
(setq ent (entget (ssname %ss% n)))
(setq ent (subst '(60 . 0) (assoc 60 ent) ent))
(entmod ent)
)
(princ "\n'Unvanish' done successfully.")
)
(progn (alert "Nothing to set visible."))
)
(princ)
)
命令:
消失或关闭-隐藏所有对象
(defun C:Vanish () (MT:Vanish (ssget)))
(defun C:Off () (C:Vanish))
Vanish Selected或OffSelected-隐藏选择集中的对象并用给定名称保存选择集
(defun C:VanishSelected (/ name ss)
(setq name (getstring "\nEnter the name of the selection set: "))
(setq ss (ssget))
(set (read (strcat "MehreTaban-" name)) ss)
(MT:Vanish ss)
)
(defun C:OffSelected () (C:VanishSelected))
Unvanish或On-取消隐藏所有对象
(defun C:Unvanish () (MT:Unvanish (ssget "x" '((60 . 1)))))
(defun C:On () (C:Unvanish))
UnvanishSelected或OnSelected-取消隐藏以前保存的选择集中的对象
(defun C:UnvanishSelected ()
(MT:Unvanish (eval (read (strcat "MehreTaban-" (getstring "\nEnter the name of selection set: ")))))
)
(defun C:OnSelected () (C:UnvanishSelected))
CADTutor的Shazam。LSP 谢谢你的Lisp程序。看起来很有希望。我将进行同样的测试。
再次感谢你的好主意。
问候Martin 不客气。
页:
[1]