另一个快速调整。。。
这分解了我在屏幕上放置的所有多段线:
-
- (defun c:tmp (/ ctr sset item r) [color=red]; tte
- [/color] (setq
- sset (ssget "_a"
- (LIST '(0 . "*polyline") (cons 410 (getvar "CTAB")))
- )
- )
- (setq ctr 0 r 0) [color=red] ; tte 0)[/color]
- (repeat (sslength sset)
- (setq item (ssname sset ctr))
- (if (/= sset 0)
- ([color=red]progn
- [/color] (vl-cmdf "[color=red]_.[/color]explode" item "")
- (princ "[color=red]\nThis[/color] object exploded")
- ) ;end progn
- [color=red] ;; (progn
- [/color] (setq r (1+ r))
- [color=red] ;; ) ;end progn
- [/color] ) ;end if
- [color=red] (setq ctr (1+ ctr))
- [/color] ) ;end repeat
- (if (/= r 0)
- (alert
- (strcat "[color=red]\n[/color][color=black]T[/color][color=black]otal[/color]" (itoa r) "nos of polyline can't explode")
- )
- (princ "[color=red]\n[/color][color=black]All[/color] polyline exploded")
- ) ;end if
- [color=red] (princ) ; exit quietly
- [/color]) ;end defun
开始一行,使代码更易于阅读,结束(princ)使代码不会两次返回最终消息。 |