论坛首页    职业区    学术与写作    工程技术区    软件区    资料区    商务合作区    社区办公室
 您好! 欢迎 登录注册 最新帖子 邀请注册 活动聚焦 统计排行 社区服务 帮助
 
  • 帖子
  • 日志
  • 用户
  • 版块
  • 群组
帖子
  • 60122阅读
  • 60回复

[心得]使用“exm.lsp”解密或加密为“多重插入块” [复制链接]

上一主题 下一主题
离线binglanggege
 

发帖
832
土币
10687
威望
7412
原创币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2010-05-31
目前很多CAD图件运用“插入多重插入块”的方法,
加密,
造成部分图件中的块,无法炸开,

网上游很多破解方法,现将自编lsp程序的方法罗列如下,希望对大家有帮助。

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

lsp源代码:

;;-------------------------------------------------------------
;;转换“多重插入块”为“普通块”。
(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)
)
;;--------------------------------------------------------------------

如果不愿弄,下面有现成的,请大家试用。。。支持Win7,CAD2010。。。。


[ 此帖被binglanggege在2010-09-19 15:51重新编辑 ]
附件设置隐藏,需要回复后才能看到!
3条评分土币+11
vanbohn 土币 +1 感谢解答,给您加分 前天 09:06
country111 土币 +5 优秀资料,感谢! 2023-02-17
CJN-27 土币 +5 向您学习,牛人 2021-09-23
离线binglanggege

发帖
832
土币
10687
威望
7412
原创币
0
只看该作者 1楼 发表于: 2010-05-31
回 楼主(binglanggege) 的帖子
多重插入引用的分解
炸开“多重插入引用”的方法以及制作
1.“多重插入引用”的制作:
用minsert命令,提示块名,在cad工作目录下找一张图,键入这个图名,
然后到提示行数或列数时,输入2以上,但行距或列距输入0。
这样一个多重插入引用制作完成,无法用explode炸开了。

多重块不是重复定义块,而是在矩形阵列中插入一个块的多重引用。
多重块是由命令minsert插入一个块而形成,其在正常情况下不能被分解。
但若是用普通的方法构建的多重块,可以删除掉,然后用insert再插入它原来引用的块即可。
不过,若它原来引用的块是匿名块(即名称前带*的块,只能用程序构建),就不是那么简单的了。
这是,你就需要程序(或者说插件)来还原。

vlx程序就是一个插件。也就是我上面说的编程实现。
若不会编程,也没有插件,下面的方法四(方法三也可以实现)。


2.炸开方法如下:

方法一:

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

方法二:

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

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

方法三:

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

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

方法四:

1、在任何版本中打开图件(只要能打的开就行)
2、选中图,打开属性对话框,将行和列均改为1。
 3、另存为R14以下(包括R14)版本格式。
4、打开R14,打开刚才另存的图,保存。
(记住,这步尤其重要,必须是R14不能是cad2002及以上版本)

好了,你再用任何版本的cad打开看看。

另外一种方法就是编程,直接炸开即可。

有的CAD图形由于加了密,整张图纸无法分解,
这时候我们就不能对里面的构件进行转化,
如果你用分解命令命令行会提示找到1个,
1 个是多重插入引用,
此时是无法分解的。

这时候可能是由于CAD加密造成的,
我们可以用CAD的UNLOCKDWG命令对图纸进行解密,
解密后的图纸就能用分解等相关命令进行操作了。
注:该命令需要加载插件lockdwg.VLX支持,可以从网上下载。





[ 此帖被binglanggege在2010-05-31 15:57重新编辑 ]
离线vencentbin

发帖
27
土币
3293
威望
62
原创币
0
只看该作者 2楼 发表于: 2010-08-19
多谢楼主,支持一下。。。。
待到秋来九月八,我花开时百花杀。
离线zlt0377

发帖
10
土币
313
威望
45
原创币
0
只看该作者 3楼 发表于: 2011-06-07
很需要,谢谢
离线aichong

发帖
2282
土币
816704141
威望
5761
原创币
0
只看该作者 4楼 发表于: 2011-06-09
有意思,有空试一下,谢谢提供分享。
- ¤╭⌒╮ ╭⌒╮
╱◥██◣ ╭╭ ⌒╮
︱田︱田田 ╰--学习如逆水行舟,不进则退
╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬
离线cfc0699

发帖
136
土币
3647
威望
89
原创币
0
只看该作者 5楼 发表于: 2011-06-11
楼主是个热心的人,提供这么好的方法
离线ynpgy

发帖
151
土币
10109
威望
733
原创币
0
只看该作者 6楼 发表于: 2011-06-21
回 楼主(binglanggege) 的帖子
楼主真有才,想下来看看,不过先在此谢谢
离线mqpyjh

发帖
213
土币
2265
威望
849
原创币
0
只看该作者 7楼 发表于: 2011-09-13
谢谢,我下了好多都用不了
离线wqq8081

发帖
1
土币
187
威望
1
原创币
0
只看该作者 8楼 发表于: 2011-11-21
学习了谢谢楼主你。
离线ktwinner

发帖
335
土币
4744
威望
2580
原创币
0
只看该作者 9楼 发表于: 2012-03-15
学习呀!谢谢
离线sceptic

发帖
1160
土币
68
威望
15
原创币
0
只看该作者 10楼 发表于: 2012-05-29
附件设置隐藏,需要回复后才能看到!
离线whz1315

发帖
569
土币
1510
威望
2098
原创币
0
只看该作者 11楼 发表于: 2012-06-27
楼主真有才。
快速回复
限100 字节
温馨提示:欢迎交流讨论,请勿纯表情、纯引用!
 
上一个 下一个

      浙公网安备 33010602003799号 浙ICP备14021682号-1

      工业和信息化部备案管理系统网站