AECC标签样式编辑
我有一个快速的问题,如果有可能关闭所有的3D标签样式的背景遮罩。我有两个相同的图纸(一个只是在项目结束时完成的另一个的副本),一个必须有背景遮罩,一个不能有他们。我想快速关闭背景遮罩,这对于尺寸、多行文字、多重引线等很容易,但我不知道如何对AECC标签样式执行此操作。有什么快速的方法可以做到这一点吗(尤其是因为编辑标签样式是一个耗时的过程)? 将一些现有的类似代码(因此使用了哑变量名…)组合在一起(defun c:foo ()
(setq C3Ddoc
(vla-get-activedocument
(vla-getinterfaceobject
(vlax-get-acad-object) "AeccXUiLand.AeccApplication.11.0") ;; number will vary, this is for 2017
)
)
(setq gnl (vlax-get C3Ddoc 'GeneralNoteLabelStyles))
(setq std (vlax-get-property gnl 'item "Standard")) ;; Name of the style here.
(setq xxxx (vlax-get std 'TextComponents))
(setq yyyy (vlax-get-property xxxx 'item 0))
(setq zzzz (vlax-get yyyy 'BorderStyle))
(vlax-put-Property zzzz 'BackGroundMask :vlax-false)
)
你的里程数可能会有所不同,因为这里有很多假设,这只是一种风格的样本。
基本上,您只需深入到要修改的对象,然后对其进行修改。但是,不能保证您可能要修改的每个对象都存在API。 非常感谢。以我为例,我需要找到文档中存在的所有标签样式,然后对所有标签样式进行重复循环以更改属性。我会开始捣乱,看看我能做些什么。再次感谢您的帮助。 这是对的吗 固定的谢谢
页:
[1]