CAD多重插入引用的块破解编辑,CAD图层解密

合集下载

CAD图纸解锁

CAD图纸解锁

打开已画好的CAD图纸,发现不能编辑,光标旁有个小锁。

怎么操作?步骤:图层锁住了,把锁打开就可以了。

如果图层把锁打开了,整张图是个块,但炸不开。

我觉得有以下几种方法:1、图层被锁住了,可以用“LA”看下有没有锁住2、把所有的锁住都解锁,然后全选,再分解另外还可以在块编辑器里可以编辑。

在块编辑器里复制整个图,然后在另一张图里粘贴,就可以修改了。

整个图炸不开,引用是的,是一个多重插入块的问题,就是多重插入设置行间距和列间距为零, 行数和列数在2以上,这样的块用一般的命令是炸不开的,用LISP做一个小程式,就可以解决此问题,这是我在网上找的问题解答,在DXF文件中有这些命令字符的代码,将以下字符复制到记事本,然后保存为后缀名为.lsp文件,在CAD 中用APPLOAD加载这个命令,然后在命令行键入exm命令,选择对象后,就能炸天这个多重插入块.(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)。

CAD图纸被锁定问题

CAD图纸被锁定问题

CAD多重插入引用问题想必做cad方面久的人,一定会碰到拿过来的设计图怎么都修改不了的问题吧,在这里为大家做一个详细的解答。

主要原因是被加密过了。

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

这样一个多重插入引用制作完成,无法用explode炸开了。

多重块不是重复定义块,而是在矩形阵列中插入一个块的多重引用。

多重块是由命令minsert插入一个块而形成,其在正常情况下不能被分解。

但若是用普通的方法构建的多重块,可以删除掉,然后用insert再插入它原来引用的块即可。

不过,若它原来引用的块是匿名块(即名称前带*的块,只能用程序构建),就不是那么简单的了。

这是,你就需要程序(或者说插件)来还原。

vlx程序就是一个插件。

也就是我上面说的编程实现。

若不会编程,也没有插件,下面的方法四(方法三也可以实现)。

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

这样插入的这个块就可以炸开了。

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

此时再用explode就可以炸开了。

方法三: 1、打开原文件后,输出为*.wmf文件,2、新建空*.DWG文件,插入*.wmf文件,3、输入另外一个炸开命令:xplode回车4、选图层(TA),大功告成。

可惜的是文字都炸开了,填充也炸了,图层只有一个,而且文件比较大。

附件为wmf文件(自己试过这种方法)方法四:1、在任何版本中打开图件(只要能打的开就行)2、选中图,打开属性对话框,将行和列均改为1。

cad解锁和锁定图层的方法步骤详解

cad解锁和锁定图层的方法步骤详解

cad解锁和锁定图层的方法步骤详解cad解锁和锁定图层的方法步骤详解CAD中的图层很多,所以有时候就需要锁定和解锁部分图层使用,下面店铺告诉大家cad怎么解锁和锁定图层,一起来学习吧。

cad解锁和锁定图层的方法一1.某一个被锁定的层是可见的也可定位到层上的实体,但不能对这些实体做修改,不过你可以新增实体。

这些特点可用于修改一幅很拥挤、稠密的图。

把不要修改层全锁定,这样不用担心错误地改动某些实体。

这里只保留墙线图层,其余的均锁定,就可以只在墙线图层上操作了,这里把墙线全选,然后删除,效果如下。

其他的图层是不会受影响的。

2.锁定的图层上只能只能增加线条,不能删掉,不过可以撤退,下图为我只保留锁定的墙线的图层。

记得锁定后是无法选中。

cad解锁和锁定图层的方法二1.以下面图层为例,打开图层,灯泡是图层的关闭/打开,太阳是冷冻/解冻,锁是锁定/解锁2.先介绍图层的关闭与打开:关闭某个图层后,该图层中的对象将不再显示,但仍然可在该图层上绘制新的图形对象,不过新绘制的对象也是不可见的,另外通过鼠标框选无法选中被关闭图层中的对象,这里我只保留墙线图层,其余的图层全关闭,效果如下!3.下来介绍图层的冷冻与解冻:冻结图层后不仅使该层不可见,而且在选择时忽略层中的所有实体,另外在对复杂的图作重新生成时,AutoCAD也忽略被冻结层中的实体,从而节约时间。

