0 Members and 1 Guest are viewing this topic.
((0 . "INSERT") (8 . "BlockName"))
(defun c:blkto0 ( / idx lst sel )(if (setq sel (ssget '((0 . "INSERT"))))(repeat (setq idx (sslength sel))(block->0 (cdr (assoc 2 (entget (ssname sel (setq idx (1- idx)))))))))(command "_.regen")(princ))(defun block->0 ( blk / ent enx )(cond( (member blk lst))( (setq ent (tblobjname "block" blk))(while (setq ent (entnext ent))(entmod (subst-append 8 "0" (subst-append 62 256 (setq enx (entget ent)))))(if (= "INSERT" (cdr (assoc 0 enx)))(block->0 (cdr (assoc 2 enx)))))(setq lst (cons blk lst)))))(defun subst-append ( key val lst / itm )(if (setq itm (assoc key lst))(subst (cons key val) itm lst)(append lst (list (cons key val)))))
((0 . "INSERT") (2 . "BlockName"))
(defun c:blkto0 ( / idx lst sel );(if (setq sel (ssget '((0 . "INSERT"))))(ssget "x" '((0 . "INSERT") (2 . "REVS"))(repeat (setq idx (sslength sel))(block->0 (cdr (assoc 2 (entget (ssname sel (setq idx (1- idx)))))))))(command "_.regen")(princ))(defun block->0 ( blk / ent enx )(cond( (member blk lst))( (setq ent (tblobjname "block" blk))(while (setq ent (entnext ent))(entmod (subst-append 8 "0" (subst-append 62 256 (setq enx (entget ent)))))(if (= "INSERT" (cdr (assoc 0 enx)))(block->0 (cdr (assoc 2 enx)))))(setq lst (cons blk lst)))))(defun subst-append ( key val lst / itm )(if (setq itm (assoc key lst))(subst (cons key val) itm lst)(append lst (list (cons key val)))))
(defun c:blkto0 ( / idx sel ) (if (setq sel (ssget "_A" '((0 . "INSERT") (2 . "REVS")))) (repeat (setq idx (sslength sel)) (block->0 (cdr (assoc 2 (entget (ssname sel (setq idx (1- idx))))))) ) ) (command "_.regen") (princ))