块内容随层
<p>在插入块时块可以整体随层但是</p><p>块内容如何让他也随层</p><p>比如 我用0层绘制一图形 定义为块</p><p>然后在当前层为2 时插入这个块 哪个当块炸开后其图形还在0层 如何控制其炸开后图形在2 层</p><p></p> <p>多年前有那么一个Lisp大概合您用</p><p></p> <p>好东西</p> <p>感谢2楼的兄弟的程序</p><p>但是我只是想知道自己应该怎么去操作或者编写LISP</p><p>也许CAD本身就可以实现</p><p>期待哪个高手指点一二</p> QUAN2518发表于2008-6-6 2:36:00static/image/common/back.gif在插入块时块可以整体随层但是块内容如何让他也随层比如 我用0层绘制一图形 定义为块然后在当前层为2 时插入这个块 哪个当块炸开后其图形还在0层 如何控制其炸开后图形在2 层<p>……</p><p>(setq ss (ssget '((0 . "INSERT"))))</p><p>(setq i 0)</p><p>(repeat (sslength ss)</p><p> (setq en (ssname ss i))</p><p> (command "explode" en)</p><p> (command ".chprop" "p" "la" (getvar "CLAYER") "")</p><p> (setq i (1+ i))</p><p>)</p><p>……</p> <p><font face="Verdana" color="#000000">感谢ZZXXQQ给的以上答案</font></p><p><font face="Verdana" color="#000000">可能我叙述不清楚</font></p><p><font face="Verdana" color="#000000">我是想这个块在插入1层时 其块内的图形对象(原为0层)也自动变为1层对象.但是不需要炸开此块</font></p><p><font face="Verdana" color="#000000">我使用冲模WG中的图框就有此功能</font></p><p><font face="Verdana" color="#000000"> 当你将此块更换到A图层后</font></p><p><font face="Verdana" color="#000000"> 单开A层,也能显示置换到A层后的块 但是其他层的块不可见. </font></p><p><font face="Verdana" color="#000000">若使用X命令将这个可见的块炸开时组成块的图形也在A层(不是炸开后将其图形内容置换到A层)</font></p><p><strong><font face="Verdana" color="#da2549"></font></strong></p> QUAN2518发表于2008-6-8 15:09:00static/image/common/back.gif我是想这个块在插入1层时 其块内的图形对象(原为0层)也自动变为1层对象.但是不需要炸开此块我使用冲模WG中的图框就有此功能
<font style="BACKGROUND-COLOR: #f3f3f3;">若不涉及程式面,个人觉得最难懂的就是Block<br/>我弟弟有一回说他约经历了半年的时间才把Block的脾气摸清楚<br/>其他行业的我不甚清楚,但以冲模事业而言,是值得去投入时间的</font> liminnet发表于2008-6-8 16:27:00static/image/common/back.gif上面两位高手,我可以加上一点吗?就是块炸开,原来是0层上的随原来块的颜色,比如直线是0层的,在插入块时用了图层2,炸开后,直线还是图层2,这点上面的已经做的,但原来不是图层0的对象在块
;炸块后0层图元随层 明经 ZZXXQQ 2008.6.8
(defun c:expblk ()
(setvar "CMDECHO" 0)
(if (setq ss (ssget '((0 . "INSERT")))) (progn
(setq i 0)
(repeat (sslength ss)
(setq en (ssname ss i))
(setq lanm (cdr(assoc 8 (entget en))))
(command "explode" en)
(if (setq ss1 (ssget "p" '((8 . "0"))))
(command ".chprop" ss1 "" "la" lanm "")
)
(setq i (1+ i))
)
))
(setvar "CMDECHO" 1)
(princ)
)
<p>有两种方法</p><p>第一种就是插入块的时候修改</p><p>实际上我们插入块的时候是插入一个块引用,而不是块本身。修改块的图层的话可能会对其他块应用有影响。所以,如果一定要在插入的时候动手脚的话,我觉得这个时候应该复制一个块,将新块内的图元的图层改成当前层,然后再插入新块的引用</p><p>第二种就是分解的时候修改</p><p>这个相对容易些。插入的时候我不管你的内部图层如何,只要在你分解的时候不用CAD自带的分解命令,而是自编的程序,程序的功能就是把分解后的图元的图层修改为块引用的图层。</p><p></p><p>无论哪种做法,我觉得都是一种错误的操作!</p>
页:
[1]