明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3538|回复: 14

求批量建块插件

[复制链接]
发表于 2022-11-13 17:36:10 | 显示全部楼层 |阅读模式
求批量建块插件
发表于 2022-11-13 19:18:47 | 显示全部楼层
kucha007 发表于 2022-11-13 18:44
试试这个,循环建匿名块

或者试试这个

  1. (defun c:TT (/ Old_Cmd ss i Pre Bnam) ;根据前缀和时间快速创建块
  2.   (setq Old_Cmd (getvar "cmdecho"))
  3.   (setvar "cmdecho" 0)
  4.   (while ;循环选择对象
  5.       (setq ss (ssget ":L"))
  6.       (if ss
  7.         (progn
  8.             (setq i 1)
  9.             (setq Pre "K");块前缀
  10.             (setq time (strcat
  11.                           (substr (rtos (getvar "CDATE") 2 4) 5 2) ;月
  12.                           (substr (rtos (getvar "CDATE") 2 4) 7 2) ;日
  13.                        )
  14.             );获取当前日期
  15.             (setq Bnam (strcat Pre time "-" (itoa i)))
  16.             (while (tblsearch "BLOCK" Bnam)
  17.               (setq Bnam (strcat Pre time "-" (itoa (setq i (1+ i)))))
  18.             )
  19.             (setq pt (getpoint "\n选择块基点:"))
  20.             (command "_.block" Bnam pt ss "")
  21.             (command "_.Insert" Bnam pt "" "" "")
  22.         )
  23.       )
  24.   )
  25.   (setvar "cmdecho" Old_Cmd)
  26.   (princ)
  27. )


点评

好用,实用,给力。  发表于 2024-3-26 02:31
回复 支持 2 反对 0

使用道具 举报

发表于 2022-11-13 18:44:15 | 显示全部楼层
本帖最后由 kucha007 于 2022-11-13 18:48 编辑

试试这个,循环建匿名块
  1. (defun c:TT (/ss pt);创建匿名块
  2.   (while ;循环选择对象
  3.       (setq ss (ssget ":L"))
  4.       (if ss
  5.         (progn
  6.           (setq pt (getpoint "\n请选择块基点:"))
  7.           (command "_.COPYBASE" "_non" pt ss "")
  8.           (command "_.PASTEBLOCK" "_non" pt )
  9.           (command "_.ERASE" ss "")
  10.         )
  11.       )
  12.   )
  13.   (princ)
  14. )

回复 支持 1 反对 0

使用道具 举报

发表于 2022-11-13 19:23:16 | 显示全部楼层
本帖最后由 kucha007 于 2022-11-13 19:27 编辑

如果你想更快的话,可以把选择集改为单一选择集,只选一次,自动回车选基点就行了。
  1. (setq ss (ssget ":L"));选择未锁定的对象,可连续多选,回车确认
  2. (setq ss (ssget ":S"));单一选择集,只能选一次

然后搜了一下发现这个:http://bbs.mjtd.com/forum.php?mod=viewthread&tid=178210&highlight=%BF%EC%CB%D9%2B%BF%E9
发表于 2022-11-13 22:47:08 | 显示全部楼层
kucha007 发表于 2022-11-13 19:23
如果你想更快的话,可以把选择集改为单一选择集,只选一次,自动回车选基点就行了。
然后搜了一下发现这个 ...

这个根据时间建的块有个小缺陷,不能一分钟内连续建立
发表于 2022-11-13 23:02:38 | 显示全部楼层
myhomer 发表于 2022-11-13 22:47
这个根据时间建的块有个小缺陷,不能一分钟内连续建立

没听懂?我没有用分钟作为块名啊?

日期加序号(有重名序号就顺延)
 楼主| 发表于 2022-11-14 21:35:54 | 显示全部楼层
尝试中,谢谢!
发表于 2022-11-15 14:20:17 | 显示全部楼层
谢谢分享,学习了
发表于 2022-11-17 07:24:26 | 显示全部楼层

谢谢分享,学习了
发表于 2022-11-17 13:19:57 | 显示全部楼层
myhomer 发表于 2022-11-13 22:47
这个根据时间建的块有个小缺陷,不能一分钟内连续建立

明白了,欢迎试试我改编的~
http://bbs.mjtd.com/thread-186619-1-1.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 04:58 , Processed in 0.193316 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表