Phvl 发表于 2022-7-5 23:09:55

更改属性标记

大家好。
 
我有很多块的属性标记与属性值相同
 
我试图将属性标记更改为属性提示符,然后将标记名称更改为新名称。
 
我已经找到了3个lisp,几乎解决了这个问题。
 
attupd。lsp可以将属性标记更改为attibute提示。但是当我运行“Attsync”时,所有属性标记都会更改为其原始名称。
 
雷纳特里卜。如果运行“Attsync”,lsp也可以永久更改属性标记名。但是这个lisp无法将标记更改为提示。
 
使用attr\u rename\u list。lsp您可以创建一个列表,将旧的属性标记更改为新的属性标记。
 
 
有没有可能将这三种Lisp程序结合起来?
 
 
非常感谢您的帮助。
attr\u rename\u列表。lsp
attupd。lsp
雷纳特里卜。lsp

BIGAL 发表于 2022-7-6 00:34:17

如果你看一下attupd的代码。lsp你会看到它里面有很多GET,相反的是把这个改变值,因为没有作者在代码中不能要求改变,需要找时间来改变和测试也我认为它可以修改,以适应你的任务,由你的职位编号你知道什么关于lisp?
 
(foreach att (vlax-invoke Obj 'GetAttributes)
(if (setq tag (assoc (vla-get-TagString att) lst)) ; get tag string value
(vla-put-TagString att (cdr tag)))) ; this is changing the Tag string value
likewise
(vla-get-PromptString Sub) ; retieves the prompt value you need a
(vla-put-PromptString Sub newvalue) ; you need something like this

 
那么,选择一个块,然后遍历属性以请求新变量呢。
页: [1]
查看完整版本: 更改属性标记