转换图块中实体到0层,支持嵌套图块,一转到底。
**** Hidden Message *****本帖最后由 st788796 于 2013-11-18 07:18 编辑
Insert 图层不变, Blcokdef 内 颜色为 Byblock
这样没有后悔机会
(princ "\n选择归并 0 层图块<回车全选>: ")
(if (setq ss (ssget '((0 . "INSERT"))))
ss
(setq ss (ssget "x" '((0 . "INSERT"))))
)
力顶 各位高手 大爆发
貌似不是一转到底 做成递归也许好些 守仁格竹GM 发表于 2013-11-18 08:50
做成递归也许好些
一般可以收集一个块名表,最后根据这个表再去遍历,不用递归,减少无用操作 st788796 发表于 2013-11-18 08:54
一般可以收集一个块名表,最后根据这个表再去遍历,不用递归,减少无用操作
有多层嵌套呢,而且每个子嵌套的子嵌套也均不同 守仁格竹GM 发表于 2013-11-18 09:05
有多层嵌套呢,而且每个子嵌套的子嵌套也均不同
遇到insert就收集,当然要判断下是否已经收集过了,最后改的时候
while blst
ifinsertnot position blst -> cons bn blst
cdr blst
这样循环 st788796 发表于 2013-11-18 09:15
遇到insert就收集,当然要判断下是否已经收集过了,最后改的时候
while blst
ifinsertnot posit ...
受教了。多谢
好东西,收集 看看,感觉不错阿。 谢谢,比较不错的应用 归零也包括颜色随层不?
来个彻底的
(defun to0 ()
(mapcar '(lambda (x)
(mapcar '(lambda (e)
(xdrx_setpropertyvalue e "Layer" "0")
(xdrx_setpropertyvalue e "Color" 0);_256 bylayer
)
(xdrx_block_getentities x)
)
)
(mapcar 'cadr (XD::Ojbect:Get "BLock"))
)
) 我正需要这个插件来清理图层,减小文件,谢谢