这
- (defun c:Test (/ w h p s i 1p 2p 3p 4p)
- ;; Tharwat 10.12.2014 ;;
- ;; Draw rectangles using the center ;;
- ;; of selected points ;;
- (if (and (setq w (getdist "\n Specify Rectangle X Dimension :"))
- (setq h (getdist "\n Specify Rectangle Y Dimension :"))
- (princ "\n Select Point objects ...")
- (setq s (ssget '((0 . "POINT"))))
- )
- (repeat (setq i (sslength s))
- (setq p (cdr (assoc 10 (entget (ssname s (setq i (1- i))))))
- 1p (polar (polar p (* pi 0.5) (/ h 2.)) pi (/ w 2.))
- 2p (polar 1p 0. w)
- 3p (polar 2p (* pi 1.5) h)
- 4p (polar 3p pi w)
- )
- (entmakex
- (append (list '(0 . "LWPOLYLINE")
- '(100 . "AcDbEntity")
- '(100
- .
- "AcDbPolyline"
- )
- '(90 . 4)
- '(70 . 1)
- )
- (mapcar '(lambda (q) (cons 10 q)) (list 1p 2p 3p 4p))
- )
- )
- )
- )
- (princ)
- )
|