本帖最后由 yjr111 于 2011-9-11 14:46 编辑
 - (defun c:xz()
- (setvar "cmdecho" 0)
- (setq n 0)
- (setq sss(ssadd ))
- (SETQ STR (GETSTRING "输入要选择的块名<支持通配符>:"))
- (prompt "通配符如:ABC*,则查找所有含ABC的块")
- (setq ss (ssget '((0 . "INSERT"))))
- (repeat (sslength ss)
- (setq bb(SSNAME ss n))
- (setq cc(ENTGET bb))
- (setq s1(CDR(ASSOC 2 cc)))
- (if(WCMATCH S1 STR)
- (progn
- (setq sss(ssadd bb sss))
- ;;; (command "select" sss "")用此句命令则选择的图元无法看到哪些被选取
- ;;; (command "select" sss )用此句命令虽看到被选取的图元,
- ;;; 但无法用其他命令修改图元,右键一回车就没了
- ;;; (redraw bb 3);;;;;;;;;;;;;;水平有限,退而求其次,只能高亮图元了
- )
- )
- (setq n(+ n 1))
- )
- (princ (strcat "共找到" (rtos (sslength sss) 2 0) "个"))
- (princ)
- )
-
已经解决问题:
|