更改属性
你好实际上,我有一个计划,有许多不同的块,具有不同颜色/层和线型的属性。。。。
因此,我想从图形中的所有属性中进行此操作:
层“0”
线型“Bylayer”
颜色“白色”
一次可以改变吗?
谢谢你的帮助! 如果你想设置属性的属性。选择块类型“be”,并设置所需内容。然后同步属性 你好
我知道。。。但我想在一个有许多不同区块的计划上这样做!所以最好马上。。。 只需使用合法值操作列表的vl:
;;;MULTPIPLE EDITS OF ALL ATTRIBUTES BASED ON
;;;A GROUP VARIABLE ASSOCIATION LIST
(defun c:att-med (/ vl ss i en ed an ad g)
(setq vl (list (cons 6 "BYLAYER")
; (cons 7 (getvar "TEXTSTYLE"))
(cons 8 "0")
; (cons 40 1.0)
(cons 62 7)))
(and (setq ss (ssget "X" '((0 . "INSERT")(66 . 1))))
(setq i 0)
(while (setq en (ssname ss i))
(setq ed (entget en)
an (entnext en)
ad (entget an))
(while (= "ATTRIB" (cdr (assoc 0 ad)))
(foreach p vl
(setq g (car p))
(if (assoc g ad)
(setq ad (subst p (assoc g ad) ad))
(setq ad (append ad (list p)))))
(entmod ad)
(setq an (entnext an)
ad (entget an)))
(entupd en)
(setq i (1+ i))))
(prin1))
这相当危险,因为它会影响dwg中的每个属性。
它也不重新定义块表ATTDEF定义
您可以制作一个UI前端,但这需要相当大的工作量-大卫 有许多可用的工具和方法。
我喜欢GileCAD的解决方案来处理块的属性。应该试试。。
http://gilecad.azurewebsites.net/LISP/Edit_bloc_3.5.zip
你好
我做了一个att med。lsp。。。但是att med命令不起作用?
你好
我有这个。。。。但他改变了属性和块。。。我只想更改属性,块需要留在实际层上。
hhhmmm在这方面工作过???你(加载“ATT-MED”)
嗨,大卫,
我在我的att med中做了一个新的复制/粘贴。lsp。。。。现在它开始工作了!
干得好。。非常感谢。 很高兴听到这个消息-大卫
页:
[1]