求层过滤问题
www.dimcax.com
求层过滤问题
求一个层过滤的代码:
比如说下面这个程序能统计图形中所有层的图块数量,
哪位高手能加点代码,让它仅统计某一层(比如说la1层)的图块数量?
(defun c:tjtk ( / blk ss)
(prompt "\n------块统计一览--------")
(prompt "\n块名:[数量]")
(while (setq blk (tblnext "block" (not blk)))
(if (/= "*" (substr (cdr (assoc 2 blk)) 1 1))
(progn
(setq ss (ssget "x" (list '(0 . "insert") (assoc 2 blk))))
(if ss (princ (strcat "\n" (cdr (assoc 2 blk)) ":[" (rtos (sslength ss))"]")))
)
)
)
(princ)
(princ "\n------块统计完成--------")
(princ "\n请输入: tjtk,统计块数量,返回一览")
(princ)
)
d
(setq ss (ssget "x" (list '(0 . "insert") (assoc 2 blk))))
试试===>
(setq ss (ssget "x" (list '(0 . "insert") (assoc 2 blk) '(8 . "a1"))))
d
不错。稍微试了一下,可以用!
谢谢楼上,只是不知道'(8 . "a1")是什么意思
d