冻结图层后,就不能在该层上绘制新的图形对象,也不能编辑和修改。

这里我只保留墙线图层,其余的图层全冷冻,效果如下!和图层关闭差不多,但还是有区别的!4.最后介绍图层的锁定与解锁:和冻结不同,某一个被锁定的层是可见的也可定位到层上的实体,但不能对这些实体做修改,不过你可以新增实体。

这些特点可用于修改一幅很拥挤、稠密的图。

把不要修改层全锁定,这样不用担心错误地改动某些实体。

这里只保留墙线图层,其余的均锁定,就可以只在墙线图层上操作了,我这里把墙线全选,然后删除,效果如下!其他的图层是不会受影响的哦!5.锁定的图层上只能只能增加线条,不能删掉,不过可以撤退,下图为我只保留锁定的墙线的图层。

加密、解密cad文件.炸开多重插入块

加密、解密cad文件.炸开多重插入块

加密、解密cad文件.炸开多重插入块加密、解密cad文件.炸开多重插入块先来讲下多重块的分解,多个方法:1、用天正软件打开多重插入块图纸,用天正下的“图纸保护”菜单,把多重块再加密下(在加密中不要设密码,直接回车确定),在使用天正图纸保护命令功能,把不能编辑的多重插图做一次保护,加密好后(不用加密码),可以使用天正分解对象功能+cad分解功能一步步的对图形进行了,直到把图纸分解好后。

具体介绍下步骤:(1)用天正打开加密的多重块图纸,选择图纸进行分解,显示为一个多重块不能分解:(2)用天正只带的功能“图纸保护”命令,把多重块图纸加密下,(记住不要设密码,直接确定就好)2、输入“CYN-”,将多重插入块转换为普通快,然后可以一步一步的炸开编辑!3、把以下内容保存为lsp文件(如exm.lsp),加载后运行exm既可把“多重插入块”转换为“普通块”,然后既可用“explode”分解。

加载后运行lockb可把“普通块”转换为“多重插入块”;;-------------------------------------------------------------;;转换“多重插入块”为“普通块”。

(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))4、有两个好工具,可以轻松炸开。

解决多重插入块无法分解的问题

解决多重插入块无法分解的问题

解决多重插入块无法分解的问题2012-10-22 10:27:53| 分类:cad相关| 标签:cad多重插入块分解|举报|字号订阅工作中遇到了无法分解的“多重插入块”的问题,正当准备纯手工绘制原图的时候,尝试百度,得到了以下的办法并解决了问题,幸哉。

将下面的代码复制在记事本内,将txt文件另存为unlk.lsp文件,打开这张不能修改的图纸,在命令行输入appload选择加载程序文件unlk.lsp,命令行键入unlk,再选择不能修改的图块。

