(defun c:fg (/ olderr scmde b1 s1 ss sblip) (setq olderr *error* *error* clerr) (setq sblip (getvar "BLIPMODE")) (setq scmde (getvar "CMDECHO")) (setvar "cmdecho" 0) (command "-osnap" "off") (command "UNDO" "GROUP") (princ "\noffset distance:<") (princ x) (princ ">:") (setq b1 (getreal)) (cond ((= nil (numberp b1)) (setq b1 x)) ((= T (numberp b1)) (setq x b1)) ) (setq i 0) (setq ss (ssget)) (if (null ss)( cond (COMMAND "-OSNAP" "End,Mid,Cen,Node,Quad,Int,Perp,Ext") (exit))) (setq j (sslength ss)) (repeat j (command "UNDO" "GROUP") (setq s1 (ssname ss i)) (setq i (+ i 1)) (command "offset" b1 s1 pause "") (command "chprop" "l" "" "c" "1" "") (command "ERASE" s1 "") (command "UNDO" "END") ) (command "UNDO" "END") (COMMAND "-OSNAP" "End,Mid,Cen,Node,Quad,Int,Perp,Ext") (setvar "BLIPMODE" sblip) (setvar "CMDECHO" scmde) (setq *error* olderr) (princ) ) ;****************end*********************** 这个就是和你的一样了,你用一下看看! |