;Convert block to XREF. (Filename must be on search path and = block name) ; ; AUTHOR: Henry C. Francis ; 425 N. ASHE ST. ; Southern Pines, NC 28387 ; All rights reserved without prejudice. ; ; Copyright: 12-20-94 ; Edited: 11-10-95 ; (DEFUN C:RXREF ( / ss xrflag blkol blknm rblknm inxyz inscl inang) (setq ss(ssadd(car(entsel "\nSelect block to convert to xref. ")))) (if (= "INSERT"(cdr(assoc 0(entget(ssname ss 0))))) (setq xrflag(cdr(assoc 70(tblsearch "block"(cdr(assoc 2(entget(ssname ss 0)))))))) nil );if (while (or (not(= "INSERT"(cdr(assoc 0(entget(ssname ss 0)))))) (or (= 4 xrflag)(= 5 xrflag)(= 6 xrflag)(= 7 xrflag)(= 20 xrflag) (= 36 xrflag)(= 52 xrflag)(= 68 xrflag)(= 84 xrflag)(= 100 xrflag) (= 116 xrflag)(not(=(rem xrflag 2)0)) );or );or (if(assoc 2(entget(ssname ss 0))) (if(assoc 1(tblsearch "block"(cdr(assoc 2(entget(ssname ss 0)))))) (setq ss(ssadd (car(entsel"\nXREF selected. Select again: ")))) (setq ss(ssadd (car(entsel"\nNot a block, or an anonymous block was selected. Select again: ")))) );if (setq ss(ssadd (car(entsel"\nNot a block, or an anonymous block was selected. Select again: ")))) );if (if (= "INSERT"(cdr(assoc 0(entget(ssname ss 0))))) (setq xrflag(cdr(assoc 70(tblsearch "block"(cdr(assoc 2(entget(ssname ss 0)))))))) nil );if );while (setq blkol (cdr(assoc 2(entget(ssname ss 0))))) (progn (setq edtw (entget(ssname ss 0))) (setq inxyz (strcat(rtos(cadr(assoc 10 edtw)))","(rtos(caddr(assoc 10 edtw))))) (setq xscl (cdr(assoc 41 edtw))) (setq yscl (cdr(assoc 42 edtw))) (setq zscl (cdr(assoc 43 edtw))) (setq inang (angtos(cdr(assoc 50 edtw))(getvar"aunits")8)) (setq nn 1) (while (tblsearch "block" (strcat(substr blkol 1(1-(strlen blkol)))(rtos nn 2 0))) (setq nn (1+ nn)) );while (setq rblkn (strcat(substr blkol 1(1-(strlen blkol)))(rtos nn 2 0))) (if (findfile (strcat blkol ".dwg")) (progn (command ".rename" "b" blkol rblkn) (princ(strcat"\nRenaming " blkol " as " rblkn ", please wait.")) (command ".xref" "a" blkol inxyz xscl yscl inang) (princ(strcat"\nBlock " blkol " reattached as an xref. ")) (entdel (cdar edtw)) (command ".redraw") );progn (princ(strcat"\nCan not xref " blkol ". File not found. ")) );if );progn (princ) );DEFUN