ps,有的打散一次后,依然有些小图加密的,就可以小部分的打散,步骤同上(defun c:unlk (/en ent)(setq en (entsel "n请选择被加密的图形:"))(if en(if(=(cdr (assoc 0(setq ent (cdr (entget (setq en (car en))))))) "INSERT")(progn(setq ent (entmakex(list '(0 . "INSERT")(assoc 2 ent)(assoc 10 ent))))(command "_.explode" (entlast))(entdel en))))(princ "nOK,解密成功。

")(princ))什么是多重块?AUTOCAD为了省内存,省空间,提高效率,引进了块引用这一技术。

你在当前图纸空间插入一个块,它并不是把这个块复制一遍,而是把这个块的一些属性描述引过来,跟C++里面的引用极像。

我现在讨论的不是引用是怎么实现的,AUTOCAD最大的重头就是块,大家肯定是很了解的。

我想说的是今天我和老韩研究的一个东西,AcDbMInsertBlock -多重插入块。

它其实就是对块引用派生过来的一个新的东西,比普通块引用多了几个属性。

解密程序

解密程序

加密、解密cad文件,炸开多重插入块”CAD图纸加密和解密程序”用法:(2012.10.8日炸开)””1,在autocad中,打开加密的cad图纸.2,点击autocad菜单→> “工具”栏,→> “加载应用程序”,找到解压后的minser.lsp 程序双击,加载成功后,cad命令行显示“已成功加载加密、解密cad文件3, 加载后会出现提示对话框,点确定。

4,在autocad中,在命令行输入xxi,回车,选择要解密的图形,回车。

5,在autocad中,在命令行输入tt2,回车,选择要解密的图形,回车。

6,选择“炸开”工具,回车,选择要解密的图形,回车。

7,重复第6条,即可炸开。

(defun c:xxi (/ a ent elst el nm pt xsc ysc zsc ang xi yi xd yd i ii eli)(setq a (car(entsel)));;块.(setq ent (entget a)elst '(100 66 0 2 10 41 42 43 50 210 330 8 -3)el (vl-remove-if-not '(lambda(x)(member (car x) elst)) ent)el (mapcar '(lambda(x)(if (equal x '(100 . "AcDbInsertBlock")) '(100 . "AcDbBlockReference") x))el))(mapcar '(lambda(x y)(set x (cdr(assoc y ent))))'(nm pt xsc ysc zsc ang xi yi xd yd)'(2 10 41 42 43 50 70 71 44 45));;返回实例:("*U1" (0.0 0.0 0.0) 1.0 1.0 1.0 0.0 2 2 0.0 0.0)(vl-cmdf ".ucs" "_ob" a)(cond((and (equal xd 0. 1e-4)(equal yd 0. 1e-4))(entmake el))((not(= 0 xi yi))(setq i 0 ii 0)(repeat yi(repeat xi(entmake(subst (cons 10 (trans (list (* i xd)(* ii yd) 0.) 1 0))(assoc 10 el)el))(setq i (1+ i)))(setq i 0 ii (1+ ii))))(T nil))(entdel a)(vl-cmdf ".ucs" "p")(princ))(defun c:tt2 (/ a ent elst el nm pt xsc ysc zsc ang xi yi xd yd i ii eli)(setq a (car(entsel)));;块.(setq ent (entget a)elst '(100 66 0 2 10 41 42 43 50 210 330 8 -3)el (vl-remove-if-not '(lambda(x)(member (car x) elst)) ent)el (mapcar '(lambda(x)(if (equal x '(100 . "AcDbInsertBlock")) '(100 . "AcDbBlockReference") x)) el))(mapcar '(lambda(x y)(set x (cdr(assoc y ent))))'(nm pt xsc ysc zsc ang xi yi xd yd)'(2 10 41 42 43 50 70 71 44 45));;返回实例:("*U1" (0.0 0.0 0.0) 1.0 1.0 1.0 0.0 2 2 0.0 0.0);(vl-cmdf ".ucs" "_ob" a)(cond((and (equal xd 0. 1e-4)(equal yd 0. 1e-4))(entmake el))((not(= 0 xi yi))(setq i 0 ii 0)(repeat yi(repeat xi(entmake(subst (cons 10 (trans(list (* i xd)(* ii yd) 0.) a 0))(assoc 10 el)el))(setq i (1+ i)))(setq i 0 ii (1+ ii))))(T nil))(entdel a);(vl-cmdf ".ucs" "p")(princ))。

CAD图纸被锁定问题

CAD图纸被锁定问题

CAD多重插入引用问题想必做cad方面久的人,一定会碰到拿过来的设计图怎么都修改不了的问题吧,在这里为大家做一个详细的解答。

主要原因是被加密过了。

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

这样一个多重插入引用制作完成,无法用explode炸开了。

多重块不是重复定义块,而是在矩形阵列中插入一个块的多重引用。

多重块是由命令minsert插入一个块而形成,其在正常情况下不能被分解。

但若是用普通的方法构建的多重块,可以删除掉,然后用insert再插入它原来引用的块即可。

不过,若它原来引用的块是匿名块(即名称前带*的块,只能用程序构建),就不是那么简单的了。

这是,你就需要程序(或者说插件)来还原。

vlx程序就是一个插件。

也就是我上面说的编程实现。

若不会编程,也没有插件,下面的方法四(方法三也可以实现)。

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

这样插入的这个块就可以炸开了。

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

此时再用explode就可以炸开了。

方法三: 1、打开原文件后,输出为*.wmf文件,2、新建空*.DWG文件,插入*.wmf文件,3、输入另外一个炸开命令:xplode回车4、选图层(TA),大功告成。

可惜的是文字都炸开了,填充也炸了,图层只有一个,而且文件比较大。

附件为wmf文件(自己试过这种方法)方法四:1、在任何版本中打开图件(只要能打的开就行)2、选中图,打开属性对话框,将行和列均改为1。

autocad图纸解密、炸开技巧

autocad图纸解密、炸开技巧

有的CAD图形由于加了密,整张图纸无法分解,这时候我们就不能对里面的构件进行转化,如果你用分解命令命令行会提示找到1个,1 个是多重插入引用,此时是无法分解的。这时候可能是由于CAD加密造成的,我们可以用CAD的UNLOCKDWG命令对图纸进行解密,解密后的图纸就能用分解等相关命令进行操作了。注:该命令需要加载插件lockdwg.VLX支持,可以从网上下载。
一、新建一个文档,将CAD内容通过复制,粘贴的方法保存。但这不是最好的方法。
二、输入save,保存即可。
3.在cad中,整体块能部分隐藏,块炸开后,原块全显示出来,是怎么做到的呢?怎样隐藏的?
使用“外部参照裁剪”命令,具体可以查看命令:xclip.
4.如何炸开“多重插入块”?提示“多重插入引用”.
(princ "\nOK,解密成功。")
(princ)
) Leabharlann 多重插入引用的分解(cad块的分解) 多重插入引用的分解
炸开“多重插入引用”的方法以及制作
1.“多重插入引用”的制作:用minsert命令,提示块名,在cad工作目录下找一张图,键入这个图名,然后到提示行数或列数时,输入2以上,但行距或列距输入0。这样一个多重插入引用制作完成,无法用explode炸开了。多重块不是重复定义块,而是在矩形阵列中插入一个块的多重引用。多重块是由命令minsert插入一个块而形成,其在正常情况下不能被分解。但若是用普通的方法构建的多重块,可以删除掉,然后用insert再插入它原来引用的块即可。不过,若它原来引用的块是匿名块(即名称前带*的块,只能用程序构建),就不是那么简单的了。这是,你就需要程序(或者说插件)来还原。vlx程序就是一个插件。也就是我上面说的编程实现。若不会编程,也没有插件,下面的方法四(方法三也可以实现)。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
然后输入“unlk”命令就行了。
CAD多重插入引用的块破解编辑,CAD图层解密
将下面的代码复制在记事本内,另存为unlk.lsp文件,打开这张不能修改的图纸,命令appload选择加载程序文件unlk.lsp,命令行键入unlk,选择不能修改的图形。。。然后“分解”、“保存”。立即可以想干嘛干嘛了。
自己做个吧
在记事本中复制以下内容:
(list '(0 . "INSERT")
(assoc 2 ent)
(assoc 10 ent)
)
)
)
(commst))
(entdel en)
)
)
)
(princ "\nOK,解密成功。")
(princ)
)
保存为“unlk.lsp”文件
cad中用“APPLOAD”命令加载这个文件,
(defun c:unlk (/ en ent)
(setq en (entsel "\n请选择被加密的图形:"))
(if en
(if (= (cdr (assoc 0 (setq ent (cdr (entget (setq en (car en)))))))
"INSERT"
)
(progn
(setq ent (entmakex
相关文档
最新文档