martinle 发表于 2022-7-6 07:28:25

_隐藏对象

你好
 
例如,我有5个单独的隐藏对象,分别使用命令HideObjects。
现在我需要3个物体。剩余4个隐藏对象,但将保持隐藏状态。
是否有一种方法可以使用命令“HideObjects unhide”隐藏单个选项集,而不使用命令“UnIsolateObjects unhide”隐藏所有隐藏的对象。
如果这样的事情真的很棒!
 
问候Martin

Ahankhah 发表于 2022-7-6 08:02:41

您可以使用以下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

martinle 发表于 2022-7-6 08:09:30

谢谢你的Lisp程序。看起来很有希望。我将进行同样的测试。
再次感谢你的好主意。
问候Martin

Ahankhah 发表于 2022-7-6 08:46:21

不客气。
页: [1]
查看完整版本: _隐藏对象