 - (defun test (/ p1 p2 ang ss)
- (initget "s")
- (setq p1 (getpoint "\n选择对象<Setting>:"))
- (if (= p1 "s")
- (alert "ok") ;_ur app
- (progn
- (if (setq ss (ssget p1))
- (vl-cmdf "._erase" ss "") ;_ur app
- (progn
- (setq p2 (getcorner p1))
- (setq ang (angle p1 p2))
- (cond ((and (>= ang 0) (< ang (/ pi 2)))
- (setq ss (ssget "_w" p1 p2))
- )
- ((and (>= ang (/ pi 2)) (< ang pi))
- (setq ss (ssget "_c" p1 p2))
- )
- ((and (>= pi) (< ang (* pi 1.5)))
- (setq ss (ssget "_c" p1 p2))
- )
- (t (setq ss (ssget "_w" p1 p2)))
- )
- )
- )
- )
- )
- (if ss
- (vl-cmdf "._erase" ss "") ;_ur app
- )
- )
- ;;;模拟(ssget ":s"),可惜交互效果很差
|