压缩一下 - (defun C:H1 (/ ans e si ss)
- (setvar "CMDECHO" 0)
- (setq OLDERR *ERROR*
- *ERROR* AEOERR
- )
- (command "undo" "group")
- (prompt "\n当前样式:实体(SOLID)\n")
- (initget "S F")
- (setq ans (getpoint "\n拾取填充内部点或[修改图案填充对象(F)/选择填充边界(S)]:"))
- (cond
- ((= ans "F")
- (if (and
- (princ "\n选择图案填充对象:")
- (setq ss (ssget '((0 . "HATCH"))))
- )
- (repeat (setq si (sslength ss))
- (setq e (ssname ss (setq si (1- si))))
- (command ".-hatchedit" e "p" "solid")
- )
- )
- )
- ((= ans "S")
- (prompt "\n选择填充边界:")
- (setq ss (ssget '((0 . "ARC,CIRCLE,*LINE"))))
- (command "hatch" "p" "solid" "s" ss "" "")
- )
- (t
- (if ans (progn
- (command "hatch" ans "p" "solid")
- (while (> (getvar "CMDACTIVE") 0) (command PAUSE))
- ))
- )
- )
- (setq *ERROR* OLDERR)
- (command "_.undo" "end")
- (setvar "CMDECHO" 1)
- (princ)
- )
|