永发信息网

我有个cad图纸分解不开,提示说是1 个是多重插入块,块名"*U483",请高手指点怎么分解?

答案:4  悬赏:60  手机版
解决时间 2021-11-13 10:58
  • 提问者网友:箛茗
  • 2021-11-12 17:11
我有个cad图纸分解不开,提示说是1 个是多重插入块,块名"*U483",请高手指点怎么分解?
最佳答案
  • 五星知识达人网友:拾荒鲤
  • 2021-11-12 18:29
把以下内容保存为lsp文件,加载后运行exm既可把,然后既可用“explode”分解。
;;-------------------------------------------------------------
;;转换“多重插入块”为“普通块”。
(DEFUN C:exm ()
(setvar "cmdecho" 0)
(SETQ STM (car (ENTSEL "\n点取多重块")))
(while stm
(setq e (entget stm))
(setq stlx (cdr (assoc 0 e)))
(if (= stlx "INSERT")
(PROGN
(setq r_zm70 (assoc 70 e))
(setq c_zm71 (assoc 71 e))
(setq r_dist_zm44 (assoc 44 e))
(setq c_dist_zm45 (assoc 45 e))
(setq e (subst (cons 44 0) r_dist_zm44 e))
(setq e (subst (cons 45 0) c_dist_zm45 e))
(setq e (subst (cons 70 0) r_zm70 e))
(setq e (subst (cons 71 0) c_zm71 e))
(setq e (subst (list 100 "AcDbBlockReference") (list 100 "AcDbMInsertBlock") e))
(entmake e)
(entdel stm)
))
(SETQ STM (car (ENTSEL "\n点取下一多重块")))
)
(setvar "cmdecho" 1)
)
;;--------------------------------------------------------------------
;;转换“普通块”为“多重插入块”
(DEFUN C:lockb ()
(setvar "cmdecho" 0)
(SETQ STM (car (ENTSEL "\n点取块")))
(while stm
(setq e (entget stm))
(setq stlx (cdr (assoc 0 e)))
(if (= stlx "INSERT")
(PROGN
(setq r_zm70 (assoc 70 e))
(setq c_zm71 (assoc 71 e))
(setq e (subst (cons 70 1) r_zm70 e))
(setq e (subst (cons 71 1) c_zm71 e))
(setq e (subst (list 100 "AcDbMInsertBlock") (list 100 "AcDbBlockReference") e))
(entmake e)
(entdel stm)
))
(SETQ STM (car (ENTSEL "\n点取下一块")))
)
(setvar "cmdecho" 1)
)
;;--------------------------------------------------------------------追问试过了还是显示一个多重插入块
全部回答
  • 1楼网友:人類模型
  • 2021-11-12 21:15
用炸开命令X
  • 2楼网友:胯下狙击手
  • 2021-11-12 20:06
用命令“X"炸开就是了,如果是多重块,炸到最后为止。
  • 3楼网友:人间朝暮
  • 2021-11-12 19:04
打开插入、外部参照管理器,选中此块名,点绑定,确定。就可以分解了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