修改了一下龙龙仔的程序,不过这种情况只适用于所多重块内的所有块都是同一个插入点,如果不同,则还是有可能能位置移动的 (defun C:TT () (setq DOC (vla-get-activedocument (vlax-get-acad-object))) (setq E (nentselp "\nSelect block:"));;要點綠色文字 (setq A (car E)) (setq OBJ_A (vlax-ename->vla-object A)) (setq B (vla-objectidtoobject DOC (vla-get-ownerid OBJ_A))) (entmake (list '(0 . "INSERT") '(100 . "AcDbBlockReference") (cons 2 (vla-get-name B)) (assoc 10 (entget (last (last e)))) '(41 . 1.0) ) ) (command "_.explode" (entlast)) (command "_.erase" (last (last E)) "") ) |