解决多重插入块无法分解的问题(完整资料).doc
- 格式:doc
- 大小:29.50 KB
- 文档页数:3
CAD图块无法分解怎么办?CAD块分解教程
大家在CAD绘图过程中,是不是经常会遇到CAD图块无法分解的情况?那么该如何解决呢?下面就和小编一起来了解一下浩辰CAD 软件中CAD图块无法分解的原因以及解决办法吧!
1、多重插入块
当CAD图纸中的图块无法分解时,可以在特性面板(如果没有特性面板可以通过CTRL+1调出)中查看一下对象类型是否为多重插入块。
多重插入块是用MINSERT命令可以插入的一个图块阵列,这种图块是无法分解的。
解决方法:
如果图块名不带*号,虽然多重插入块无法直接分解,但是可以单独再插入(I)一个同名的图块进行分解。
通常情况下图块名前都会带一个*号,也就是匿名块,这种图块在插入图块的时候是找不到的,匿名块删除后不需要清理,这种图块只能借助插件和工具来分解,但也不能保证所有的此类图块都能分解。
2、定义图块时取消勾选了“允许分解”
在浩辰CAD软件中定义图块的时候取消勾选了【允许分解】。
如下图所示:
解决方法:
CAD图块被设置了不允许分解的话,可以双击图块即可调出【编辑块定义】,在其中选择需要分解的块,点击确定;如下图所示:
此时即可调出【快编辑器】,在左侧特性面板中找到【允许分解】并将其设置为:是。
如下图所示:
除了以上两种常见情况外,还会有一些特殊情况导致CAD图块无法分解,这就需要具体情况具体分析了。
CAD里面的块不能够分解是怎么回事,选中一个块下面提示“无法分解1” !!!2011-4-23 11:46
提问者:寻觅的书奴|浏览次数:2131次
CAD里面的块不能够分解是怎么回事,我用的是2010版,选中一个块下面提示无法分解1 后面有个“1”是怎么回事啊,是无法分解而不是未找到,另外我的图层没有锁定。
请高手解答
急!!!!!
我来帮他解答
2011-4-24 14:55
满意回答
首先我回答你“无法分解1”
后面那个1 代表的是块名,前面那个“无法分解”是因为在做块时,没勾选了一个叫“允许分解”的选项,从而导致了你分解不开,不过还是有办法来分解。
在命令行输入wmfout 命令再选择要分解的对象然后保存到桌面,再再命令行输入wmfin 命令再选择桌面上把刚才保存的WMF图元文件,然后再输入X 命令(记住要反复分解2次,因为你导入的是嵌入式的块)这样便可以分解了。
并且图形尺寸不变。
CAD中多重插入块的炸开
在工作中,设计院下发的CAD图纸经常会出现多重插入块,多重插入块主要特点:一张图纸是一整块,不能普通炸开,不能部分删除,不能进行修改等。
对我们的使用造成不便。
现在就以实际图形举例,如图1:
由上图可以看出整张图都被选中,其名称为:*H1。
将多重插入块的炸开方法如下:
1、打开原文件,输出为*.wmf文件。
即:文件→输出→其他格式→选择.wmf
2、新建空.DWG文件,插入*.wmf文件
即:插入→输入→选择文件类型.wmf
3、输入另一个炸开命令:xplode回车
在炸开时要选择自己需要炸开的部位,如:全部、图层、线型等。
这样这个图形就可以得到自己需要的形式了。
岩土公司:张海蛟。
解决多重插入块无法分解的问题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 -多重插入块。
它其实就是对块引用派生过来的一个新的东西,比普通块引用多了几个属性。
新建一个空白文本文档,然后将下面“红色”代码复制到里面并保存,将文件名以及后缀名改成unlk.lsp(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))先打开无法分解的图纸,然后找到工具→加载应用程序,然后找到“unlk.lsp”那个文件点一下,然后点击“加载”按钮,对话框左下角提示”加载成功“,然后点击“关闭”按钮;然后输入命令unlk 空格,然后点一下图形,就大功告成了!如果一次不成,就多用几次unlk,因为用了多次引用快……2、把“普通块”转为“多重插入块”将文件名以及后缀名改成lockb.lsp(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))。
CAD不能LOAD解决方法:建立一个空白的acadapp.lsp放在C:\Documents and Settings\用户\Application Data\Autodesk\AutoCAD 2008\R17.1\chs\Support里面说明:上面的目录是xp下面的,请将“用户”修改为你的xp登录名CAD程序无法启动,丢失ac1st16.dll:要解决此问题,务必确保该文件所在的文件夹已在PATH 语句中正确指定。
该文件位于:C:\Program Files\Common Files\Autodesk Shared。
确保在PATH 语句中,C:\Program Files\Common Files\Autodesk Shared 项拼写正确,并且结尾处没有反斜线符号(\)。
注意:如果路径语句太长,PATH 语句中的C:\Program Files\Common Files\Autodesk Shared 项可能无效。
确定C:\Program Files\Common Files\Autodesk Shared 文件夹是否已被PATH 语句正确读取:1.在命令行中(DOS 提示),输入SET。
2.检查PATH 语句中指定的文件夹。
3.如果C:\Program Files\Common Files\Autodesk Shared 文件夹没有列出,可将之移到PATH 语句的开头。
4.重新启动您的计算机,以便包含PATH 语句的autoexec.bat 文件被重新读入。
”说白了,我的电脑——>右键属性——>高级选项卡(win7的是高级系统设置)——>环境变量——>系统变量——>变量名“Path”里面,有很长的一段值,例如“C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\PROGRAM FILES\FARSTONE\VIRTUALDRIVE\DVDCREATOR;C:\Program Files\Windows7Master;C:\Program Files\Windows Live\Shared;C:\Program Files\Common Files\Thunder Network\KanKan\Codecs;C:\Program Files\Common Files\Autodesk Shared\;C:\WINDOWS\SYSTEM32;C:\WINDOWS;C:\WINDOWS\SYSTEM32\WBEM;C:\WINDOWS\SYSTEM32\WINDOWSPOWERSHELL\V1.0\;C:\PROGRAM FILES\INTEL\WIFI\BIN\;C:\PROGRAM FILES\COMMON FILES\INTEL\WIRELESSCOMMON\;C:\PROGRAM FILES\THINKPAD\BLUETOOTH SOFTWARE\;C:\WINDOWS;C:\WINDOWS\SYSTEM32\WBEM;C:\WINDOWS\SYSTEM32;C:\PROGRAM FILES\COMMON FILES\THUNDER NETWORK\KANKAN\CODECS;C:\PROGRAM FILES\WINDOWS7MASTER;C:\PROGRAM FILES\FARSTONE\VIRTUALDRIVE\;C:\PROGRAM FILES\FARSTONE\VIRTUALDRIVE\VDP”每个分号前的路径就是一个程序,以前都是装完系统直接装CAD,这次则是删除了CAD2011,回到2004,变量值“C:\Program Files\Common Files\Autodesk Shared\;”排在了所有的变量值的最后,估计CAD2004在WIN7和XP下不太一样,读不到这么后(太长了),移到前面就好了。
CAD中如何创建一些多重插入块
常用CAD的朋友们是知道,一些图纸使用多重插入块来进行加密,多重插入块是无法直接分解的,我们只能自己创建了,那么如何创建呢?
其实穿件多重插入块很简单的,CAD提供了很多多重插入块的命令,只是在菜单栏和工具栏中找不到。
插入图块的命令就是INSERT,快捷键是I,要创建多重插入块的命令是MINSERT,就是在前面加了一个M,执行MINSERT的命令后命令行会要求依次确定图块名、插入点、比例、角度、行列数和行列间距等,例如:
命令:MINSERT 输入块名或[?]:
单位:毫米转换:1.0000
指定插入点或[基点(B)/比例(S)/X/Y/Z/旋转(R)]:
输入X 比例因子,指定对角点,或[角点(C)/XYZ(XYZ)] <1>:
输入Y 比例因子或<</span>使用X 比例因子>:
指定旋转角度<0>:
输入行数(---) <1>: 3
输入列数(|||) <1>: 4
输入行间距或指定单位单元(---): 500
指定列间距(|||): 600
通过上面这些参数我们可以看出,利用minsert命令不仅可以创建类似加密程序中所做的行列间距为0的多重插入块,我们也可以创建一些线性排列或矩形阵列的多重插入块,如下图所示。
如果有类似线性或矩形阵列插入图块的需要的话,可以试试多重插入块,插入后可以作为一个整体移动、删除,有时可能会带来一些便利。
CAD的命令有很多,并不是所有命令都在菜单和工具栏中能找到,如果你想全面了解CAD的命令,就可以看看帮助中的命令参考部分内容。
推荐阅读:绘图时CAD会出现一些小图标,如何设置。
cad图⽆法分解怎么?cad⽆法分解的解决办法cad⽂件不能分解,是不是你感觉很奇怪呢?是不是第⼀次遇见这种怪异的问题呢?其实这个问题看起来有些不正常,其实质不是那样的,cad⽂件不能分解还是有原因的,找到问题的根源还是可以将实现cad⽂件分解的。
cad2017中⽂特别版 64位官⽅最新安装版类型:3D制作类⼤⼩:1.95GB语⾔:简体中⽂时间:2016-03-29查看详情⼀、原理分析,cad⽂件不能分解什么原因?⼀般cad⽂件不能分解可能存在以下⼏种情况:1、⽂件所在图层锁定,导致cad⽂件内容锁定,导致cad不能被分解;2、cad⽂件内cad⽂件为外部参照⽂件,⽂件本⾝不接受任何操作,导致⽂件不能被分解;3、其他情况,如⽂件出错或者电脑出现问题。
⼆、解决问题,应该怎么做呢?1、⾸先,,打开要做分解的cad⽂件,在菜单栏找到“插⼊”/“外部参照”,点击“外部参照”打开“⽂件参照编辑器”,检查要被分解的⽂件是不是在外部参照⽂件中,如果确实在外部参照⽂件中,只能找到外部参照⽂件,才能实现cad⽂件分解,如图,⼩编的cad⽂件参照的是drawing2,打开drawing2即可实现分解。
若不是,请接着看2、其次,仍然是在在菜单栏找到“⽂件”/“图形实⽤⼯具”/“核查”,检查要分解的cad⽂件是否有错误,如果有错误,重新按照“⽂件”/“图形实⽤⼯具”/“修复”进⾏修复即可,如图,(根据命令提⽰操作即可),修复完成之后,尝试分解要分解的cad⽂件,如果可以直接分解,问题即表⽰得到解决,若还是没解决,请继续往下看3、再次,如果检测cad⽂件不存在错误或者cad有错误⽽被修复了之后,让然不能对其进⾏分解,然后,在命令栏输⼊“la”命令(全称layon),打开cad图层管理器,检查是否要分解的cad⽂件图层被锁定,如果锁定,请解除锁定之后,重试分解。
⼀般可以得到彻底解决,如图。
个人收集整理-ZQ炸开“多重插入引用”地方法以及制作炸开“多重插入引用”地方法以及制作.“多重插入引用”地制作:用命令,提示块名,在工作目录下找一张图,键入这个图名,然后到提示行数或列数时,输入以上,但行距或列距输入.这样一个多重插入引用制作完成,无法用炸开了.多重块不是重复定义块,而是在矩形阵列中插入一个块地多重引用.多重块是由命令插入一个块而形成,其在正常情况下不能被分解.但若是用普通地方法构建地多重块,可以删除掉,然后用再插入它原来引用地块即可.不过,若它原来引用地块是匿名块(即名称前带*地块,只能用程序构建),就不是那么简单地了.这是,你就需要程序(或者说插件)来还原.程序就是一个插件.也就是我上面说地编程实现.若不会编程,也没有插件,下面地方法四(方法三也可以实现)..炸开方法如下:方法一:点击这个多重引用,看它地名字,然后再用命令,插入这个名字,只不过都按默认地行数(行)列数一直回车.这样插入地这个块就可以炸开了.方法二:双击这个块,出现参照编辑对话框,点确定,出现参照编辑工具条;用炸开;然后点击参照编辑工具条从工作集删除对象,选中所有图形,回车;再点击参照编辑工具条上地放弃对参照地修改.此时再用就可以炸开了.方法三:、打开原文件后,输出为*文件,、新建空*文件,插入*文件,、输入另外一个炸开命令:回车、选图层(),大功告成.可惜地是文字都炸开了,填充也炸了,图层只有一个,而且文件比较大.附件为文件方法四:、在任何版本中打开图件(只要能打地开就行)、选中图,打开属性对话框,将行和列均改为.、另存为以下(包括)版本格式.、打开,打开刚才另存地图,保存.(记住,这步尤其重要,必须是不能是及以上版本)好了,你再用任何版本地打开看看.另外一种方法就是编程,直接炸开即可.1 / 1。
CAD多重插入引用怎么炸开呀? cad dwg 加密解密2009年05月02日星期六 07:41 P.M.1、之一多重插入引用的分解炸开“多重插入引用”的方法以及制作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)版本格式。
【最新整理,下载后即可编辑】
解决多重插入块无法分解的问题
2012-10-22 10:27:53| 分类:cad相关| 标签:cad多重插入块分解|举报|字号订阅
工作中遇到了无法分解的“多重插入块”的问题,正当准备纯手工绘制原图的时候,尝试百度,得到了以下的办法并解决了问题,幸哉。
将下面的代码复制在记事本内,将txt文件另存为unlk.lsp文件,打开这张不能修改的图纸,在命令行输入appload选择加载程序文件unlk.lsp,命令行键入unlk,再选择不能修改的图块。
ps,有的打散一次后,依然有些小图加密的,就可以小部分的打散,步骤同上
什么是多重块?
AUTOCAD为了省内存,省空间,提高效率,引进了块引用这一技术。
你在当前图纸空间插入一个块,它并不是把这个块复制一遍,而是把这个块的一些属性描述引过来,跟C++里面的引用极像。
我现在讨论的不是引用是怎么实现的,AUTOCAD最大的重头就是块,大家肯定是很了解的。
我想说的是今天我和老韩研究的一个东西,AcDbMInsertBlock -多重插入块。
它其实就是对块引用派生过来的一个新的东西,比普通块引用多了几个属性。
具体是多了列数,行数,列距,行距。
它可以用在什么地方呢?比如你现在要插入四个一样的块,就是位置不一样,用普通的块引用的话,要引四次。
这样还是很占资源的,效率不高。
而如果用AcDbMInsertBlock ,你可以定义一个2列2行,多个插入点的AcDbMInsertBlock 。
AUTOCAD内部并没有复制多份引用,我写程序进去把AcDbMInsertBlock 里面的每一个实体拷贝出来了,发现只有一份。
当然你不能炸开AcDbMInsertBlock ,如果可以炸开你就可以发现我说的肯定是对的。
多重插入块还有一个很有趣的是,它可以用来做加密,当然很容易破解掉的。
大家都知道,无名块是不能够编辑的,所以可以用下面的步骤就可以生成一个只能看不能改的图。
1)、把整个图作成一个块。
2)、把当前图纸空间的实体删除了,用Minsert把刚才那个块插入。
3)、把刚才那个块的块名改成*U。
到现在,这个图不能分解,也不能编辑了,呵呵。
当然破解非常简单的,一个最直接的是把这个多重插入块转成单插入块,然后炸开。
还有一个就是把块表名字改了,这样就可以编辑块了。
当然,你可以作得复杂一点,进入块表记录,把里面每个实体克隆一遍。
“多重插入引用”的制作:用minsert命令,提示块名,在cad工作目录下找一张图,键入这个图名,然后到提示行数或列数时,输入2以上,但行距或列距输入0。
这样一个多重插入引用制作完成,无法用explode炸开了。
多重块不是重复定义块,而是在矩形阵列中插入一个块的多重引用。
多重块是由命令minsert插入一个块而形成,其在正常情况下不能被分解。
但若是用普通的方法构建的多重块,可以删除掉,然后用insert 再插入它原来引用的块即可。
不过,若它原来引用的块是匿名块(即名称前带*的块,只能用程序构建),就不是那么简单的了。
这是,你就需要程序(或者说插件)来还原。
vlx程序就是一个插件。
也就是我上面说的编程实现。
若不会编程,也没有插件,下面的方法可以实现。