荒野孤行 发表于 2015-6-5 19:44:39

快速更改图块名

本帖最后由 荒野孤行 于 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 16:59:46

本帖最后由 浪子_无限 于 2015-10-14 17:20 编辑

这个功能太强大了,对于多人合作绘图有非常大的用处,给块加前缀,给力
不过如54楼所说,“rename”改为“-rename”较好,在CAD2012下测试是这样的。
另外如果框选到了匿名块,程序也会进行不下去,不知如何处理?

jkop 发表于 2024-7-16 08:17:01

图块名添加前后缀,对于图块建立,及整理,分类,可以简化作业,感谢大神分享。

softbird 发表于 2019-5-29 13:59:24

本身图中有同名块怎么改成不同的块名加上1、2、3。。。。以示区别?

lxl304712346 发表于 2024-7-27 17:41:15

很强大,工作常会用到的、、、、、

林立 发表于 2024-7-15 13:46:43

谢谢你的分享,很实用 谢谢

zhangrunze 发表于 2024-3-26 09:14:01

不错呢~
感谢分享~

阳阳阳 发表于 2022-11-29 09:45:04

工作常会用到的、、、、、

ZYX2129 发表于 2022-11-25 21:22:38

谢谢你的分享

白色微風1991 发表于 2022-11-25 14:44:06

來學習學習

狼魔 发表于 2019-6-15 22:50:20

楼主,能否增加一个选项,可以自动选择图中所有的块?
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 快速更改图块名