明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2180|回复: 8

[求助]按块的名称求块的数量

[复制链接]
发表于 2004-7-6 15:15 | 显示全部楼层 |阅读模式
请编写一个程序,点击某个块就可以求出这种块类型的数量?


谢谢!
发表于 2004-7-6 15:33 | 显示全部楼层
(defun c:CalBlk( / ent ents blkname)
(setq ent (car (entsel)))
(if ent
(progn
(setq ents (entget ent))
(if (= (cdr (assoc 0 ents)) "INSERT")
(progn
(setq blkname (cdr (assoc 2 ents)))
(princ (strcat "\n块名:" blkname "," "数量:"))
(princ (sslength (ssget "x" (list '(0 . "INSERT") (cons 2 blkname)))))
)
)
)
)
(princ)
)
(prompt "Enter CALBLK to launch the program!")
发表于 2004-7-27 16:51 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2004-7-27 16:51 | 显示全部楼层
用其中的“取图块统计个数”功能!
发表于 2004-7-27 23:32 | 显示全部楼层
某书中的现成程序: 可以统计块(含块中块)的数量并制表。 ★★★★★★★★★★★★★★★★★★★ ;;;ktj.lsp (defun c:ktj()
(setvar "cmdecho" 0)
(setq os (getvar "osmode"))
(setvar "osmode" 0)
(setq pt1 (getpoint "\n左上角: "))
(setq ww (getdist pt1 "\n宽度 <50>: "))
(if (null ww) (setq ww 40.0))
(setq hh (getdist pt1 "\n每格高度 <8>: "))
(if (null hh) (setq hh 8.0))
(setq pt2 (polar pt1 0 ww))
(setq pt3 (polar pt2 (* pi 1.5) hh))
(setq pt4 (polar pt1 (* pi 1.5) hh))
(command "pline" pt1 pt2 pt3 pt4 "c")
(setq pt5 (polar pt1 0 (/ ww 2)))
(setq pt6 (polar pt5 (* pi 1.5) hh))
(command "line" pt5 pt6 "")
(command "text" "m" (inters pt1 pt6 pt4 pt5) (/ hh 2) 0 "图块名称")
(command "text" "m" (inters pt5 pt3 pt2 pt6) (/ hh 2) 0 "数量")
(setq blk (tblnext "block" t))
(while blk
(setq blkn (assoc 2 blk))
(setq blk_key (substr (cdr blkn) 1 1))
(if (/= blk_key "*")
(progn
(setq ss (ssget "X" (list blkn)))
(if (null ss)
(setq ssn 0)
(setq ssn (sslength ss))
)
(setq blknn (cdr blkn))
(setq pt1 pt4 pt5 pt6 pt2 pt3)
(setq pt4 (polar pt1 (* pi 1.5) hh))
(setq pt6 (polar pt5 (* pi 1.5) hh))
(setq pt3 (polar pt2 (* pi 1.5) hh))
(command "pline" pt2 pt3 pt4 pt1 "")
(command "line" pt5 pt6 "")
(command "text" "m" (inters pt1 pt6 pt4 pt5) (/ hh 2) 0 blknn)
(command "text" "m" (inters pt5 pt3 pt2 pt6) (/ hh 2) 0 (itoa ssn))
)
)
(setq blk (tblnext "block"))
)
(setvar "osmode" os)
(prin1)
) ★★★★★★★★★★★★★★★★★★★

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2018-9-6 15:36 | 显示全部楼层
BUXINGHAISHI BUXING
发表于 2018-9-8 15:22 | 显示全部楼层
xyp1964 发表于 2004-7-27 23:32
某书中的现成程序:

根本不用这么麻烦,小菜选择易,很容易的,能够马上全选所有同名块,一下就能看到有多少个相同的块了。
发表于 2018-9-8 15:22 | 显示全部楼层
楼主,小菜选择易,了解一下。
发表于 2018-11-11 10:34 | 显示全部楼层
这个我用VBA自编了一个小程序。不过似乎楼上大神编得更好。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-20 14:54 , Processed in 0.286535 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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