可以用我写的Lisp程序的语言给我指出正确的方向吗。
由于对lisp还不熟悉,我看不出哪里出了错
下面的第一个很好用
- (Defun C:girder1 (/ sel1)
- (setq sel1 (ssget))
- (sssetfirst sel1 sel1)
- (command "explode" sel1)
- (alert "1")
- )
- (command "layer" "freeze" "*" "" )(command "layer" "thaw" "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,23" "" )
- (alert "2")
- (setq sel2 (ssget))
- (alert "3")
- (command "erase" sel2 "")
- (alert "4")
- (command "layer" "thaw" "*" "" )
- )
下一个使流程更加流线型的方法在爆炸后失败了,我不明白为什么,因为到目前为止它与上面的方法相同
- (Defun C:girder3 (/ sel1)
- (setq sel1 (ssget))
- (alert "1")
- (command "explode" sel1))
- (alert "2")
- (command "-layer" "lock" "1,22" "")
- (alert "3")
- (command "erase" "p" "")
- (alert "4")
- (command "-layer" "unlock" "1,22" "")
- (alert "5")
- )
我的目标是取几个块分解它们,并删除块中除第1层和第22层之外的所有层上的项目。但我必须为其他dxf块保留层。基本上,我只是试图在我的一些dxf块上提取第1层和第22层的信息。
我只是添加了警报以查看它在哪里失败。
谢谢 |