FJQZ456 发表于 2005-4-15 22:27:00

求助]分解"不等比例插入的实体块"

本帖最后由 作者 于 2005-4-17 20:39:11 编辑 <br /><br /> <B>不等比例插入的实体块"无法分解,也就无法编辑,谁能帮忙写个分解的程序!</B>



<B>       


因为工作的需要,我做了大量能反复使用的图块保存着(墓石部件,全是立体的),如果遇到同样造型的产品,我就直接调出图块把比缩放一下插入就行了,节省了很多的劳动力,但是,有些块插入后对局部要做些小的修改,不能分解就无法对实体进行编辑,


比如说我传上来的那个块,我已经比例缩放到刚好的尺寸了,只要把后边那两个小缺口改小一点就行了,但是不能分解成实体就无法改,如果能分解成实体我只要把那两个小的面拉伸一点点就很OK了,可惜无法分解成实体,我只能是望"块"兴叹啊!


这个问题愁白了我不少的头发,希望大家能找到解决的方案,期待中!!!!

</B>









<FIELDSET><LEGEND>本帖包含附件</LEGEND>
<TABLE cellSpacing=3 cellPadding=0 width="100%" border=0>
<TBODY>
<TR vAlign=center height=25>
<TD><IMG src="skins/default/filetype/dwg.gif" border=0></TD>
<TD><A href="viewFile.asp?Boardid=25&amp;ID=17711" target="_blank" ><FONT color=#000000>Drawing4.dwg</FONT></A>       (        <B>142.94</B> KB,已被下载 <FONT color=red><B>0</B></FONT>        次        )</TD></TR>
<TR>
<TD></TD>
<TD><FONT color=#808080>该文件为 AutoCAD 2004 文件,可使用 AutoCAD 2004 及以上版本打</FONT></TD></TR></TBODY></TABLE></FIELDSET> <BR>

alin 发表于 2005-4-15 22:53:00

;; By Juerg Menzi<BR>(defun MeExplode (Obj / ExpObj ObjLst TmpEnt)<BR>       (setq        TmpEnt (entlast)<BR>        ExpObj (vla-Copy Obj)<BR>        )<BR>       (if (vl-cmdf "_.EXPLODE" (vlax-vla-object-&gt;ename ExpObj))<BR>                       (progn (setq TmpEnt (handent (cdr (assoc 5 (entget TmpEnt)))))<BR>                       (while (setq TmpEnt (entnext TmpEnt))<BR>                                       (setq ObjLst (cons (vlax-ename-&gt;vla-object TmpEnt) ObjLst))<BR>                                       )<BR>                       )<BR>                       (vla-Delete ExpObj)<BR>                       )<BR>       (reverse ObjLst)<BR>       )

FJQZ456 发表于 2005-4-15 23:00:00

请问老大,如何运行这个程序啊?

alin 发表于 2005-4-15 23:21:00

对不起,上面的程序只对二维的块有效。AutoCAD的Explode方法对二维的NUS块也不能炸开,所以有人采用这样的方法在程序中炸开NUS块。至于三维的可能要用CopyObject方法将块中对象复制出来,再变换到正确的位置。

FJQZ456 发表于 2005-4-15 23:35:00

具体如何操作,能否解释的详尽些?谢谢!

alin 发表于 2005-4-16 06:47:00

先取得对象obj,然后(meExplode obj)



如:(meExplode (vlax-ename-&gt;vla-object (car (entsel "\Select the NUS block:"))))


不过3D的不行。如果您只是想编辑它,可以在别处插入一个等比例块,炸开编辑后再Update该块。

无痕 发表于 2005-4-16 13:10:00

分解可用


c:xplode 命令

alin 发表于 2005-4-16 13:58:00

这是什么命令?

xqyhome 发表于 2005-4-16 15:30:00

Xplode与explode的核心是一样的


只不过是xplode增加了一些选项,xplode有源程序xplode.lsp,输入选项后调用的还是内部命令explode.


命令: xplode


选择要分解的对象。<BR>选择对象: 找到 1 个


选择对象:


1 个对象已找到。


输入选项 [全部(A)/颜色(C)/图层(LA)/线型(LT)/从父块继承(I)/分解(E)] &lt;分解&gt;

xqyhome 发表于 2005-4-16 16:27:00

不等比例插入的实体块"无法分解什么情况下形成的这个块文件呢?我画了一个圆,用WBLOCK写成块文件,再用不同的比例插入到图形中,圆成为了椭圆,但我用Explode命令是可以炸开这个椭圆的呀,这是怎么回事呢??
页: [1] 2 3
查看完整版本: 求助]分解"不等比例插入的实体块"