本帖最后由 smartstar 于 2018-8-31 10:48 编辑
根据楼上大师的代码修改了一下,应该是可以了。
- (defun C:try ()
- (setq ss (ssget ';选择半径大于1小于2的圆
- ((-4 . "<and")
- (0 . "circle")
- (-4 . ">")(40 . 1);圆的半径大于1
- (-4 . "<")(40 . 2);圆的半径小于2
- (-4 . "and>")
- )
- )
- )
- (setq HH '(6 3) ;选择扩大范围
- i -1
- )
- (while (setq ee (entget (ssname ss (setq i (1+ i)))))
- (setq pt (cdr (assoc 10 ee))
- pt1 (mapcar '- pt HH)
- pt2 (mapcar '+ pt HH)
- ss1 (ssget "C" pt1 pt2)
- )
- ;(command "RECTANG" pt1 pt2 "");测试选择范围用
- (command "Scale" ss1 "" pt 0.25)
- )
- )
|