不收集外部参照和标注分解后可能产生的符号块
 - ;收集所有内部块的名称
- (defun K:GetAllBlkNam (/ BlkNam BlkLst)
- (setq BlkNam nil
- BlkLst nil
- )
- (while (setq BlkNam (tblnext "block" (not BlkNam)))
- (and
- (zerop (logand 53 (cdr (assoc 70 BlkNam))));忽略外部参照
- (not (wcmatch (setq BlkNam (cdr (assoc 2 BlkNam))) "`**"));忽略匿名块*U
- (not (member (strcase BlkNam)
- (list "_DOT" "_DOTSMALL" "_DOTBLANK" "_ORIGIN" "_ORIGIN2" "_OPEN" "_OPEN90" "_OPEN30" "_CLOSED" "_SMALL" "_NONE" "_OBLIQUE" "_BOXFILLED" "_BOXBLANK" "_CLOSEDBLANK" "_DATUMFILLED" "_DATUMBLANK" "_INTEGRAL" "_ARCHTICK"
- )
- )
- );忽略标注块
- (or (member BlkNam BlkLst) (setq BlkLst (cons BlkNam BlkLst)))
- )
- )
- BlkLst
- )
|