快速更改图块名
本帖最后由 荒野孤行 于 2015-6-7 09:53 编辑在做某些项目衍生版时,因只有部分变更,所以直接复制原来的图进行了修改,但两份图档里面块的名称一样。将这两份图进行对比时,若直接复制到一份图档里,那么块会被同名块替换掉,故此写了此功能:直接给块名加前后缀。这样图块名就不会重名了,直接复制到另外的图里面对比就不会有块被替换的情况。好吧!又可以偷懒了。
此功能只针对不匿名的图块,若是要对匿名的图块有效,则需要重新修改,需用到vla-put-name
(defun c:t1 (/ ent)
(setvar "osmode" 15359)
(setvar "cmdecho" 0)
(setvar "delobj" 1)
(princ "\n请选取图块:")
(setq ss (ssget '((0 . "INSERT"))))
(if (not ss)
(progn (princ "\n提示:未选取图块,程序退出") (exit))
)
(setq i 0)
(setvar "qaflags" 1)
**** Hidden Message *****
(alert "\n提示:未输入前缀名及后缀名,故不更改图块名。")
)
(command "undo" "e")
(setvar "qaflags" 0)
(princ)
)
本帖最后由 浪子_无限 于 2015-10-14 17:20 编辑
这个功能太强大了,对于多人合作绘图有非常大的用处,给块加前缀,给力
不过如54楼所说,“rename”改为“-rename”较好,在CAD2012下测试是这样的。
另外如果框选到了匿名块,程序也会进行不下去,不知如何处理? 图块名添加前后缀,对于图块建立,及整理,分类,可以简化作业,感谢大神分享。 本身图中有同名块怎么改成不同的块名加上1、2、3。。。。以示区别? 很强大,工作常会用到的、、、、、 谢谢你的分享,很实用 谢谢 不错呢~
感谢分享~ 工作常会用到的、、、、、 谢谢你的分享 來學習學習 楼主,能否增加一个选项,可以自动选择图中所有的块?