CADkitt 发表于 2022-7-6 10:07:24

删除图形中的属性(n

所以我有一个库,里面充满了导出的块(wblock)
现在,我想用零件名称为这些块添加一个属性,以便使用eattext。(因为我们使用2d块,并且它们有多个视图,所以我无法使用块名称)
由于我不是在块中工作,而是在导出块的dwg文件中工作。我不能使用任何标准的属性LISP。我甚至不能使用attedit,因为这也需要一个块。
所以当我写这篇文章的时候,我自己想出来了,下面是代码:
要在块编辑器中向图形或块的中心添加属性,请执行以下操作:
(command "-Attdef" "I" "P" "L" "" "partnr" "enter part number" "partnr" "style" "style1" (getvar "viewctr") "0")
要删除旧属性(我修改了块删除例程):
(defun C:delblk3 (blk / SS FILTER SSLEN ENT)
(progn
(setq        FILTER (list (cons 0 "ATTDEF")
             (cons 2 blk)
       )
SS   (ssget "_X" FILTER)
)
(if SS
   (progn
   (vl-load-com)
   (repeat (setq SSLEN (sslength SS))
(vlax-invoke-method (vlax-ename->vla-object (ssname ss (setq SSLEN (1- SSLEN)))) 'Delete)
   )
   )
)
)
)
(c:delblk3 "partnr") ;; call it with this line.

分享它,因为90%是从这里无论如何,我希望有人觉得它有帮助
页: [1]
查看完整版本: 删除图形中的属性(n