MarcoW 发表于 2022-7-6 11:35:01

谁有“ddatte对话”

很久以前,我使用了一个lisp文件,其工作原理几乎与“ddatte”函数/对话框相同。我相信这是一个应用程序的一部分,几年后我就不再使用它了。
 
ommon“ddatte对话框”的一大区别是,它有切换开关(复选框)将属性设置为可见/不可见。
 
周围还有人有这样的例行公事吗?我很高兴收到一份。

Lee Mac 发表于 2022-7-6 11:50:55

这将使您的ATT不可见:
 

(defun c:invis (/ ent obj)
(vl-load-com)

(while (setq ent (car (nentsel "\nSelect Attribute: ")))
   (if (eq "ATTRIB" (cdr (assoc 0 (entget ent))))
   (vlax-put (setq obj (vlax-ename->vla-object ent)) 'invisible -1)))

(princ))

 
或者,作为一种不同的功能,这将使列出名称的所有标记可见/不可见:
 
选择时

(defun c:am1 (/ tag ss att obj)
(vl-load-com)

(setq tag "TAG1")

(while (setq ss (ssget "_+.:E:S" '((0 . "INSERT") (66 . 1))))
   (foreach att (append (vlax-invoke (setq obj (vlax-ename->vla-object (ssname ss 0))) 'GetAttributes)
                        (vlax-invoke obj 'GetConstantAttributes))
   (if (eq tag (strcase (vla-get-TagString att)))
       (vlax-put att 'Invisible (~ (vlax-get att 'Invisible))))))

(princ))

 
所有区块:
(定义c:am2(/标签ss sel)(vl load com)(setq标签“TAG1”);;

alanjt 发表于 2022-7-6 11:56:26

看看这个帖子。。。
http://www.cadtutor.net/forum/showthread.php?p=283952&highlight=visible#post283952

MarcoW 发表于 2022-7-6 12:06:14

 
 
AM1和AM2是很好的代码。。。我必须读懂他们,因为我一点也不懂。
Tnx。
 
现在:睡在沙发上!

Lee Mac 发表于 2022-7-6 12:22:51

你好,Marco,
 
今天下午有点时间,看到附在你身上的西装,戴上可视开关
 

ddatte2.lsp

MarcoW 发表于 2022-7-6 12:28:49

嗨,李,
 
谢谢你的这段代码。它很有魅力,很有用。
 
回头见,
马可。

Lee Mac 发表于 2022-7-6 12:35:24

不用担心,马可,我做得很开心
页: [1]
查看完整版本: 谁有“ddatte对话”