这能满足你的需要吗?
- (defun c:TesT (/ ss i sset e)
- ;;; Tharwat 10 Nov. 2011 ;;;
- (defun SwapBlock (block e ename)
- (if (tblsearch "BLOCK" block)
- (progn
- (entmake (list '(0 . "INSERT")
- (cons 2 block)
- (assoc 10 e)
- (assoc 41 e)
- (assoc 42 e)
- (assoc 43 e)
- (assoc 50 e)
- )
- )
- (entdel ename)
- )
- )
- )
- (if (setq ss (ssget "_x" '((0 . "INSERT"))))
- (repeat (setq i (sslength ss))
- (setq sset (ssname ss (setq i (1- i))))
- (setq e (entget sset))
- (cond ((eq (cdr (assoc 2 e)) "16FF")
- (SwapBlock "16NF" e sset)
- )
- ((eq (cdr (assoc 2 e)) "20FF")
- (SwapBlock "20NF" e sset)
- )
- ((eq (cdr (assoc 2 e)) "24FF")
- (SwapBlock "24NF" e sset)
- )
- )
- )
- (princ)
- )
- (princ)
- )
|