原创 CAD多重插入引用 炸开方法

2013-6-29 12:05 6915 25 25 分类: PCB 文集: PCB以及电子工艺

 

 

CAD多重插入快的制作与炸开

炸开“多重插入引用”的方法以及制作

1.“多重插入引用”的制作:用minsert命令,提示块名,在cad工作目录下找一张图,键入这个图名,然后到提示行数或列数时,输入2以上,但行距或列距输入0。这样一个多重插入引用制作完成,无法用explode炸开了。

2.炸开方法如下:

方法一:点击这个多重引用,看它的名字,然后再用minsert命令,插入这个名字,只不过都按默认的行数(1行)列数一直回车。这样插入的这个块就可以炸开了。

方法二:双击这个块,出现参照编辑对话框,点确定,出现参照编辑工具条;用explode炸开;然后点击参照编辑工具条从工作集删除对象,选中所有图形,回车;再点击参照编辑工具条上的放弃对参照的修改。此时再用explode就可以炸开了。

方法三:1、打开原文件后,输出为*.wmf文件,
2、新建空*.DWG文件,插入*.wmf文件,
3、输入另外一个炸开命令:xplode回车
4、选图层(TA),大功告成。可惜的是文字都炸开了,填充也炸了,图层只有一个,而且文件比较大。附件为wmf文件


1 问:请教一下,怎么插入*.wmf文件啊 2 答:输入wmfin插入 3 多重插入引用为一个无名块,你的第一个方法好像不管用啦!由于是无名块,你双击块时,不会出现参照编辑对话框,也就不会出现你后面说的情况;你的第三个方法文件较大,转换时间较长,我想也不是很好的方法;好的方法是建议你下载一个AutoCAD 快速加载 AutoLISP 文件,可以很轻松解决。http://www.51city.cn/blog/UploadFiles/2007-4/414905294.rar

 0

·                           本文介绍CAD多重插入引用 炸开方法

 

  多重插入引用就是 经常会使用的图纸加密技术,永远无法解开的死锁。

  方法一:

  有两个好工具,可以轻松炸开。一个是AutoCAD 快速加载 AutoLISP 文件:wjjm;另一个cad加密插件,请大家使用。

  具体方法:

  AutoCAD 快速加载 AutoLISP 文件wjjm的使用:用cad打开需要炸开的文件,将wjjm直接拖入cad窗口,命令行输入wjmm,回车后按提示操作即可。

  操作步骤:① 于CAD中,选择:“工具”菜单→“加载应用程序”选项。

  ② 于对话框中选择文件“wjjm”,进行应用程序加载。

  ③ 于CAD命令行中,输入“wjjm”命令,然后选择需要保护的图块,随便点击即可取消保护。

  方法二:

  输入“CYN-”,将多重插入块转换为普通快,然后可以炸开编辑

  方法三:

  把以下内容保存为lsp文件(如exm.lsp),加载后运行exm既可把“多重插入块”转换为“普通块”,然后既可用“explode”分解。加载后运行lockb可把“普通块”转换为“多重插入块”

  ;;-------------------------------------------------------------

  ;;转换“多重插入块”为“普通块”。

  (DEFUN C:exm ()

  (setvar "cmdecho" 0)

  (SETQ STM (car (ENTSEL " 点取多重块")))

  (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 " 点取下一多重块")))

  )

  (setvar "cmdecho" 1)

  )

  ;;--------------------------------------------------------------------

  ;;转换“普通块”为“多重插入块”

  (DEFUN C:lockb ()

  (setvar "cmdecho" 0)

  (SETQ STM (car (ENTSEL " 点取块")))

  (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 " 点取下一块")))

  )

  (setvar "cmdecho" 1)

  )

 

cad

文章评论0条评论)

登录后参与讨论
我要评论
0
25
关闭 站长推荐上一条 /2 下一条