kite15 发表于 2022-7-5 17:48:16

选择中的线型更改

请给我一个代码,建议将线型改为选定的块
(vl load com)
(或acdoc)
(setq acdoc(vla get activedocument(vlax get acad object)))
(if(setq ss(ssget“_:L”'((0。“INSERT”)))
(重复(setq i(sslength ss))
(setq sn(ssname ss(setq i(1-i)))
(if(not(member(setq name(cdr(assoc 2(entget sn)))l))
(程序
(setq l(cons name l))(vlax for x(setq bd(vla item(vla get blocks acdoc)name))
(if(and(eq:vlax false(vla get isxref bd))
(eq(vla get线型x)“隐藏1_5”))
(vl catch all apply‘vla put线型(列表x)“0”)
)
)
)
)
(普林斯)
)
(如果ss(vla regen acdoc ACALL视口))
(普林斯)
(setvar“cmdecho”1)
)
 
谢谢

kpblc 发表于 2022-7-5 18:03:42

你说的是什么意思
(vl-catch-all-apply 'vla-put-linetype (list x) "0")?
尝试将其更改为
(vl catch all apply(函数(lambda()(vla put线型x)”

kite15 发表于 2022-7-5 18:26:27

您好,kpblc,
 
非常感谢您的作品。。

nod684 发表于 2022-7-5 18:40:15

我所做的是下载了FixBlock。此处为lsp
 
http://www.draftsperson.net/index.php?title=FixBlock_-_Free_LISP
 
 
并将线型更改为隐藏

SLW210 发表于 2022-7-5 18:56:59

请阅读代码发布指南,并将代码放在代码标签中。
页: [1]
查看完整版本: 选择中的线型更改