BIGAL 发表于 2022-7-6 01:01:40

Ngray83只是一个评论,我正在更改12个属性,在多少个布局中,通常有60多个更改,包括读取dwg的部分,因此您可以使用repeat或foreach在任意多个标记上构建。此外,您还可以使用创建的顺序而不是使用标记来更改属性,例如更改第二个属性,该属性在块中上下推行时非常有用
 
Ps更改外部图纸、重新编号、作者、设计师、日期等
 
(setq oldtag1 "SHT_NO") ;attribute tag name
   (setq newstr1 (rtos sheetnum 2 0))
   (setq oldtag2 "DRG_NO") ;attribute tag name
   (setq oldtag3 "PROJ_NO") ;attribute tag name
   (setq newstr3 dwgname)
   (setq oldtag4 "REV_NO") ;attribute tag name
   (setq oldtag5 "REV1") ;attribute tag name
   (setq newstr5 "-")

(foreach att (vlax-invoke (vlax-ename->vla-object (ssname SS1 0 )) 'getattributes)
       (if (= oldtag1 (strcase (vla-get-tagstring att)))
       (vla-put-textstring att newstr1)
       ) ; end if
       (if (= oldtag2 (strcase (vla-get-tagstring att)))
       (vla-put-textstring att newstr2)
       ) ; end if
       (if (= oldtag3 (strcase (vla-get-tagstring att)))
       (vla-put-textstring att newstr3)
       ) ; end if
页: 1 [2]
查看完整版本: 更改块中的属性