抛砖引玉
 - (defun c:tt ()
- (setvar "CMDECHO" 0)
- (command "_.UNDO" "BE")
- (if (and (setq fac (getreal "\n缩放比率 :"))
- (setq ss (ssget '((0 . "INSERT") (2 . "ltg"))))) (progn
- (setq i 0)
- (repeat (sslength ss)
- (setq en (ssname ss i))
- (command "_.EXPLODE" en)
- (setq ent (entget(entlast))
- pc (cdr(assoc 10 ent))
- r (cdr(assoc 40 ent))
- dr (- r (* r fac)))
- (command "_U")
- (command "_SCALE" en "" pc fac)
- (command "_LENGTHEN" "DE" dr "end" (polar pc pi r) "end" (polar pc 0 r) "")
- (setq i (1+ i))
- )
- ))
- (command "_.UNDO" "E")
- (setvar "CMDECHO" 1)
- (princ)
- )
|